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

Oracle: замена tnsnames.ora поиском по LDAP?

Как мне заменить tnsnames.ora на стороне клиента запросом ldap?

Меня не интересует запуск Oracle LDAP, у нас есть существующая инфраструктура LDAP.

Я нуждаюсь:

Oracle 10.2 или 11.x, если версии имеют значение.

Oracle может «официально» использовать только OID или AD в качестве серверов LDAP. В LDAP.ORA (в $ ORACLE_HOME / network / admin или $ TNS_ADMIN) поместите:

DEFAULT_ADMIN_CONTEXT = “ou=ora,dc=company,dc=com”
DIRECTORY_SERVERS = (ldap1.company.com:389, ldap2.company.com:389)
DIRECTORY_SERVER_TYPE = OID

Тип может быть OID или AD. Несколько серверов предназначены для резервирования; он не будет пробовать каждый по очереди. Затем в SQLNET.ORA:

NAMES.DIRECTORY_PATH=(LDAP, TNSNAMES)

Это означает, что сначала попробуйте LDAP, затем попробуйте TNSNAMES.ORA, а затем откажитесь.

Если вы хотите использовать сторонний сервер LDAP, у Oracle есть продукт под названием Виртуальный каталог который будет действовать как посредник между ними.

Вы не указываете, какую платформу LDAP вы используете. Для этого я использую OpenLDAP.

По сути, вам нужно импортировать некоторые части схемы oid. Тогда вам нужно иметь псевдонимы tns под cn=OracleContext,dc=company,dc=com узел.

Я создал веб-приложение http://www.tnsadmin.com для легкого управления tnsnames в записях LDAP, которые могут использоваться с любым сервером LDAP. Вы также можете найти там схему OpenLDAP.