Objetos extensíveis

Se você definir um objeto como extensível, ele poderá conter qualquer atributo que já esteja definido no esquema do DSA.
cad126br
Se você definir um objeto como extensível, ele poderá conter qualquer atributo que já 
esteja
 definido no esquema do DSA.
Objetos extensíveis são definidos no RFC 4512. Esse padrão define a classe de objeto auxiliar 
extensibleObject
.
A classe de objeto auxiliar 
extensibleObject
é definida no arquivo de esquema ldapv3.dxc, que é fornecido com o CA Directory. No entanto, não está no grupo de esquema padrão. Se desejar que um DSA use esse esquema, adicione-o ao arquivo de inicialização do DSA.
Há duas formas de tornar um objeto extensível:
Tornar uma classe de objeto existente extensível
Se você estiver criando um esquema para um DSA do CA Directory, é possível tornar uma classe de objeto extensível.
Para tornar uma classe de objeto existente extensível
  1. Abra o arquivo de esquema e localize a classe de objeto que você deseja atualizar.
  2. Adicione 
    all-attributes
     à lista 
    may-contain
     da seguinte forma:
    schema set object-class prefix:2 = { ... may-contain all-attributes ... };
  3. Inicialize o DSA.
Tornar um objeto existente extensível
Se você estiver usando um esquema existente, ainda poderá tornar um objeto extensível.
Esta seção descreve como fazer isso com o JXplorer.
Para tornar um objeto existente extensível
  1. Se o DSA não incluir ldapv3.dxc no esquema, faça o seguinte:
    1. Adicione
      ldapv3.dxc
      ao arquivo de inicialização do DSA após o fornecimento do esquema X.500 schema, como no exemplo a seguir:
      source "../schema/dxmanager.dxg"; source "../schema/ldapv3.dxc";
    2. Inicialize o DSA usando o seguinte comando:
      dxserver init dsa-name
  2. No JXplorer, conecte-se ao DSA.
  3. Navegue até o objeto que você deseja alterar.
  4. No painel direito, selecione a guia Table Editor para exibir os atributos para esse objeto.
  5. Clique no botão Change Class.
  6. Na caixa de diálogo Set Object Entry Classes, localize a classe de objeto 
    extensibleObject
    na lista Available Classes.
  7. Selecione a classe de objeto 
    extensibleObject
    , clique em Add e em OK.
  8. Clique em Submit para salvar suas alterações nesse objeto.
    Agora esse objeto pode usar qualquer atributo que esteja definido no esquema do DSA.
Adicionar um atributo a um objeto extensível
Depois de tornar um objeto extensível, você pode adicionar qualquer atributo do esquema a esse objeto.
É possível fazer isso usando o JXweb. Esta seção descreve como fazer isso usando comandos do console do DSA.
Para adicionar um atributo a um objeto extensível
  1. Certifique-se de que o objeto seja extensível, conforme descrito na seção anterior.
  2. Abra um console do DSA e vincule ao DSA usando o seguinte comando:
    bind-req;
  3. Adicione o atributo à entrada usando o seguinte comando:
    mod-entry-req entry=DN add-attr {attribute-name "attribute-value"};
    Por exemplo, para adicionar o atributo
    carLicense
    com o valor EXT 133 à entrada de organização Democorp, use o seguinte comando:
    mod-entry-req entry=<c au><o democorp> add-attr {carLicense "EXT 133"};
Exemplo Estender uma definição de classe de objeto
A definição de esquema a seguir define a classe de objeto 
newPerson
, herdada da classe de objeto
person
.
A classe de objeto 
person
 deve conter os atributos
cn
e
surname
, o que significa que a classe de objeto
newPerson
também deve incluir esses atributos. Além disso, pode conter qualquer outro atributo definido.
schema set object-class myprefix:1 = { name = newPerson subclass-of person may-contain all-attributes };