Назад | Перейти на главную страницу

Установите freeIPA для обработки разрешения имен Oracle Database

Я пытаюсь настроить freeIPA для обработки разрешения имен Oracle Database. Я следил за этим руководством по OpenLDAP http://www.idevelopment.info/data/Oracle/DBA_tips/LDAP/LDAP_8.shtml Файлы определения схемы были исправлены для freeIPA и хорошо загружены.

ipa-ldap-updater --schema-file /usr/share/ipa/85oidbase.ldif
ipa-ldap-updater --schema-file /usr/share/ipa/86oidnet.ldif
ipa-ldap-updater --schema-file /usr/share/ipa/87oidrdbms.ldif

Все это отлично работает на freeIPA 3.3.5, но я не могу выполнить какое-либо разрешение имен для freeIPA> 4

tnsping:

C:\>tnsping DB1.EXAMPLE.COM

TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 07-JUL-2015 08:27:41

Copyright (c) 1997, 2010, Oracle.  All rights reserved.

Used parameter files:
C:\Oracle\product\11.2.0\client_3\network\admin\sqlnet.ora

TNS-03505: Failed to resolve name

журнал доступа к freeIPA

[03/Jul/2015:15:10:12 +0200] conn=125 fd=86 slot=86 connection from 192.168.1.10 to 192.168.1.3
[03/Jul/2015:15:10:12 +0200] conn=125 op=0 BIND dn="" method=128 version=3
[03/Jul/2015:15:10:12 +0200] conn=125 op=0 RESULT err=0 tag=97 nentries=0 etime=0 dn=""
[03/Jul/2015:15:10:12 +0200] conn=125 op=1 SRCH base="cn=DB1,cn=OracleContext,dc=example,dc=com" scope=0 filter="(objectClass=*)" attrs="objectClass orclNetDescString orclNetDescName orclVersion"
[03/Jul/2015:15:10:12 +0200] conn=125 op=1 RESULT err=0 tag=101 nentries=0 etime=0
[03/Jul/2015:15:10:12 +0200] conn=125 op=2 UNBIND
[03/Jul/2015:15:10:12 +0200] conn=125 op=2 fd=86 closed - U1
[03/Jul/2015:15:10:31 +0200] conn=9 op=30 SRCH base="ou=sessions,ou=Security Domain,o=ipaca" scope=2 filter="(objectClass=securityDomainSessionEntry)" attrs="cn"
[03/Jul/2015:15:10:31 +0200] conn=9 op=30 RESULT err=32 tag=101 nentries=0 etime=0

Может ли кто-нибудь направить меня в том направлении, где искать. Что изменилось в версии 4? Мне нужно добавить атрибуты разрешений?

#ipa permission_add oracle --right={read,search,compare} --bindtype=anonymous --subtree='cn=OracleContext,dc=example,dc=com' --filter='(objectclass=*)'

#ipa permission-show oracle
  Permission name: oracle
  Granted rights: read, search, compare
  Bind rule type: anonymous
  Subtree: cn=OracleContext,dc=example,dc=com
  Extra target filter: (objectclass=*)



#ldapsearch -h 192.168.1.3 -x -D "cn=Directory Manager" -b "cn=OracleContext,dc=example,dc=com" "objectclass=*" -w secret
# extended LDIF
#
# LDAPv3
# base <cn=OracleContext,dc=example,dc=com> with scope subtree
# filter: objectclass=*
# requesting: ALL
#

# OracleContext, example.com
dn: cn=OracleContext,dc=example,dc=com
objectClass: orclContext
objectClass: top
cn: OracleContext

# db1, OracleContext, example.com
dn: cn=db1,cn=OracleContext,dc=example,dc=com
objectClass: top
objectClass: orclNetService
cn: db1
orclNetDescString: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbnode1.example.com)(PO
 RT=1521))(CONNECT_DATA=(SERVICE_NAME=DB1.EXAMPLE.COM)))

# search result
search: 2
result: 0 Success

# numResponses: 3
# numEntries: 2

По-прежнему тот же вывод в журнале доступа и без разрешения.

Похоже, вы выполняете анонимную привязку. В FreeIPA 4.x были полностью переписаны элементы управления доступом, и были установлены значения по умолчанию, чтобы анонимные привязки не могли видеть большую часть контента.

Учитывая, что вы добавляете новые атрибуты и классы объектов, может иметь смысл настроить доступ и к ним. Видеть ipa permission, ipa privilege, и ipa role чтобы получить подробную информацию о том, какие команды использовать.

Вы можете начать с разрешения, которое предоставляет анонимным привязкам доступ к cn=OracleContext:

$ ipa permission-add 'read oracle context' --subtree=cn=OracleContext,dc=example,dc=com --bindtype=anonymous --rights={read,search,compare}

Обратите внимание, что я использую расширение скобок оболочки, чтобы --rights вариант написания лаконично.