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.
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
- As contas provisionator e activator existem na IdM. Para detalhes, consulte Preparação de contas IdM para ativação automática de contas de usuários em estágio.
- Você tem privilégios de raiz no servidor IdM no qual você está executando o procedimento.
- Você está logado como administrador da IdM.
- Você confia em seu sistema de provisionamento externo.
Procedimento
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.
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
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
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
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
Recarregar a nova configuração:
# systemctl daemon-reload
Habilitar
ipa-activate-all.timer
:# systemctl habilita ipa-activate-all.timer
Iniciar
ipa-activate-all.timer
:# systemctl start ipa-activate-all.timer
(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.