Quando si aggiungono le password all'accesso con portachiavi dalla riga di comando NTLM viene convertito in MLTN

1

Questa è una delle cose più strane ...

Scrivo script aggiungendo password all'accesso Portachiavi quando effettuo l'accesso per fornire un'esperienza simile a "SSO". Io uso AppleScript per eseguire alcuni comandi del terminale che assomigliano a questo †:

security add-internet-password -a $LOGNAME -j 'default' -s '$SHAREPOINT' -r htps -P 443 \
-T /Applications/Safari.app/Contents/MacOS/Safari \
-T /Applications/Microsoft\ Office\ 2011/Microsoft\ Document\ Connection.app/Contents/MacOS/Microsoft\ Document\ Connection \
-d '$SHAREPOINT' -w $PASSWORD -t 'ntlm'

Nota che devo usare l'autenticazione NTLM perché funzioni correttamente con le app di MS Office.

Tuttavia, quando lo faccio, ottengo un portachiavi che assomiglia a questo (le righe non pertinenti sono tagliate)

keychain: "/Users/.../Library/Keychains/login.keychain"
class: "inet"
attributes:
    "ptcl"<uint32>="http"
    "sdmn"<blob>="sharepoint site"
    "srvr"<blob>="sharepoint site"
    "atyp"<blob>="mltn"

Si noti che il valore di atyp "ntlm" è stato invertito in mltn. Quando provo a connettermi a Sharepoint, non funziona. Tuttavia, se uso lo stesso comando ma cambio l'ultima parte in -t 'mltn' , allora funziona!

keychain: "/Users/.../Library/Keychains/login.keychain"
class: "inet"
attributes:
    "ptcl"<uint32>="http"
    "sdmn"<blob>="sharepoint site"
    "srvr"<blob>="sharepoint site"
    "atyp"<blob>="ntlm"

Vedi qui che atyp è stato invertito in 'ntlm' che consente alle app di MS Office di accedere!

Quindi ho una soluzione, ma certamente mi sento schifo usarlo. C'è qualcosa che sto facendo di sbagliato qui?

† La variabile $ PASSWORD viene in realtà recuperata chiedendo all'utente una finestra di dialogo in modo che possano digitarla una volta e pre-autenticare in diversi siti Web in un colpo solo.

    
posta newz2000 06.06.2014 - 22:04
fonte

0 risposte

Leggi altre domande sui tag