Red Hat Training

A Red Hat training course is available for RHEL 8

25.2. Configuração de ativação automática das contas de usuário do estágio IdM

Este procedimento mostra como criar um roteiro para ativar os usuários do palco. O sistema executa o script automaticamente em intervalos de tempo especificados. Isto assegura que novas contas de usuário sejam ativadas automaticamente e estejam disponíveis para uso logo após a sua criação.

Importante

O procedimento assume que o proprietário do sistema de provisionamento externo já validou os usuários e que eles não precisam de validação adicional no lado do IdM antes que o script os acrescente ao IdM.

É suficiente para ativar o processo em apenas um de seus servidores IdM.

Pré-requisitos

Procedimento

  1. Gerar um arquivo keytab para a conta de ativação:

    # ipa-getkeytab -s server.idm.example.com -p "activator" -k /etc/krb5.ipa-activation.keytab

    Se você quiser habilitar o processo de ativação em mais de um servidor IdM, gere o arquivo keytab em apenas um servidor. Depois copie o arquivo keytab para os outros servidores.

  2. Criar um script, /usr/local/sbin/ipa-activate-all, com o seguinte conteúdo para ativar todos os usuários:

    #!/bin/bash
    
    kinit -k -i activator
    
    ipa stageuser-find --all --raw | grep "  uid:" | cut -d ":" -f 2 | while read uid; do ipa stageuser-activate ${uid}; done
  3. Edite as permissões e a propriedade do script ipa-activate-all para torná-lo executável:

    # chmod 755 /usr/local/sbin/ipa-activate-all
    # chown root:root /usr/local/sbin/ipa-activate-all
  4. Criar um arquivo systemd unit file, /etc/systemd/system/ipa-activate-all.service, com o seguinte conteúdo:

    [Unit]
    Description=Scan IdM every minute for any stage users that must be activated
    
    [Service]
    Environment=KRB5_CLIENT_KTNAME=/etc/krb5.ipa-activation.keytab
    Environment=KRB5CCNAME=FILE:/tmp/krb5cc_ipa-activate-all
    ExecStart=/usr/local/sbin/ipa-activate-all
  5. Criar um temporizador systemd, /etc/systemd/system/ipa-activate-all.timer, com o seguinte conteúdo:

    [Unit]
    Description=Scan IdM every minute for any stage users that must be activated
    
    [Timer]
    OnBootSec=15min
    OnUnitActiveSec=1min
    
    [Install]
    WantedBy=multi-user.target
  6. Recarregar a nova configuração:

    # systemctl daemon-reload
  7. Habilitar ipa-activate-all.timer:

    # systemctl habilita ipa-activate-all.timer
  8. Iniciar ipa-activate-all.timer:

    # systemctl start ipa-activate-all.timer
  9. (Opcional) Verifique se o daemon ipa-activate-all.timer está funcionando:

    # systemctl status ipa-activate-all.timer
    ● ipa-activate-all.timer - Scan IdM every minute for any stage users that must be activated
       Loaded: loaded (/etc/systemd/system/ipa-activate-all.timer; enabled; vendor preset: disabled)
       Active: active (waiting) since Wed 2020-06-10 16:34:55 CEST; 15s ago
      Trigger: Wed 2020-06-10 16:35:55 CEST; 44s left
    
    Jun 10 16:34:55 server.idm.example.com systemd[1]: Started Scan IdM every minute for any stage users that must be activated.