Para todas as contas do OS X
pwpolicy
não funciona para contas locais no cliente do OS X. MAS Você pode usar o comando dscl para editar diretamente essas configurações de autenticação. É garantido que este método funcione para contas OS X do nível do usuário (Guest, admin e outras contas regulares que você veria listadas na janela de login). Com essa abordagem, não importa se a conta é gerenciada com a conta do OS-X Server / LDAP. Esse método também funciona para todas as contas do sistema OSX (que, de outra forma, você desativaria seus shells de login).
Veja como:
# Read the AuthenticationAuthority key
dscl . -read /Users/username AuthenticationAuthority
AuthenticationAuthority: ;Kerberosv5;; \
username@LKDC:SHA1.41BE28E3B64EB62A42D0673968B9591DE18210F5; \
LKDC:SHA1.07264456235E49D45C4B99FC9549FC366CE32343; ; \
ShadowHash;HASHLIST:<SALTED-SHA1>
Desativar
Se ainda não estiver desativado, anexe DisabledUser
ao valor dessa chave. Com um ponto e vírgula para o separador de campo. Excesso / vazio ; ;
campos são ignorados.
dscl . -append /Users/username AuthenticationAuthority ";DisabledUser;"
Verificar
Para verificar o status de uma conta como ativado / desativado:
dscl . -read /Users/username AuthenticationAuthority | grep DisabledUser
Para contas do sistema OSX: essas contas não têm uma chave AuthenticationAuthority
para começar. Portanto, para verificar o status ativado / desativado, é determinado se o atributo UserShell
tem um shell de login válido. Portanto, verifique o shell quando AuthenticationAuthority
não existe.
Ativar
Para reativar a conta do usuário, basta remover DisabledUser
sub-string da entrada AuthenticationAuthority. Nós usamos, em seguida, use o dscl . -create
cmd e write-back a coisa toda.
dscl . -read /Users/username AuthenticationAuthority | \
sed 's/AuthenticationAuthority: //;s/DisabledUser//g;s/[; ]*$//' | \
xargs dscl . -create /Users/username AuthenticationAuthority
Obtenha as credenciais do AuthenticationAuthority para todos os usuários:
dscl . -list /Users AuthenticationAuthority
Contas do sistema: lembre-se de que uma conta do sistema também deve ter um shell de login válido.