L'utente Mac OS X Server non può cambiare la password

1

Ho utenti non amministratori che hanno bisogno di cambiare la loro password. Il comando passwd è apparentemente limitato agli amministratori.

Sul sito Web del server, c'è un link per la modifica della password, ma non funziona e gli utenti ricevono un errore. Internamente, Mac OS X registra il seguente messaggio:

Jan 21 01:56:02 domain.com collabd[247]: [CSAuthService.m:506 ab93000 +206ms] Could not change password for user 1234 with error Error Domain=com.apple.OpenDirectory Code=4001 "Operation was denied because the current credentials do not have the appropriate privileges." UserInfo=0x1234567890abc {NSLocalizedDescription=Operation was denied because the current credentials do not have the appropriate privileges., NSLocalizedFailureReason=Operation was denied because the current credentials do not have the appropriate privileges.}

Ho selezionato l'opzione nel servizio sito Web per consentire la modifica delle password. Quale sarebbe la causa di questo errore?

EDIT: gli utenti creati con l'app Server vanno bene, ma il problema è con gli utenti creati con dscl sulla riga di comando . Ecco i comandi esatti usati per creare un utente di prova chiamato "qwer":

sudo dscl . create /Users/qwer UniqueID 507
sudo dscl . create /Users/qwer PrimaryGroupID 20
sudo dscl . create /Users/qwer UserShell /bin/bash
sudo dscl . create /Users/qwer NFSHomeDirectory /Users/qwer
sudo mkdir /Users/qwer
sudo chown qwer:staff /Users/qwer
sudo passwd qwer

Ho quindi eseguito sudo dscl . read /Users/qwer e l'ho confrontato con sudo dscl . read /Users/uiop per un secondo utente di test.

Nei record, i seguenti tasti sono univoci per l'utente creato con l'app Server:

dsAttrTypeNative:_writers_hint
dsAttrTypeNative:_writers_jpegphoto
dsAttrTypeNative:_writers_passwd
dsAttrTypeNative:_writers_picture
dsAttrTypeNative:_writers_realname
dsAttrTypeNative:_writers_UserCertificate
LastName
RealName

Corrispondono a:

AppleMetaNodeLocation
PasswordPolicyOptions
PrimaryGroupID
RecordType
UserShell

E questi sono unici per ogni utente (o nel caso di Password sono offuscati):

dsAttrTypeNative:KerberosKeys
dsAttrTypeNative:ShadowHashData
AuthenticationAuthority
GeneratedUID
GeneratedUID
NFSHomeDirectory
RecordName
UniqueID
Password

Ho controllato AuthenticationAuthority ma l'unica cosa diversa è il nome utente nella stringa, quindi potrebbe essere considerato equivalente.

Inoltre, groups qwer e groups uiop danno esattamente lo stesso risultato.

Sembra che non ci sia nulla che impedisca a "qwer" di cambiare la loro password, tranne per il fatto che il loro account utente è stato creato sulla riga di comando; tuttavia, il metodo dscl dovrebbe essere perfettamente valido.

    
posta Justin Mrkva 21.01.2014 - 08:12
fonte

2 risposte

2

Secondo questo vecchio articolo (10.3!), la mancanza di una proprietà _writers_password nel database NetInfo impedirebbe agli utenti di modificare la propria password. È davvero obsoleto, ma sembra un buon punto di partenza.

link

(Modifica)

Da alcune altre fonti (fino a " In esecuzione Mac OS X Tiger " pagina 136) sembra che _writers_passwd sia un elenco di utenti che possono cambiare la password di quel particolare utente. Quindi, impostarlo sul nome utente dovrebbe essere sufficiente.

    
risposta data 22.01.2014 - 01:55
fonte
1

Innanzitutto, il comando passwd non richiede l'accesso di un amministratore per modificare la tua password.

Penso che tu abbia un problema con il certificato. Dai un'occhiata al riquadro Certificate dell'app Server e verifica che tutti i tuoi certificati siano ancora validi e che non vi siano avvisi su un servizio che non utilizza un certificato nel riquadro in basso. Sembra che al server web non venga permesso di modificare la password per qualche motivo.

Potresti anche andare a /Library/Server/Wiki/Config ed eseguire plutil su tutti i file plist per assicurarti che nulla sia troppo sbagliato lì. Verifico anche che tutte le autorizzazioni per i file siano sensate.

Hai lo stesso errore sia per gli utenti standard che per gli amministratori? Un utente amministratore può verificare correttamente in Profile Manager ?

    
risposta data 21.01.2014 - 10:24
fonte

Leggi altre domande sui tag