コマンドラインからgnomeキーリングからパスワードを取得することに関するこの投稿を見つけました( スクリプトで使用するために端末のキーリングからパスワードを取得するにはどうすればよいですか? )、そしてsecret-toolが行く。 secret-toolを使用してパスワードを保存できるのは素晴らしいことですが、タツノオトシゴを使用して保存された既存のパスワードを検索する方法がわからないようです。これは私が本当に望んでいることです。それらを照会するためにどの属性と値を使用する必要があるかはわかりません。マニュアルページでは、これらがどのようなものになる可能性があるかについてかなり曖昧です。
少し詳しく調べてみると、タツノオトシゴのように見えます保存されたパスワードに属性を割り当てません(secret-toolはルックアップする属性のないパスワードを見つけることができないと確信しています)。これが事実だと思う理由は、タツノオトシゴで作成した後、プロパティ->詳細を見ると詳細(属性など)がないためです。しかし、タツノオトシゴには他にも詳細なものがあり、それらの属性を使用してシークレットツールで調べることができます。
解決策は、secret-toolを使用してパスワードを作成するであり、後で一意のルックアップに適切な属性を割り当てることです。両方ともバックグラウンドでgnome-keyringを使用するため、シークレットツールで作成した時点で、新しいパスワードはタツノオトシゴに表示されます。
Gnome-keyringはまったく同じラベル(まったく同じ属性ではなく、まったく同じ属性の場合は置き換えられます)で複数のパスワードを作成するのがとてもうれしいようです。タツノオトシゴからの役に立たない古いもの。
$ secret-tool store --label=DomainPassword user sjohnson domain some.domain
Password: thisismypa$$w0rd
$ secret-tool lookup user sjohnson domain some.domain
thisismypa$$w0rd
最初にsecret-toolを使用してパスワードを保存したくなかった理由は、Loginパスワードにする方法がわからなかったからです。 (ログイン時に使用可能)secret-toolを介して。 「ログイン」がデフォルトのキーストアである限りのように見えますが、secret-toolはそこに保存します。
lssecret というユーティリティを作成しました。これは、すべてのGNOMEキーリングアイテムを含む、libsecretを使用するすべてのアイテムを一覧表示します。 libsecretはすべてのアイテムにキーと値のペアを自動的に追加するように見えますが、SeahorseはそれらをGUIに表示しません。 lssecretからの出力例を次に示します。
Collection: Login
Item: Test Password
Secret: Tr0ub4dor&3
Key: xdg:schema
Value: org.gnome.keyring.Note
Item: secret-tool item
Secret: s3cret-t00l
Key: my key
Value: my value
Key: xdg:schema
Value: org.freedesktop.Secret.Generic
Item: Unlock password for: [email protected]
Secret: correct horse battery staple
Key: unique
Value: ssh-store:/home/cueball/.ssh/id_rsa
Key: xdg:schema
Value: org.freedesktop.Secret.Generic
Item: Network secret for GenericSSID/802-1x/password
Secret: S3cureW1f1Passw0rd
Key: setting-name
Value: 802-1x
Key: connection-uuid
Value: 6a762552-04b3-cd05-45ba-586688e0a029
Key: xdg:schema
Value: org.freedesktop.NetworkManager.Connection
Key: setting-key
Value: password
GNOMEキーリングは、各キーリングをシークレットサービスのコレクションとして保存します。出力でデフォルトのキーリングであるログインを確認できます。アイテムは以下を表します。
secret-tool --label="secret-tool item" "my key" "my value"
を使用して追加されたアイテムで、プロンプトに「s3cret-t00l」と入力します。ご覧のとおり、Seahorseを使用してキーリングに追加されたパスワードには、「xdg:schema」と「org.gnome.keyring.Note」のキー値ペアがあります。 secret-tool search --all xdg:schema org.gnome.keyring.Note
を使用してそれらをすべてリストできます。