User
Resumo
- Gerenciar contas de usuário.
Parâmetros
Parâmetro | Tipo | Escolhas | Valor Padrão | Comentários |
|---|---|---|---|
name - required aliases: user | string | | Nome do usuário a ser criado, removido ou modificado. |
uid | integer | | Opcionalmente, define o (UID) do usuário. |
comment | string | | Opcionalmente, define a descrição (também conhecido como (GECOS)) da conta do usuário. |
hidden | boolean | Escolhas: - false (default) - true | Apenas macOS, opcionalmente, oculte o usuário da janela de login e das preferências do sistema. O padrão será (true) se a opção (system) for usada. |
non_unique | boolean | Escolhas: - false (default) - true | Opcionalmente, quando usada com a opção -u, esta opção permite alterar o ID do usuário para um valor não exclusivo. |
seuser | string | | Opcionalmente, define o tipo de seuser (user_u) em sistemas habilitados para selinux. |
group | string | | Opcionalmente, define o grupo primário do usuário (usa um nome de grupo). |
groups | list | | Lista de grupos aos quais o usuário será adicionado. Quando definido como uma string vazia (''), o usuário é removido de todos os grupos, exceto do grupo primário. Mutuamente exclusivo com (local) |
append | boolean | Escolhas: - false (default) - true | Se (true), adicione o usuário aos grupos especificados em (groups). Se (false), o usuário só será adicionado aos grupos especificados em (groups), removendo-os de todos os outros grupos. Mutuamente exclusivo com (local) |
shell | string | | Opcionalmente, defina o shell do usuário. No macOS, o shell padrão para usuários que não eram do sistema era (/usr/bin/false). Desde então, o shell padrão para usuários que não são do sistema no macOS é (/bin/bash). Em outros sistemas operacionais, o shell padrão é determinado pela ferramenta subjacente que está sendo usada. Consulte as notas para obter detalhes. |
home | path | | Opcionalmente, defina o diretório inicial do usuário. |
skeleton | string | | Opcionalmente, defina um diretório de esqueleto inicial. Requer a opção (create_home)! |
password | string | | Opcionalmente, defina a senha do usuário para este valor criptografado. Em sistemas macOS, esse valor deve ser texto não criptografado. Cuidado com as questões de segurança. Para criar uma conta desabilitada em sistemas Linux, defina como ('!') Ou ('*'). Para criar uma conta desabilitada no OpenBSD, defina como ('*************'). |
state | string | Escolhas: - present (default) - absent | Se a conta deve existir ou não, agir se o estado for diferente do que é declarado. |
create_home aliases: createhome | boolean | Escolhas: - false - true (default) | A menos que definido como (false), um diretório inicial será criado para o usuário quando a conta for criada ou se o diretório inicial não existir. |
move_home | boolean | Escolhas: - false (default) - true | Se definido como (true) quando usado com (home:), tenta mover o diretório home antigo do usuário para o diretório especificado se ainda não estiver lá e se o home antigo existir. |
system | boolean | Escolhas: - false (default) - true | Ao criar uma conta (state = present), definir esse parâmetro como (true) torna o usuário uma conta do sistema. Esta configuração não pode ser alterada em usuários existentes. |
force | boolean | Escolhas: - false (default) - true | Isso afeta apenas (state = absent) e força a remoção do usuário e dos diretórios associados nas plataformas suportadas. O comportamento é o mesmo que (userdel --force), verifique a página de manual para (userdel) em seu sistema para obter detalhes e suporte. Quando usado com (generate_ssh_key = true), força uma chave existente a ser sobrescrita. |
remove | boolean | Escolhas: - false (default) - true | Isso afeta apenas (state = absent), ele tenta remover os diretórios associados ao usuário. O comportamento é o mesmo que (userdel --remove). |
login_class | string | | Opcionalmente, define a classe de login do usuário, um recurso da maioria dos sistemas operacionais BSD. |
generate_ssh_key | boolean | Escolhas: - false (default) - true | Se deve gerar uma chave SSH para o usuário em questão. Isso irá sobrescrever uma chave SSH existente, a menos que seja usada com (force = true). |
ssh_key_bits | integer | - default set by ssh-keygen | Opcionalmente, especifique o número de bits na chave SSH para criar. |
ssh_key_type | string | - rsa (default) | Opcionalmente, especifique o tipo de chave SSH a ser gerada. Os tipos de chave SSH disponíveis dependerão da implementação presente no host de destino. |
ssh_key_file | path | | Opcionalmente, especifique o nome do arquivo da chave SSH. Se este for um nome de arquivo relativo, ele será relativo ao diretório pessoal do usuário. Este parâmetro é padronizado como (.ssh / id_rsa). |
ssh_key_comment | string | - atmosphere-generated on $HOSTNAME (default) | Opcionalmente, defina o comentário para a chave SSH. |
ssh_key_passphrase | string | | Defina uma senha longa para a chave SSH. Se nenhuma frase-senha for fornecida, a chave SSH será padronizada para não ter frase-senha. |
update_password | string | Escolhas: - always (default) - on_create | (always) atualizará as senhas se forem diferentes. (on_create) apenas definirá a senha para usuários recém-criados. |
expires | float | | Um tempo de expiração para o usuário na época, ele será ignorado em plataformas que não suportam isso. Atualmente compatível com GNU / Linux, FreeBSD e DragonFlyBSD. Atualmente compatível com GNU / Linux e FreeBSD. |
password_lock | boolean | Escolhas: - false (default) - true | Bloqueie a senha (usermod -L, pw lock, usermod -C). MAS a implementação difere em diferentes plataformas, esta opção nem sempre significa que o usuário não pode fazer o login por outros métodos. Esta opção não desabilita o usuário, apenas bloqueia a senha. Não altere a senha na mesma tarefa. Atualmente com suporte em Linux, FreeBSD, DragonFlyBSD, NetBSD, OpenBSD. |
local | boolean | Escolhas: - false (default) - true | Força o uso de alternativas de comando "locais" nas plataformas que o implementam. Isso é útil em ambientes que usam autenticação centralizada quando você deseja manipular os usuários locais (ou seja, usa (luseradd) em vez de (useradd)). Isso verificará (/etc/passwd) para uma conta existente antes de chamar os comandos. Se o banco de dados de conta local existir em algum lugar diferente de (/etc/passwd), esta configuração não funcionará corretamente. Isso requer que os comandos acima, bem como (/etc/passwd), devem existir no host de destino, caso contrário, será um erro fatal. Mutuamente exclusivo com (groups) e (append) |
profile | string | | Define o perfil do usuário. Não faz nada quando usado com outras plataformas. Pode definir vários perfis usando separação por vírgula. Para excluir todos os perfis, use (profile = ''). Atualmente compatível com Illumos / Solaris. |
authorization | string | | Define a autorização do usuário. Não faz nada quando usado com outras plataformas. Pode definir várias autorizações usando separação por vírgula. Para excluir todas as autorizações, use (authorization = ''). Atualmente compatível com Illumos / Solaris. |
role | string | | Define a função do usuário. Não faz nada quando usado com outras plataformas. Pode definir várias funções usando separação por vírgula. Para excluir todas as funções, use (role = ''). Atualmente compatível com Illumos / Solaris. |
Notas
- Existem requisitos específicos por plataforma nos utilitários de gerenciamento de usuários. Contudo eles geralmente vêm pré-instalados com o sistema e o Atmosphere exigirá que eles estejam presentes no tempo de execução. Caso contrário, uma mensagem de erro descritiva será exibida.
- Em plataformas SunOS, o backup do arquivo shadow é feito automaticamente, já que este módulo o edita diretamente. Em outras plataformas, o backup do arquivo shadow é feito pelas ferramentas subjacentes usadas por este módulo.
- No macOS, este módulo usa (dscl) para criar, modificar e excluir contas. (dseditgroup) é usado para modificar os membros do grupo. As contas são ocultadas da janela de login ao modificar (/Library/Preferences/com.apple.loginwindow.plist).
- No FreeBSD, este módulo usa (pw useradd) e (chpass) para criar, (pw usermod) e (chpass) para modificar, (pw userdel) remove, (pw lock) para travar e (pw unlock) para desbloquear contas.
- Em todas as outras plataformas, este módulo usa (useradd) para criar, (usermod) para modificar e (userdel) para remover contas.
Exemplos
# Exemplo: Adicione o usuário 'teste' com um uid específico e um grupo primário de 'exemplos'
- user:
name: 'teste'
comment: teste
uid: 1040
group: examples
generate_ssh_key: yes
ssh_key_bits: 4096
Valores retornados
Chave | Tipo | Retornado quando | Descrição |
|---|---|---|---|
append | boolean | Quando state é present e o usuário existir | Se deve ou não anexar o usuário aos grupos. |
comment | string | Quando o usuário existir | Seção de comentário do arquivo passwd, geralmente o nome do usuário. |
create_home | boolean | Quando o usuário não existe e não verifica o modo | Se deve ou não criar o diretório inicial. |
force | boolean | Quando state é absent e o usuário existir | Se uma conta de usuário foi excluída à força ou não. |
group | integer | Quando o usuário existir | ID do grupo de usuário primário. |
groups | string | Quando groups não está vazio e state é present | Lista de grupos dos quais o usuário é membro. |
home | string | Quando state é present | Caminho para o diretório inicial do usuário. |
move_home | boolean | Quando state é present e o usuário existir | Se deve ou não mover um diretório inicial existente. |
name | string | Sempre | Nome da conta do usuário. |
password | string | Quando state é present e password não está vazio | Valor mascarado da senha. |
remove | boolean | Quando state é absent e o usuário existir | Se deve ou não remover a conta do usuário. |
shell | string | Quando state é present | Shell de login do usuário. |
ssh_fingerprint | string | Quando generate_ssh_key for True | Impressão digital da chave SSH gerada. |
ssh_key_file | string | Quando generate_ssh_key for True | Caminho para o arquivo de chave privada SSH gerado. |
ssh_public_key | string | Quando generate_ssh_key for True | Arquivo de chave pública SSH gerado. |
stderr | string | Quando stderr é retornado por um comando que é executado | Erro padrão ao executar comandos. |
stdout | string | Quando standard output (stdout) é retornado por um comando que é executado | Saída padrão de comandos em execução. |
system | boolean | Quando system é passado para o módulo e a conta não existe | Se a conta é ou não uma conta do sistema. |
uid | integer | Quando uid é passado para o módulo | ID do usuário. |