Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 26. Usando ldapmodify para gerenciar usuários IdM externamente

Você pode modificar o Gerenciamento de Identidade (IdM) LDAP diretamente da interface de linha de comando (CLI) usando os utilitários ldapmodify e ldapdelete. Os utilitários oferecem total funcionalidade para adicionar, editar e excluir o conteúdo de seu diretório. Você pode usar estes utilitários para gerenciar tanto as entradas de configuração do servidor quanto os dados nas entradas do usuário. Os utilitários também podem ser usados para escrever scripts para realizar o gerenciamento em massa de um ou mais diretórios.

26.1. Modelos para gerenciar contas de usuários IdM externamente

Esta seção descreve os modelos para várias operações de gerenciamento de usuários na IdM. Os modelos mostram quais atributos você deve modificar usando ldapmodify para alcançar os seguintes objetivos:

  • Adicionando um novo usuário em fase
  • Modificação de um atributo do usuário
  • Habilitando um usuário
  • Desabilitando um usuário
  • Preservar um usuário

Os modelos são formatados no formato LDAP Data Interchange Format (LDIF). LDIF é um formato padrão de intercâmbio de dados em texto simples para representar o conteúdo do diretório LDAP e solicitações de atualização.

Usando os modelos, você pode configurar o fornecedor LDAP de seu sistema de provisionamento para gerenciar as contas de usuários IdM.

Para exemplos de procedimentos detalhados, veja as seções seguintes:

Modelos para adicionar um novo usuário de etapa

  • Um modelo para adicionar um usuário com UID and GID assigned automatically. O nome distinto (DN) da entrada criada deve começar com uid=user_login:

    dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
    changetype: add
    objectClass: top
    objectClass: inetorgperson
    uid: user_login
    sn: surname
    givenName: first_name
    cn: full_name
  • Um modelo para adicionar um usuário com UID and GID assigned statically:

    dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
    changetype: add
    objectClass: top
    objectClass: person
    objectClass: inetorgperson
    objectClass: organizationalperson
    objectClass: posixaccount
    uid: user_login
    uidNumber: UID_number
    gidNumber: GID_number
    sn: surname
    givenName: first_name
    cn: full_name
    homeDirectory: /home/user_login

    Você não é obrigado a especificar nenhuma classe de objeto IdM ao adicionar usuários de palco. IdM adiciona estas classes automaticamente depois que os usuários são ativados.

Modelos para modificação de usuários existentes

  • Modifying a user’s attribute:

    dn: distinguished_name
    changetype: modify
    replace: attribute_to_modify
    attribute_to_modify: new_value
  • Disabling a user:

    dn: distinguished_name
    changetype: modify
    replace: nsAccountLock
    nsAccountLock: TRUE
  • Enabling a user:

    dn: distinguished_name
    changetype: modify
    replace: nsAccountLock
    nsAccountLock: FALSE

    A atualização do atributo nssAccountLock não tem nenhum efeito sobre o palco e os usuários preservados. Mesmo que a operação de atualização seja concluída com sucesso, o valor do atributo permanece nssAccountLock: TRUE.

  • Preserving a user:

    dn: distinguished_name
    changetype: modrdn
    newrdn: uid=user_login
    deleteoldrdn: 0
    newsuperior: cn=deleted users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
Nota

Antes de modificar um usuário, obtenha o nome distinto do usuário (DN) através de uma busca usando o login do usuário. No exemplo a seguir, o usuário user_allowed_to_modify_user_entries é um usuário autorizado a modificar informações de usuário e grupo, por exemplo activator ou administrador da IdM. A senha no exemplo é a senha deste usuário:

[...]
# ldapsearch -LLL -x -D "uid=user_allowed_to_modify_user_entries,cn=users,cn=accounts,dc=idm,dc=example,dc=com" -w "Secret123" -H ldap://r8server.idm.example.com -b "cn=users,cn=accounts,dc=idm,dc=example,dc=com" uid=test_user
dn: uid=test_user,cn=users,cn=accounts,dc=idm,dc=example,dc=com
memberOf: cn=ipausers,cn=groups,cn=accounts,dc=idm,dc=example,dc=com