Para migrar o esquema Sun ONE para o NetIQ eDirectory, realize essas etapas:
É possível gravar os erros encontrados ao comparar o esquema a um arquivo de erro usando o seguinte comando:
ice -e LDIF error file name -C -a -SLDAP -s Sun ONE server -p Sun ONE port -DLDAP -s eDirectory server -p eDirectory port
Por exemplo:
ice -e err.ldf -C -a -SLDAP -s sun_srv1 -p sun_port1 -DLDAP -s edir_srv2 -p edir_port2
Quaisquer erros encontrados ao comparar o esquema são gravados no arquivo de erros (err.ldf no exemplo). Não é necessário efetuar login para realizar esta operação a menos que um dos servidores exija autenticação para ler o Root DSE. O Microsoft Active Directory requer autenticação para ler o Root DSE.
O Sun ONE define publicamente algumas definições de esquema que o eDirectory não define. Isto inclui atributos como objectClasses, attributeTypes, ldapSyntaxes e subschemSubentry. Tais definições existem internamente e são muito importantes para o esquema e, portanto, não podem ser modificadas. As operações que tentam modificar tais definições resultam no seguinte erro:
LDAP error : 53 (DSA is unwilling to perform) ( DSA não executa)
Quaisquer registros que contenham referências a essas definições causam o seguinte erro:
LDAP error : 16 : ( No such attribute ) (Atributo inexistente)
Desta maneira, os registros que contém referências a esses objetos ou tentam modificar tais definição precisam ser comentados no arquivo de erros LDIF (err.ldf no exemplo).
Algumas definições de objectClasses no Sun ONE não possuem atributos de nomeação. Adicionar estas objectClasses resultaria no seguinte erro no eDirectory:
LDAP error : 80 (NDS error: ambiguous naming (-651) (nomeação ambígua)
Isto ocorre porque o Sum ONE não usa o mesmo método para determinar as regras de nomes que o eDirectory.
Para resolver isto, use qualquer uma das três opções a seguir:
Opção 1:
Percorra as objectClasses incorretas e adicione um atributo de nomeação válido a cada uma.
Por exemplo:
Para adicionar o atributo de nomeação [ cn ] à objectClass netscapeMachineData, modifique a entrada (que é enfatizada no exemplo abaixo) no arquivo err.ldf para incluir a flag X-NDS_NAMING como mostrado abaixo:
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’
DESC ’iPlanet defined objectclass’ SUP top STRUCTURAL MAY ’cn’ X-NDS_NAMING ’cn’ )-
Opção 2:
Percorra as objectClasses incorretas e torne-as AUXILIAR ou ABSTRATA.
Por exemplo:
Para modificar a definição da objectClass netscapeMachineData de ESTRUTURAL para AUXILIAR, modifique a entrada do arquivo err.ldf (que é enfatizada no exemplo abaixo) como mostrado abaixo:
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’
DESC ’iPlanet defined objectclass’ SUP top AUXILIARY )-
Para modificar a definição da objectClass netscapeMachineData de ESTRUTURAL para ABSTRATA, modifique a entrada do arquivo err.ldf (que é enfatizada no exemplo abaixo) como mostrado abaixo:
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME ’netscapeMachineData’
DESC ’iPlanet defined objectclass’ SUP top ABSTRACT )-
Opção 3:
Adicione cn à definição Superior no eDirectory, que causa um atributo de nomeação em potencial para todas as objectClasses.
Existem duas maneiras de adicionar cn a Superior:
Método 1:
Crie um arquivo como mostrado abaixo e nomeie-o como topsch.ldf.
version : 1
dn:cn=schema
changetype :modify
delete : objectclasses
objectclasses : ( 2.5.6.0 NAME ’top’ STRUCTURAL )
-
add:objectclasses
objectclasses : (2.5.6.0 NAME ’top’ STRUCTURAL MAY cn)
Usando a seguinte linha de comando da Importação, conversão e exportação da NetIQ:
ice -SLDIF -f LDIF_file_name -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password
Por exemplo:
ice -SLDIF -f topsch.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1
Método 2:
1. No iManager, clique no botão
.2. Clique em
> .3. Na lista
, selecione e clique em .4. Clique duas vezes em
na lista .5. Clique em
.Algumas definições de objectClass contém userPassword como parte de sua lista de atributos obrigatórios. Adicionar tais objectClasses ao eDirectory causa o seguinte erro:
LDAP error : 16 (No such attribute) (Atributo inexistente)
Para resolver este erro, modifique a definição da objectClass para herdar a nova objectClass do ndsLoginProperties e remova o atributo userPassword da lista de atributos obrigatórios.
Por exemplo:
Uma objectClass contendo userPassword na lista de atributos obrigatórios:
version : 1 dn: cn=schemaz changetype: modify add: objectClasses objectClasses: ( 0.9.2342.19200300.100.4.19 NAME ’simpleSecurityObject’ DESC ’ Standard LDAP objectClass’ SUP top STRUCTURAL MUST userPassword )
Precisa ser modificada da seguinte maneira (observe a mudança na última linha):
version : 1 dn: cn=schema changetype: modify add: objectClasses objectClasses: ( 0.9.2342.19200300.100.4.19 NAME ’simpleSecurityObject’ DESC ’ Standard LDAP objectClass’ SUP (ndsLoginProperties $ top) STRUCTURAL )
Use o comando de Importação, conversão e exportação da NetIQ para importar o esquema modificado e comparar o arquivo LDIF (err.ldf em nosso exemplo):
ice -e error_file -SLDIF -f modified_LDIF_file -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password
Por exemplo:
ice -e errors.ldf -SLDIF -f err.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1