Como posso programaticamente “ejetar” um keychain no OS X?

4

Estou usando um script para ejetar uma pequena chave USB que uso como uma unidade de "identidade", que contém algumas informações seguras. É digno de nota ter um arquivo “keychain” do OS X, que contém algumas das minhas senhas mais seguras e importantes (aquelas que estou disposta a comprometer com um programa de gerenciamento de senhas , mas que são importantes demais para deixar em meus computadores ou sincronizados com o Dropbox.)

Esse arquivo de chave é um link simbólico da pasta ~/Library/Keychains/ da Apple para essa chave, digamos, /Volumes/Key/SECURE.keychain . Quando eu ejetei o disco, este symlink desaparece, e o keychain obviamente deixa de ser acessível dentro do Keychain Access:

Tudoissoémuitobom…excetoquenãopossoejetarestedisco,semsairdametadedosprogramasnomeuMac.Pornenhumaboarazãoqueeupossadizer,qualqueraplicativoqueacessequalquerKeychainporqualquermotivo,abre(eretém-como-abrir)cadaarquivo.keychaindosistemaconhece.Porexemplo,assimqueeuconectoodisco,quandonadasolicitouacessoaestesecundário,seguro,meukeychain:

>lsof'/Volumes/Key/SECURE.keychain'COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMESpotify2801elliottcabletxtREG1,889096319/Volumes/Key/SECURE.keychainsyncdefau4267elliottcabletxtREG1,889096319/Volumes/Key/SECURE.keychain

Comopossoejetarcomsegurançaessaunidade,semmatarcadaprocessoquetenhaessearquivoaberto?Possodealgumaformaejetaroarquivodosprocessos,remotamente,oualgodessanatureza?

(Relacionado:Aquiestáaminhaabordagematualeinaceitável: link )

    
por ELLIOTTCABLE 08.04.2013 / 16:09

2 respostas

2

Somente chaveiros desbloqueados impedirão que você desmonte o volume em que eles estão armazenados. Se você bloquear as chaves, poderá desmontar sem problemas.

Para fazer isso a partir de um shell (script), use a ferramenta de linha de comando security :

security lock-keychain /Volumes/Key/SECURE.keychain

Isso bloqueará as chaves e permitirá que você desmonte o volume (desde que Acesso às Chaves não esteja em execução).

    
por 08.04.2013 / 21:09
0

Não sei por que esses aplicativos mantêm as chaves, mas você deve tentar forçar a ejeção da chave USB usando:

diskutil unmountDisk force /Volumes/Key

Sem problemas (contanto que esses aplicativos não devam usar esse arquivo de qualquer forma).

P.S .: Se você merece re-linkar o chaveiro a cada vez, você pode querer adicionar o caminho do chaveiro para

~/Library/Preferences/com.apple.security.plist
    
por 08.04.2013 / 21:03