Hi,

we just start to do it:

You need oidbase.schema:
8<--------------------
attributetype ( 2.16.840.1.113894.7.1.1 NAME 'orclVersion' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.7.1.2 NAME 'orclOracleHome' SYNTAX 
'1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.7.1.3 NAME 'orclSystemName' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.7.1.4 NAME 'orclServiceType' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.7.1.5 NAME 'orclSid' EQUALITY caseIgnoreMatch 
SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.7.1.6 NAME 'orclProductVersion' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
objectClass ( 2.16.840.1.113894.7.2.2 NAME 'orclContainer' SUP 'top' STRUCTURAL 
MUST ( cn ) )
objectClass ( 2.16.840.1.113894.7.2.3 NAME 'orclContext' SUP 'top' STRUCTURAL 
MUST ( cn ) )
objectClass ( 2.16.840.1.113894.7.2.6 NAME 'orclSchemaVersion' SUP 'top' 
STRUCTURAL MUST ( cn $ orclProductVersion ) )
attributetype ( 2.16.840.1.113894.3.1.12 NAME 'orclNetDescName' EQUALITY 
distinguishedNameMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.12' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.13 NAME 'orclNetDescString' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
objectClass ( 2.16.840.1.113894.7.2.1001 NAME 'orclService' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclServiceType $ orclOracleHome $ orclSystemName 
$ orclSid $ orclNetDescName $ orclNetDescString $ orclVersion $ Description ) )
---------------------->8


You need oidnet.schema:
8<--------------------
attributetype ( 2.16.840.1.113894.3.1.1 NAME 'orclNetSourceRoute' SYNTAX 
'1.3.6.1.4.1.1466.115.121.1.5' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.2 NAME 'orclNetLoadBalance' SYNTAX 
'1.3.6.1.4.1.1466.115.121.1.5' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.3 NAME 'orclNetFailover' SYNTAX 
'1.3.6.1.4.1.1466.115.121.1.5' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.4 NAME 'orclNetSdu' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.5 NAME 'orclNetServer' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.6 NAME 'orclNetServiceName' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.7 NAME 'orclNetInstanceName' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.8 NAME 'orclNetHandlerName' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.9 NAME 'orclNetParamList' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributetype ( 2.16.840.1.113894.3.1.10 NAME 'orclNetAuthenticationType' 
EQUALITY caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.11 NAME 'orclNetAuthParams' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.14 NAME 'orclNetAddressString' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.15 NAME 'orclNetProtocol' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.16 NAME 'orclNetShared' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.17 NAME 'orclNetAddrList' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributetype ( 2.16.840.1.113894.3.1.18 NAME 'orclNetProtocolStack' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
attributetype ( 2.16.840.1.113894.3.1.19 NAME 'orclNetDescList' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributetype ( 2.16.840.1.113894.3.1.20 NAME 'orclNetConnParamList' EQUALITY 
caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
attributetype ( 2.16.840.1.113894.3.1.21 NAME 'orclNetAuthenticationService' 
EQUALITY caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE )
objectClass ( 2.16.840.1.113894.3.2.5 NAME 'orclNetService' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclNetDescName $ orclNetDescString $ orclVersion 
$ Description ) )
objectClass ( 2.16.840.1.113894.3.2.4 NAME 'orclNetDescriptionList' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclNetDescList $ orclNetSourceRoute $ 
orclNetLoadBalance $ orclNetFailover $ orclNetShared $ orclVersion $ 
Description ) )
objectClass ( 2.16.840.1.113894.3.2.3 NAME 'orclNetDescription' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclNetAddrList $ orclNetProtocolStack $ 
orclNetSdu $ orclSid $ orclNetServer $ orclNetServiceName $ orclNetInstanceName 
$ orclNetHandlerName $ orclOracleHome $ orclNetAuthenticationType $ 
orclNetAuthenticationService $ orclNetAuthParams $ orclNetParamList $ 
orclNetConnParamList $ orclNetSourceRoute $ orclNetLoadBalance $ 
orclNetFailover $ orclNetShared $ orclVersion $ Description ) )
objectClass ( 2.16.840.1.113894.3.2.2 NAME 'orclNetAddressList' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclNetAddrList $ orclNetSourceRoute $ 
orclNetLoadBalance $ orclNetFailover $ orclNetShared $ orclVersion $ 
Description ) )
objectClass ( 2.16.840.1.113894.3.2.1 NAME 'orclNetAddress' SUP 'top' 
STRUCTURAL MUST ( cn ) MAY ( orclNetAddressString $ orclNetProtocol $ 
orclNetShared $ orclVersion $ Description ) )
---------------------->8

Configured in your ldap.conf.
Then you have to add a branch OracleContext and add your TNSNAMES:
8<-------------------------------
dn: cn=OracleContext,OU=myUnit,O=myOrg,C=DE
objectclass: orclContext
cn: OracleContextdir

dn: cn=exampleDB,cn=OracleContext,OU=myUnit,O=myOrg,C=DE
objectclass: top
objectclass: orclNetService
cn: exampleDB
orclNetDescString: 
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ops)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=EXAMPLEDB)))
------->8

Configuring your Oracle client to use OID with the URL of your OpenLdap-Server.
That’s all.

You don’t need anything of the schemes files, but if you start with LDAP 
services for Oracle, you will do further steps soon.
Another point is Authentication: you must do it via certificates and the 
wallet-function within the Oracle-Client.

Nice Friday.


From: [email protected] 
[mailto:[email protected]] On Behalf Of Gavin Henry
Sent: Donnerstag, 26. August 2010 19:33
To: Stuart Cherrington
Cc: [email protected]
Subject: Re: tnsnames in openldap


----- "Stuart Cherrington" <[email protected]> wrote:
> Hi,
>
> I was wondering if anyone here has had a good/bad experience of getting 
> Openldap to provision tnsnames lookup for Oracle Databases? We're thinking of 
> removing our current OID implementation which is very old and as I'm already 
> running OpenLDAP 2.4 is makes sense to just roll it from there.
>
> I found a VERY useful article at 
> http://oracle-cookies.blogspot.com/2007/01/get-tnsnamesora-from-openldap.html 
> which I think will help enormously.
How did you get on with this?


--
Kind Regards,

Gavin Henry.
OpenLDAP Engineering Team.

E [email protected]

Community developed LDAP software.

http://www.openldap.org/project/

Reply via email to