コンテンツにスキップ

「GNOME/Keyring」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
Kgx (トーク | 投稿記録)
更新
AshMyzk (トーク | 投稿記録)
同期
 
(3人の利用者による、間の16版が非表示)
1行目: 1行目:
[[Category:GNOME]]
[[Category:GNOME]]
[[Category:OpenPGP]]
[[en:GNOME/Keyring]]
[[en:GNOME/Keyring]]
[[es:GNOME (Español)/Keyring]]
[[es:GNOME (Español)/Keyring]]
[[zh-hans:GNOME (简体中文)/Keyring]]
[[zh-hans:GNOME/Keyring]]
{{Related articles start}}
{{Related|GnuPG}}
{{Related|OpenPGP}}
{{Related articles end}}

[https://wiki.gnome.org/Projects/GnomeKeyring GNOME Keyring] は「シークレット・パスワード・鍵・証明書を保存し、それらをアプリケーションから利用できるようにする GNOME のコンポーネントのコレクション」です。
[https://wiki.gnome.org/Projects/GnomeKeyring GNOME Keyring] は「シークレット・パスワード・鍵・証明書を保存し、それらをアプリケーションから利用できるようにする GNOME のコンポーネントのコレクション」です。

GNOME Keyring は [https://www.freedesktop.org/wiki/Specifications/secret-storage-spec/ org.freedesktop.secrets] API を提供しています。これは、クライアントアプリケーションがユーザーのログインセッション内で実行中のサービスを利用してシークレットをセキュアに保管できるようにする API です。

== セキュリティ ==

=== 悪意のあるアプリケーションからの保護 ===

GNOME/Keyring API の動作に関連するセキュリティの問題 ([https://nvd.nist.gov/vuln/detail/CVE-2018-19358 CVE-2018-19358]) が過去に報告されています。いかなるアプリケーションも、キーリングのロックが解除されていれば、[https://github.com/sungjungk/keyring_crack 任意のシークレットを簡単に読むことができてしまいます]。さらに、ユーザーがログインしていれば、ログイン/デフォルトのコレクションのロックは解除されています。D-Bus の保護機構 (busconfig とポリシー XML エレメントを含む) はデフォルトで使用されておらず、いずれにせよ、これも簡単にバイパスできてしまいます。

GNOME/Keyring のセキュリティモデルによれば、信頼されないアプリケーションはユーザーのセッションバスソケットへのアクセスを許可されないであろうことから、GNOME プロジェクトはこの脆弱性レポートに[https://gitlab.gnome.org/GNOME/gnome-keyring/-/issues/5#note_1876550 同意していません]。

Flatpak によってサンドボックス化されているアプリケーションは、セッションバスへのアクセスがフィルタリングされています。

=== セッションがロックされてもキーリングはロックされません ===

セッションがロックされても、キーリングは自動的にロックされません。[https://gitlab.gnome.org/GNOME/gnome-keyring/-/issues/62] これはつまり、パスワードがメモリ内に残り続け、[[Wikipedia:DMA attack|DMA 攻撃]]に対して脆弱になることを意味します。


== インストール ==
== インストール ==
GNOME を使用している場合、{{Pkg|gnome-keyring}} は {{grp|gnome}} グループの一つとして自動的にインストールされます。GNOME を使っていない場合は、[[公式リポジトリ]]から {{Pkg|gnome-keyring}} をインストールしてください。{{Pkg|libsecret}} もインストールして、他のアプリケーションにキーリングへのアクセスを許可する必要があります。{{Pkg|libgnome-keyring}} は非推奨になりました(そして、libsecret にとって代わられました)が、それでも特定のアプリケーションで必要になる場合があります。


{{Pkg|gnome-keyring}} は {{Grp|gnome}} グループの一部なので、GNOME を使用しているのであればすでにインストールされています。また、このパッケージは単独でインストールすることもできます。他のアプリケーションにキーリングへのアクセス権を与えるために {{Pkg|libsecret}} もインストールする必要があります。{{Pkg|libgnome-keyring}} は非推奨になりました (後継は ''libsecret'' です) が、それでも特定のアプリケーションで必要になる場合があります。
gnome-keyring-daemon は、ログイン時に systemd ユーザー サービスを介して自動的に開始されます。また、ソケットを介して要求に応じて開始することもできます。


gnome-keyring-daemon は、ログイン時に systemd ユーザーサービスを介して自動的に開始されます。また、ソケットを介して要求に応じて開始させることもできます。
GNOME キーリングに関連する追加のユーティリティは次の通りです:


GNOME Keyring に関する追加のユーティリティは次の通りです:
* {{App|secret-tool|コマンドラインから GNOME Keyring (や [https://standards.freedesktop.org/secret-service/ DBus Secret Service API] が実装された他のサービス) にアクセス。|https://wiki.gnome.org/Projects/Libsecret|{{Pkg|libsecret}}}}
* {{App|lssecret|''libsecret'' を使用してすべてのシークレットアイテムを一覧表示する (例えば、GNOME Keyring)|https://gitlab.com/GrantMoyer/lssecret|{{AUR|lssecret-git}}}}


* {{App|secret-tool|コマンドラインから GNOME Keyring (や [https://specifications.freedesktop.org/secret-service-spec/latest/ DBus Secret Service API] を実装する他のサービス) にアクセスします。|https://wiki.gnome.org/Projects/Libsecret|{{Pkg|libsecret}}}}
== GUI で管理 ==
* {{App|lssecret|''libsecret'' を使用してすべてのシークレットアイテム (例えば、GNOME Keyring) を一覧表示します。|https://gitlab.com/GrantMoyer/lssecret|{{AUR|lssecret-git}}}}
GNOME Keyring は Seahorse を使って管理することができます。公式リポジトリから {{Pkg|seahorse}} パッケージをインストールしてください。


== GUI で管理する ==
GNOME Keyring のパスワードを空にしたり変更することが可能です。Seahorse を開いて、ドロップダウンメニューの "View" から "By Keyring" を選択してください。Passwords タブを開いて、"Passwords: login" を右クリックして "Change password" を選択してください。旧パスワードを入力してから新しいパスワードを入力します。暗号化されていないストレージを使用しているという警告が表示されるので "Use Unsafe Storage" を押して下さい。

GNOME Keyring は Seahorse を使って管理することができます。{{Pkg|seahorse}} パッケージを[[インストール]]してください。

キーリング (例えば、デフォルトキーリングである "Login") のパスワードは変更することが可能であり、さらには削除することも可能です。詳細は GNOME Help の [https://help.gnome.org/users/seahorse/stable/keyring-create.html Create a new keyring] と [https://help.gnome.org/users/seahorse/stable/keyring-update-password.html Update the keyring password] を参照してください。


== キーリングを使用する ==
== キーリングを使用する ==


[[PAM]] モジュール ''pam_gnome_keyring.so'' は、GNOME キーリングを部分的に初期化し、そのプロセスデフォルトの ''login'' キーリングのロックを解除します。その後、初期化を完了して、環境変数を設定する {{ic|--start}} オプションを指定して ''gnome-keyring-daemon'' を呼び出す必要があります。
[[PAM]] モジュール ''pam_gnome_keyring.so'' は、GNOME キーリングを部分的に初期化し、その過程で ''login'' キーリングのロックを解除します。gnome-keyring-daemon は systemd ユーザサービスによって自動的に開始されます。

=== PAM の手順 ===


{{Note|'''自動ログインを使用しない場合に'''キーリングのロックを自動的にアンロックしたい場合、ユーザアカウントのパスワードと ''login'' キーリングのパスワードを同じにする必要があります。[[#キーリングのパスワードをユーザのパスワードへ自動的に変更する]] を参照してください。}}
=== PAM ステップ ===


{{Note|自動ログインせずに、自動でロックを解除したい場合、ユーザーアカウントとキーリングに同一のパスワードを設定する必要があります。[[#Automatically change keyring password with user password]] を参照してください。}}
{{Tip|
{{Tip|
* 自動ログイン自動ロック解除を使用するには、デフォルトのキーホルダーに空白のパスワードを設定します。この場合、キーリングの内容は暗号化されずに保存されることに注意してください。
* 自動ログインを使用している場合にキーリングを自動的にアンロックするには、''login'' キーリングのパスワードを空白に設定すればよいです。この場合、キーリングの内容は暗号化されずに保存されることに注意してください。
* あるいは、GDM と LUKS を使ている場合、GDM は LUKS のパスワードと一致すればキーリングをロック解除することができます。これを動かすには、[[Dm-crypt/システム設定#sd-encrypt フックを使う|適切なカーネルパラメータ]]と同様に、[[Mkinitcpio#Common hooks|mkinitcpio.conf で systemd init]] を使必要があります。詳しくは [https://reddit.com/r/Fedora/comments/jwnqq5/] を参照してください。
* あるいは、GDM と LUKS を使用している場合、キーリングのパスワードが LUKS のパスワードと一致すれば、GDM はキーリングをアンロックすることができます。そうには、[[mkinitcpio#通常のフック|mkinitcpio.conf で systemd init]] を使用し、かつ[[Dm-crypt/システム設定#systemd-cryptsetup-generator を使う|適切なカーネルパラメータ]]を使用する必要があります。詳は [https://reddit.com/r/Fedora/comments/jwnqq5/] を参照してください。
* PAM スップは省略ても動きます。これは、デーモンがまだ実行されてないときに[[#--start step|次のステップ]]でデーモンが初期化されるためです。ただし、この場合、デフォルトのキーリングはロック解除されません。詳細についてはURLご覧ください [https://wiki.gnome.org/Projects/GnomeKeyring/RunningDaemon]。
* 以下の PAM の手順をップしい場合''login'' キーリングを手動で、あるい他の方法によってアンロックしなけばなりません。[[#デスクトップ環境 (KDEGNOME、XFCE など) 外で gnome-keyring-daemon 使う]] と [https://wiki.gnome.org/Projects/GnomeKeyring/RunningDaemon GnomeKeyring wiki] を参照してください
}}
}}


ディスプレイマネージャを使用る場合、ほとんどのケースでキーリングはそのまま機能します。[[GDM]]、[[LightDM]]、[[LXDM]]、[[SDDM]] はすでに必要な PAM 設定があります。キーリングのロックを自動的に解除しないディスプレイマネージャの場合は、以下のような {{ic|/etc/pam.d/login}} の代わりに適切なファイルを編集してください。
ディスプレイマネージャを使用している場合、ほとんどのケースで特に設定せずともキーリングは機能します。[[GDM]]、[[LightDM]]、[[LXDM]]、そして [[SDDM]] はすでに必須の PAM 設定が含まれています。キーリングのロックを自動的に解除しないディスプレイマネージャの場合は、以下で言及している {{ic|/etc/pam.d/login}} 以外の適切なファイルを適切に編集してください。


コンソールベースのログインを行う場合は、{{ic|/etc/pam.d/login}} を編集してください:
{{ic|/etc/pam.d/login}} から gnome-keyring-daemon を起動:


{{ic|auth}} セクションの最後に {{ic|auth optional pam_gnome_keyring.so}} を追加し{{ic|session}} セクションの最後に {{ic|session optional pam_gnome_keyring.so auto_start}} を追加してください。
{{ic|auth}} セクションの最後に {{ic|auth optional pam_gnome_keyring.so}} を追加し{{ic|session}} セクションの最後に {{ic|session optional pam_gnome_keyring.so auto_start}} を追加してください。


{{hc|/etc/pam.d/login|
{{hc|/etc/pam.d/login|
48行目: 73行目:
account include system-local-login
account include system-local-login
session include system-local-login
session include system-local-login
'''session optional pam_gnome_keyring.so auto_start'''}}
'''session optional pam_gnome_keyring.so auto_start'''
}}


{{Note|[[greetd]] ログインマネージャを使用している場合、変更する必要のあるファイルは {{ic|/etc/pam.d/login}} ではなく {{ic|/etc/pam.d/greetd}} です。}}
GNOME、Unity、Cinnamon、MATE を使用している場合は、これで完了です。初期化が完了し、環境変数が自動的に設定されます。


== SSH 鍵 ==
== SSH 鍵 ==


GNOME Keyring は、[[SSH 鍵#ssh-agent|ssh-agent]] のラッパとして振る舞うことができます。このモードでは、SSH 鍵をアンロックする必要が生じた度に GUI パスワード入力ダイアログを表示します。このダイアログには、入力したパスワードを記憶するかどうか尋ねるチェックボックスが含まれています。このチェックボックスを選択すると、ログインキーリングがアンロックされている限り、今後そのキーを使用する際にパスワードを入力する必要が無くなります。
'''ssh''' コンポーネントを含む '''gnome-keyring-daemon''' は、SSH エージェントを起動し、{{ic|~/.ssh/}} にある対応する ''.pub'' ファイルを持つすべての鍵を自動的にロードします。これらの鍵をエージェントから削除する方法はありません。


バージョン [https://gitlab.gnome.org/GNOME/gnome-keyring/-/commit/25c5a1982467802fa12c6852b03c57924553ba73 1:46] から、gnome-keyring-daemon ビルドでは SSH の機能がデフォルトで無効化されています。この機能は {{ic|/usr/lib/gcr-ssh-agent}} ({{Pkg|gcr-4}} パッケージに含まれています) へと[https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/67 移動されています]。
すべてのロードされている鍵を確認するには:


=== gcr をセットアップする ===
$ ssh-add -L


やるべきことは:
サーバーに接続するときに、鍵が使われてパスフレーズの入力を求めるダイアログがポップアップするようになります。ログイン時に自動的にロックを解除するオプションもあります。このオプションにチェックを入れている場合、もうパスフレーズを入力する必要はなくなります。


# {{ic|gcr-ssh-agent.socket}} systemd [[ユーザーユニット]]を[[有効化]]する。
もしくは、キーリングにパスフレーズを永続的に保存したい場合、{{pkg|seahorse}} パッケージの seahorse-ssh-askpass を使います:
# {{ic|gcr-ssh-agent.socket}} systemd [[ユーザーユニット]]を一度[[開始]]する。これにより、ソケットファイル {{ic|$XDG_RUNTIME_DIR/gcr/ssh}} が作成されます。ファイルが作成されれば、最初のステップでソケットユニットが自動的に開始されるようになります。
# {{ic|gcr-ssh-agent.socket}} ユニットがアクティブである場合、{{ic|SSH_AUTH_SOCK}} 環境変数を手動で設定する必要はないはずです。一旦ログアウトし、ログインし直せば、{{ic|SSH_AUTH_SOCK}} 環境変数は {{ic|$XDG_RUNTIME_DIR/gcr/ssh}} に設定されているはずです。これは、Gnome の {{ic|Console}} アプリケーションで {{ic|fish}} をデフォルトシェルとして使用した場合に動作することが確認されています。


環境変数を設定する方法は[[環境変数#変数の定義|たくさんあります]]。使用するべき方法は、あなたのセットアップと好みに依ります。
/usr/lib/seahorse/seahorse-ssh-askpass my_key


SSH 鍵を追加するには:
=== 使用する ===


以下を実行することで、実行中のエージェントにロードされている SSH 鍵をリストアップできます:
$ ssh-add ~/.ssh/id_dsa
Enter passphrase for /home/mith/.ssh/id_dsa:


$ ssh-add -L
{{Note|秘密鍵と同じディレクトリ (上記の例では {{ic|~/.ssh/id_dsa.pub}}) に対応する {{ic|.pub}} ファイルが必要です。また、公開鍵のファイル名が秘密鍵に {{ic|.pub}} を付けた名前になっていることを確認してください (例: {{ic|my_key.pub}})。}}


これにより、適切なサービスが起動されていて、{{ic|SSH_AUTH_SOCK}} が適切に設定されていることを確認することができます。
To disable all manually added keys:


パスフレーズをキーリングに永続的に保存するには、{{pkg|seahorse}} パッケージの ssh-askpass を使用してください:
$ ssh-add -D


$ /usr/lib/seahorse/ssh-askpass ''my_key''
=== キーリング ssh コンポーネントを有効にする ===


他のディレクトリから SSH 鍵を手動で追加するには:
キーリングに同梱されているデフォルトの systemd ユーザー サービスには、'''ssh''' コンポーネントが含まれていません。ユニットファイル の {{ic|ExecStart}} 行で {{ic|gnome-keyring-daemon}} コマンドの {{ic|--components}} オプションに '''ssh''' を追加する必要があります。


$ ssh-add ~/.private/id_rsa
キーリングの systemd ユニットファイルを編集する方法については [[Systemd#ユニットファイルの編集]] を参照してください。
Enter passphrase for ~/.private/id_rsa:


{{Note|秘密鍵と同じディレクトリ (上記の例では {{ic|~/.ssh/id_rsa.pub}}) に対応する ''.pub'' ファイルが必要です。また、公開鍵のファイル名が秘密鍵に ''.pub'' を付けた名前になっていることを確認してください (例: {{ic|my_key.pub}})。}}
また、{{ic|gcr-ssh-agent.service}} [[ユーザーユニット]]を[[有効]]にする必要があります。


手動で追加した鍵をすべて無効化するには:
=== キーリングデーモンの無効化 ===


$ ssh-add -D
別の SSH エージェントを使いたい場合 (例: [[SSH 鍵#ssh-agent|ssh-agent]])、GNOME Keyring デーモンの SSH コンポーネントを無効化する必要があります:

# ln -sf /dev/null /etc/xdg/autostart/gnome-keyring-ssh.desktop
=== 無効化する ===
ログアウトすることで変更が適用されます。

別の SSH エージェントを実行したい場合 (例: [[SSH 鍵#ssh-agent|ssh-agent]] や [[gpg-agent]])、GNOME Keyring の ssh-agent ラッパを無効化するのは良い考えです。各エージェントは異なるソケットをリッスンし、{{ic|SSH_AUTH_SOCK}} を使ってエージェントを選ぶことができるので、厳密には必須ではありませんが、デバッグの問題を簡単にできます。ただし、GNOME の実装は BatchMode を含む多くのスクリプト機能を実装していないことに注意してください[https://gitlab.gnome.org/GNOME/gcr/-/issues/117]。

gcr-ssh-agent を無効化するには、{{ic|gcr-ssh-agent.socket}} と {{ic|gcr-ssh-agent.service}} を両方とも systemd で無効化・停止してください。


== ヒントとテクニック ==
== ヒントとテクニック ==
95行目: 127行目:
=== アプリケーションとの統合 ===
=== アプリケーションとの統合 ===


* [[Chromium#Force a password store|Chromium]]
* [[Chromium#特定のパスワードストアを強制する|Chromium]]

=== キーリングをロックする ===

$ dbus-send --session --dest=org.freedesktop.secrets \
--type=method_call \
/org/freedesktop/secrets \
org.freedesktop.Secret.Service.Lock \
array:objpath:/org/freedesktop/secrets/collection/login

このコマンドは [[D-Bus]] メソッドを呼び出して ''login'' キーリングをロックします。これとは別に GUI を使いたい場合は、Seahorse でキーリングをロックすることもできます。


=== パスフレーズの消去 ===
=== パスフレーズの消去 ===
101行目: 143行目:
$ gnome-keyring-daemon -r -d
$ gnome-keyring-daemon -r -d


上記のコマンド、実行中のインスタンス終了して、新しい gnome-keyring-daemon が起動します。
のコマンドgnome-keyring-daemon を開始し、以前の実行中のインスタンス終了します。


=== Git 統合 ===
=== Git 統合 ===


GNOME キーリングは、HTTPS でプッシュするときに [[Git]] と一緒に使うと便利です。この機能を用するには、{{Pkg|libsecret}} パッケージ[[#インストール|インストール]]する必要があります。
GNOME Keyring は、HTTPS 経由でプッシュするときに [[Git]] と一緒に使うと便利です。この機能を使用するには、{{Pkg|libsecret}} パッケージ[[#インストール|インストールされている必要があります]]


''libsecret'' ヘルパーを使うように Git を設定:
''libsecret'' ヘルパーを使うように Git を設定してください:


$ git config --global credential.helper /usr/lib/git-core/git-credential-gnome-keyring
$ git config --global credential.helper /usr/lib/git-core/git-credential-libsecret


これで ''git push'' を実行したときに、キーリングのロックが解除されていなかった場合解除するよう要求されます。
これで、次回 {{ic|git push}} を実行したときに、キーリングがまだ解除されていな場合解除するよう要求されます。


=== GnuPG 統合 ===
=== GnuPG 統合 ===


GnuPG を使用するいくつかのアプリケーションは、{{ic|pinentry-program}} 設定をします。GNOME 3 pinentry for GNOME Keyring を使用してパスフレーズプロンプトを管理するために以下を設定します。
GnuPG を使用するいくつかのアプリケーションは、{{ic|pinentry-program}} 設定されていることを要します。GNOME 3 pinentry for GNOME Keyring を使用してパスフレーズプロンプトを管理するようするには、以下を設定してください:


{{hc|~/.gnupg/gpg-agent.conf|
{{hc|~/.gnupg/gpg-agent.conf|
121行目: 163行目:
}}
}}


もう一つのオプションは、[[GnuPG#無人のパスフレーズ|GPG のループバックを強制]]することで、アプリケーションでパスフレーズを入力できるようにすることです。
もう一つのオプションは、[[GnuPG#無人のパスフレーズ|GPG のループバックを強制する]]ことで、アプリケーションでパスフレーズを入力できるようにすることです。


=== キーリングの名前変更 ===
=== キーリングの名前変更 ===


キーリングの表示名 (つまり、Seahorse および {{ic|file}} 表示される名前) は [https://ttboj.wordpress.com/2013/01/27/renaming-a- gnome-keyring-for-seahorse-the-passwords-and-keyrings-application/ 暗号化されていないキーリングファイル display-name の値を変更する] キーリングは通常、「.keyring」ファイル拡張子を付けて {{ic|~/.local/share/keyrings/}} に保存されます。
キーリングの表示名 (つまり、Seahorse {{ic|file}} 表示される名前) は[https://ttboj.wordpress.com/2013/01/27/renaming-a-gnome-keyring-for-seahorse-the-passwords-and-keyrings-application/ 暗号化されていないキーリングファイル内で display-name の値を変更する]ことで、変更することができます。キーリングは通常、{{ic|~/.local/share/keyrings/}} ''.keyring'' という拡張子が付けられて保存されています。


=== キーリングのパスワードをユーザパスワード自動的に変更 ===
=== キーリングのパスワードをユーザパスワード自動的に変更する ===


{{Note|これはデフォルトのキーリングにのみ影響しま。}}
{{Note|これは、''login'' キーリングにしか影響しません。}}


{{ic|password optional pam_gnome_keyring.so}} を {{ic|/etc/pam.d/passwd}} の末尾に追加します。
{{ic|/etc/pam.d/passwd}} の末尾に {{ic|password optional pam_gnome_keyring.so}} を[[追加]]てください:


{{hc|/etc/pam.d/passwd|2=
{{hc|/etc/pam.d/passwd|2=
...
#%PAM-1.0
password optional pam_gnome_keyring.so
}}

=== デスクトップ環境 (KDE、GNOME、XFCE など) の外で gnome-keyring-daemon を使う ===

==== 起動する ====

{{Accuracy|少なくとも [[xinit]] と [[SDDM]] は {{ic|/etc/X11/xinit/xinitrc.d/}} 内のスクリプトを全て実行するし、[[sway]] は {{ic|/etc/sway/config.d/50-systemd-user.conf}} を提供しているので、問題は "デスクトップ環境の外" ではありません。gnome-keyring が [[XDG Autostart]] を必要とするならば、インストール/設定のセクションでもそう書かれてあるべきです。英語版の議論ページ: [[:en:Talk:GNOME/Keyring#Launching_gnome-keyring-daemon_outside_desktop_environments_(KDE,_GNOME,_XFCE,_...)]]。}}

sway や i3、または以下のファイルを実行しないウィンドウマネージャを使用している場合:

* {{ic|/etc/xdg/autostart/gnome-keyring-*.desktop}}
* {{ic|/etc/X11/xinit/xinitrc.d/50-systemd-user.sh}}

ウィンドウマネージャの起動時に以下のコマンドがウィンドウマネージャによって実行される必要があります。以下のコマンドを何らかの特定の順序で実行する必要はありません。

{{bc|dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY}}

または

{{bc|dbus-update-activation-environment --all}}

このコマンドは、環境変数をウィンドウマネージャから dbus セッションに渡します。これがないと、DBus 経由で GUI プロンプトをトリガーできません。例えば、これは seahorse のパスワードプロンプトで必要です。

これが必要になるのは、グラフィカル環境が開始される前に dbus セッションが開始されるからです。したがって、dbus セッションは、あなたがいるグラフィカルな環境について知らないのです。誰か、または何かが、グラフィカル環境を記述する環境変数を dbus に渡すことで、グラフィカルな環境について dbus セッションに教えなければなりません。

{{bc|1=gnome-keyring-daemon --start --components=secrets}}

ログイン時に PAM は {{ic|gnome-keyring-daemon --login}} を実行します。これにより、gnome-keyring がログインパスワードによってアンロックされた状態になります。もし {{ic|gnome-keyring-daemon --login}} が数分以内に dbus セッションに接続されなければ、{{ic|gnome-keyring-daemon --login}} は終了します。{{ic|gnome-keyring-daemon --start ...}} がウィンドウ・マネージャ内で dbus セッションに対して起動されると、{{ic|gnome-keyring-daemon --login}} は dbus セッションに接続されます。ログインセッションが {{ic|gnome-keyring-daemon --start ...}} を開始する前に {{ic|gnome-keyring-daemon --login}} が終了すると、gnome-keyring や secret service API を使用するプログラムも使えなくなってしまいます。

==== GNOME Keyring XDG Portal ====

{{Accuracy|{{ic|/usr/share}} に存在するファイルを変更しても、パッケージのアップグレード時に元に戻ってしまいます。}}

GNOME Keyring は、[[flatpak]] などによってサンドボックス化されたアプリケーションのために XDG Portal のバックエンドを公開しています。GNOME の外でこれを機能させるには、設定ファイル {{ic|/usr/share/xdg-desktop-portal/portals/gnome-keyring.portal}} の {{ic|UseIn}} キーにデスクトップ環境の名前を追加する必要があります。例えば、[[sway]] を追加するには:


{{hc|/usr/share/xdg-desktop-portal/portals/gnome-keyring.portal|2=
#password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3
[portal]
#password required pam_unix.so sha512 shadow use_authtok
DBusName=org.freedesktop.secrets
password required pam_unix.so sha512 shadow nullok
Interfaces=org.freedesktop.impl.portal.Secret
'''password optional pam_gnome_keyring.so'''
UseIn=gnome;sway
}}
}}

XDG Desktop Portal のバックエンドに関する詳細は [[XDG デスクトップ ポータル#バックエンド]] を参照してください。


== トラブルシューティング ==
== トラブルシューティング ==
146行目: 226行目:
=== パスワードが保存されない ===
=== パスワードが保存されない ===


ログイン毎回パスワードプロンプトが表示され、パスワードが保存されない場合は、デフォルトのキーリングを作成設定する必要があります。
ログインするたびにパスワードプロンプトが表示され、パスワードが保存されない場合は、デフォルトのキーリングを作成/設定する必要がある場合があります。Seahorse (別名、パスワードと鍵) を使ってこれを行う方法については、GNOME Help の [https://help.gnome.org/users/seahorse/stable/keyring-create.html Create a new keyring] と [https://help.gnome.org/users/seahorse/stable/keyring-change-default.html Change the default keyring] を参照してください

Seahorse を使用してこれを行うには、GNOME ヘルプの [https://help.gnome.org/users/seahorse/stable/keyring-create.html Create a new keyring] と [https://help.gnome.org/users/seahorse/stable/keyring-change-default.html Change the default keyring] を参照してください。


=== キーリングのリセット ===
=== キーリングのリセット ===


以下のエラーメッセージが表示され場合は、ログインキーリングの[[#GUI で管理|パスワードを変更]]する必要があります。"The password you use to login to your computer no longer matches that of your login keyring"
"The password you use to login to your computer no longer matches that of your login keyring" といったエラーメッセージが表示され場合は、[[#GUI で管理する|ログインキーリングのパスワードを変更する]]必要があります。


または、{{ic|~/.local/share/keyrings/}} から {{ic|login.keyring}} と {{ic|user.keystore}} ファイルを削除することもできます。この操作行うと、保存されているすべての鍵が永久に削除されますので注意ください。ファイルを削除した、ログアウトして再度ログインしてください。
または、{{ic|~/.local/share/keyrings/}} から {{ic|login.keyring}} ファイルと {{ic|user.keystore}} ファイルを削除することもできます。これらファイル削除すると、保存されている鍵が永久に削除されので注意してください。これらの削除した一旦ログアウトしログインし直してください。


=== Unable to locate daemon control file ===
=== デーモンコントロールファイルが見つからない ===


ログイン後の [[journal]] に以下のようなエラーが表示されることがあります。
ログイン後に以下エラーが [[journal]] に表示される場合:


gkr-pam: unable to locate daemon control file
gkr-pam: unable to locate daemon control file


このメッセージは、他に関連する問題がなれば、「無視しても大丈夫」です[https://bbs.archlinux.org/viewtopic.php?pid=1940190#p1940190]。
関連する他の問題が発生していいのであれば、このメッセージは安全に無視することがきま[https://bbs.archlinux.org/viewtopic.php?pid=1940190#p1940190]。


=== No such secret collection at path: / ===
=== No such secret collection at path: / ===


カスタム {{ic|~/.xinitrc}} を使用していて、Seahorse で新しいキーリングを作成しようとしたにこのエラーが発生した場合は、次の行を追加することで解決できる可能性があります
Seahorse で新しいキーリングを追加しようとする、以下の理由よりこのエラーが発生することがあります:

* {{ic|~/.local/share/keyrings/}} ディレクトリが存在しない。この場合、このディレクトリを作成してください。
* カスタムの {{ic|~/.xinitrc}} が使用されている。これは以下の行を追加することで解決します[https://bbs.archlinux.org/viewtopic.php?pid=1640822#p1640822]:


{{hc|~/.xinitrc|
{{hc|~/.xinitrc|
174行目: 255行目:
=== ターミナルに "discover_other_daemon: 1" というメッセージが表示される ===
=== ターミナルに "discover_other_daemon: 1" というメッセージが表示される ===


これは gnome-keyring-deamonして起動されたことが原因です。systemd サービスデーモンと一緒に提供されるため、別の方法で開始する必要はありません。そのため、{{ic|.zshenv}}、{{ic|.bash_profile}}、{{ic|.xinitrc}}、{{ic|config.fish}} から開始コマンドを必ず削除してください。または、{{ic|gnome-keyring-daemon.service}} および {{ic|gnome-keyring-daemon.socket}} [[ユーザーユニット]]を[[無効化]]することもできます。
これは ''gnome-keyring-daemon'' が複数回起動されたことが原因です。Systemd サービスが gnome keyring のデーモンと一緒に提供されるため、別の方法で起動する必要はありません。そのため、{{ic|.zshenv}}、{{ic|.bash_profile}}、{{ic|.xinitrc}}、{{ic|config.fish}}、その他の似たよう場所から ''gnome-keyring-daemon'' を起動するコマンドを削除してください。あるいは、{{ic|gnome-keyring-daemon.service}} {{ic|gnome-keyring-daemon.socket}} [[ユーザーユニット]]を[[無効化]]することもできます。

=== キーリングの不適切な初期化 ===

これによる症状としては:

* SSH や Git といったプログラムが、キーリングからパスワードが提供されるのを待機する間、ハングアップする。最終的には "agent refused operation" といったエラーでタイムアウトします。
* Seahorse でキーリングが何も表示されない。"login" という名前のキーリングを手動で作成しても何も起こらないに見える。
* 次のようなエラーメッセージが Seahorse の出力に現れる: {{bc|couldn't load all secret collections: No such secret collection at path: /org/freedesktop/secrets/collection/login}}

これを解決するには、以下を行ってください:

* {{ic|gnome-keyring-daemon.service}} systemd [[ユーザーユニット]]を[[再起動]]する。これにより、''login'' キーリングが適切に初期化されるはずです。
* {{ic|gcr-ssh-agent.service}} systemd [[ユーザーユニット]]を、使用しているのであれば、[[再起動]]する。他のエージェントも再起動する必要があるかもしれません。

これで治らない場合は、[[#トラブルシューティング|キーリングを再設定する]]ことを検討してください。


== 参照 ==
== 参照 ==


* https://help.gnome.org/users/seahorse/stable/
* https://help.gnome.org/users/seahorse/stable/
* [https://wiki.gnome.org/action/show/Projects/GnomeKeyring GNOME Wiki ページ]
* [https://wiki.gnome.org/action/show/Projects/GnomeKeyring GNOME Wiki ページ]{{Dead link|2024|11|05|status=403}}
* [https://archlinux.org/packages/?q=org.freedesktop.secrets org.freedesktop.secrets を提供しているパッケージ]

{{TranslationStatus|GNOME/Keyring|2024-11-30|821751}}

2024年11月30日 (土) 08:56時点における最新版

関連記事

GNOME Keyring は「シークレット・パスワード・鍵・証明書を保存し、それらをアプリケーションから利用できるようにする GNOME のコンポーネントのコレクション」です。

GNOME Keyring は org.freedesktop.secrets API を提供しています。これは、クライアントアプリケーションがユーザーのログインセッション内で実行中のサービスを利用してシークレットをセキュアに保管できるようにする API です。

セキュリティ

悪意のあるアプリケーションからの保護

GNOME/Keyring API の動作に関連するセキュリティの問題 (CVE-2018-19358) が過去に報告されています。いかなるアプリケーションも、キーリングのロックが解除されていれば、任意のシークレットを簡単に読むことができてしまいます。さらに、ユーザーがログインしていれば、ログイン/デフォルトのコレクションのロックは解除されています。D-Bus の保護機構 (busconfig とポリシー XML エレメントを含む) はデフォルトで使用されておらず、いずれにせよ、これも簡単にバイパスできてしまいます。

GNOME/Keyring のセキュリティモデルによれば、信頼されないアプリケーションはユーザーのセッションバスソケットへのアクセスを許可されないであろうことから、GNOME プロジェクトはこの脆弱性レポートに同意していません

Flatpak によってサンドボックス化されているアプリケーションは、セッションバスへのアクセスがフィルタリングされています。

セッションがロックされてもキーリングはロックされません

セッションがロックされても、キーリングは自動的にロックされません。[1] これはつまり、パスワードがメモリ内に残り続け、DMA 攻撃に対して脆弱になることを意味します。

インストール

gnome-keyringgnome グループの一部なので、GNOME を使用しているのであればすでにインストールされています。また、このパッケージは単独でインストールすることもできます。他のアプリケーションにキーリングへのアクセス権を与えるために libsecret もインストールする必要があります。libgnome-keyring は非推奨になりました (後継は libsecret です) が、それでも特定のアプリケーションで必要になる場合があります。

gnome-keyring-daemon は、ログイン時に systemd ユーザーサービスを介して自動的に開始されます。また、ソケットを介して要求に応じて開始させることもできます。

GNOME Keyring に関する追加のユーティリティは次の通りです:

  • secret-tool — コマンドラインから GNOME Keyring (や DBus Secret Service API を実装する他のサービス) にアクセスします。
https://wiki.gnome.org/Projects/Libsecret || libsecret
  • lssecretlibsecret を使用してすべてのシークレットアイテム (例えば、GNOME Keyring) を一覧表示します。
https://gitlab.com/GrantMoyer/lssecret || lssecret-gitAUR

GUI で管理する

GNOME Keyring は Seahorse を使って管理することができます。seahorse パッケージをインストールしてください。

キーリング (例えば、デフォルトキーリングである "Login") のパスワードは変更することが可能であり、さらには削除することも可能です。詳細は GNOME Help の Create a new keyringUpdate the keyring password を参照してください。

キーリングを使用する

PAM モジュール pam_gnome_keyring.so は、GNOME キーリングを部分的に初期化し、その過程で login キーリングのロックを解除します。gnome-keyring-daemon は systemd ユーザサービスによって自動的に開始されます。

PAM の手順

ノート 自動ログインを使用しない場合にキーリングのロックを自動的にアンロックしたい場合、ユーザアカウントのパスワードと login キーリングのパスワードを同じにする必要があります。#キーリングのパスワードをユーザのパスワードへ自動的に変更する を参照してください。
ヒント
  • 自動ログインを使用している場合にキーリングを自動的にアンロックするには、login キーリングのパスワードを空白に設定すればよいです。この場合、キーリングの内容は暗号化されずに保存されることに注意してください。
  • あるいは、GDM と LUKS を使用している場合、キーリングのパスワードが LUKS のパスワードと一致すれば、GDM はキーリングをアンロックすることができます。そうするには、mkinitcpio.conf で systemd init を使用し、かつ適切なカーネルパラメータを使用する必要があります。詳細は [2] を参照してください。
  • 以下の PAM の手順をスキップしたい場合は、login キーリングを手動で、あるいは他の方法によってアンロックしなければなりません。#デスクトップ環境 (KDE、GNOME、XFCE など) の外で gnome-keyring-daemon を使うGnomeKeyring wiki を参照してください。

ディスプレイマネージャを使用している場合、ほとんどのケースで特に設定せずともキーリングは機能します。GDMLightDMLXDM、そして SDDM にはすでに必須の PAM 設定が含まれています。キーリングのロックを自動的に解除しないディスプレイマネージャの場合は、以下で言及している /etc/pam.d/login 以外の適切なファイルを適切に編集してください。

コンソールベースのログインを行う場合は、/etc/pam.d/login を編集してください:

auth セクションの最後に auth optional pam_gnome_keyring.so を追加し、session セクションの最後に session optional pam_gnome_keyring.so auto_start を追加してください。

/etc/pam.d/login
#%PAM-1.0

auth       required     pam_securetty.so
auth       requisite    pam_nologin.so
auth       include      system-local-login
auth       optional     pam_gnome_keyring.so
account    include      system-local-login
session    include      system-local-login
session    optional     pam_gnome_keyring.so auto_start
ノート greetd ログインマネージャを使用している場合、変更する必要のあるファイルは /etc/pam.d/login ではなく /etc/pam.d/greetd です。

SSH 鍵

GNOME Keyring は、ssh-agent のラッパとして振る舞うことができます。このモードでは、SSH 鍵をアンロックする必要が生じた度に GUI パスワード入力ダイアログを表示します。このダイアログには、入力したパスワードを記憶するかどうか尋ねるチェックボックスが含まれています。このチェックボックスを選択すると、ログインキーリングがアンロックされている限り、今後そのキーを使用する際にパスワードを入力する必要が無くなります。

バージョン 1:46 から、gnome-keyring-daemon ビルドでは SSH の機能がデフォルトで無効化されています。この機能は /usr/lib/gcr-ssh-agent (gcr-4 パッケージに含まれています) へと移動されています

gcr をセットアップする

やるべきことは:

  1. gcr-ssh-agent.socket systemd ユーザーユニット有効化する。
  2. gcr-ssh-agent.socket systemd ユーザーユニットを一度開始する。これにより、ソケットファイル $XDG_RUNTIME_DIR/gcr/ssh が作成されます。ファイルが作成されれば、最初のステップでソケットユニットが自動的に開始されるようになります。
  3. gcr-ssh-agent.socket ユニットがアクティブである場合、SSH_AUTH_SOCK 環境変数を手動で設定する必要はないはずです。一旦ログアウトし、ログインし直せば、SSH_AUTH_SOCK 環境変数は $XDG_RUNTIME_DIR/gcr/ssh に設定されているはずです。これは、Gnome の Console アプリケーションで fish をデフォルトシェルとして使用した場合に動作することが確認されています。

環境変数を設定する方法はたくさんあります。使用するべき方法は、あなたのセットアップと好みに依ります。

使用する

以下を実行することで、実行中のエージェントにロードされている SSH 鍵をリストアップできます:

$ ssh-add -L

これにより、適切なサービスが起動されていて、SSH_AUTH_SOCK が適切に設定されていることを確認することができます。

パスフレーズをキーリングに永続的に保存するには、seahorse パッケージの ssh-askpass を使用してください:

$ /usr/lib/seahorse/ssh-askpass my_key

他のディレクトリから SSH 鍵を手動で追加するには:

$ ssh-add ~/.private/id_rsa
Enter passphrase for ~/.private/id_rsa:
ノート 秘密鍵と同じディレクトリ (上記の例では ~/.ssh/id_rsa.pub) に対応する .pub ファイルが必要です。また、公開鍵のファイル名が秘密鍵に .pub を付けた名前になっていることを確認してください (例: my_key.pub)。

手動で追加した鍵をすべて無効化するには:

$ ssh-add -D

無効化する

別の SSH エージェントを実行したい場合 (例: ssh-agentgpg-agent)、GNOME Keyring の ssh-agent ラッパを無効化するのは良い考えです。各エージェントは異なるソケットをリッスンし、SSH_AUTH_SOCK を使ってエージェントを選ぶことができるので、厳密には必須ではありませんが、デバッグの問題を簡単にできます。ただし、GNOME の実装は BatchMode を含む多くのスクリプト機能を実装していないことに注意してください[3]

gcr-ssh-agent を無効化するには、gcr-ssh-agent.socketgcr-ssh-agent.service を両方とも systemd で無効化・停止してください。

ヒントとテクニック

アプリケーションとの統合

キーリングをロックする

$ dbus-send --session --dest=org.freedesktop.secrets \
   --type=method_call  \
   /org/freedesktop/secrets \
   org.freedesktop.Secret.Service.Lock \
   array:objpath:/org/freedesktop/secrets/collection/login

このコマンドは D-Bus メソッドを呼び出して login キーリングをロックします。これとは別に GUI を使いたい場合は、Seahorse でキーリングをロックすることもできます。

パスフレーズの消去

$ gnome-keyring-daemon -r -d

このコマンドは、gnome-keyring-daemon を開始し、以前の実行中のインスタンスを終了します。

Git 統合

GNOME Keyring は、HTTPS 経由でプッシュするときに Git と一緒に使うと便利です。この機能を使用するには、libsecret パッケージがインストールされている必要があります

libsecret ヘルパーを使うように Git を設定してください:

$ git config --global credential.helper /usr/lib/git-core/git-credential-libsecret

これで、次回 git push を実行したときに、キーリングがまだ解除されていない場合に解除するよう要求されます。

GnuPG 統合

GnuPG を使用するいくつかのアプリケーションは、pinentry-program が設定されていることを要求します。GNOME 3 pinentry for GNOME Keyring を使用してパスフレーズのプロンプトを管理するようにするには、以下を設定してください:

~/.gnupg/gpg-agent.conf
pinentry-program /usr/bin/pinentry-gnome3

もう一つのオプションは、GPG のループバックを強制することで、アプリケーションでパスフレーズを入力できるようにすることです。

キーリングの名前変更

キーリングの表示名 (つまり、Seahorse や file で表示される名前) は、暗号化されていないキーリングファイル内で display-name の値を変更することで、変更することができます。キーリングは通常、~/.local/share/keyrings/ 内に .keyring という拡張子が付けられて保存されています。

キーリングのパスワードをユーザのパスワードへ自動的に変更する

ノート これは、login キーリングにしか影響しません。

/etc/pam.d/passwd の末尾に password optional pam_gnome_keyring.so追加してください:

/etc/pam.d/passwd
...
password	optional	pam_gnome_keyring.so

デスクトップ環境 (KDE、GNOME、XFCE など) の外で gnome-keyring-daemon を使う

起動する

この記事またはセクションの正確性には問題があります。
理由: 少なくとも xinitSDDM/etc/X11/xinit/xinitrc.d/ 内のスクリプトを全て実行するし、sway/etc/sway/config.d/50-systemd-user.conf を提供しているので、問題は "デスクトップ環境の外" ではありません。gnome-keyring が XDG Autostart を必要とするならば、インストール/設定のセクションでもそう書かれてあるべきです。英語版の議論ページ: en:Talk:GNOME/Keyring#Launching_gnome-keyring-daemon_outside_desktop_environments_(KDE,_GNOME,_XFCE,_...)。 (議論: トーク:GNOME/Keyring#)

sway や i3、または以下のファイルを実行しないウィンドウマネージャを使用している場合:

  • /etc/xdg/autostart/gnome-keyring-*.desktop
  • /etc/X11/xinit/xinitrc.d/50-systemd-user.sh

ウィンドウマネージャの起動時に以下のコマンドがウィンドウマネージャによって実行される必要があります。以下のコマンドを何らかの特定の順序で実行する必要はありません。

dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY

または

dbus-update-activation-environment --all

このコマンドは、環境変数をウィンドウマネージャから dbus セッションに渡します。これがないと、DBus 経由で GUI プロンプトをトリガーできません。例えば、これは seahorse のパスワードプロンプトで必要です。

これが必要になるのは、グラフィカル環境が開始される前に dbus セッションが開始されるからです。したがって、dbus セッションは、あなたがいるグラフィカルな環境について知らないのです。誰か、または何かが、グラフィカル環境を記述する環境変数を dbus に渡すことで、グラフィカルな環境について dbus セッションに教えなければなりません。

gnome-keyring-daemon --start --components=secrets

ログイン時に PAM は gnome-keyring-daemon --login を実行します。これにより、gnome-keyring がログインパスワードによってアンロックされた状態になります。もし gnome-keyring-daemon --login が数分以内に dbus セッションに接続されなければ、gnome-keyring-daemon --login は終了します。gnome-keyring-daemon --start ... がウィンドウ・マネージャ内で dbus セッションに対して起動されると、gnome-keyring-daemon --login は dbus セッションに接続されます。ログインセッションが gnome-keyring-daemon --start ... を開始する前に gnome-keyring-daemon --login が終了すると、gnome-keyring や secret service API を使用するプログラムも使えなくなってしまいます。

GNOME Keyring XDG Portal

この記事またはセクションの正確性には問題があります。
理由: /usr/share に存在するファイルを変更しても、パッケージのアップグレード時に元に戻ってしまいます。 (議論: トーク:GNOME/Keyring#)

GNOME Keyring は、flatpak などによってサンドボックス化されたアプリケーションのために XDG Portal のバックエンドを公開しています。GNOME の外でこれを機能させるには、設定ファイル /usr/share/xdg-desktop-portal/portals/gnome-keyring.portalUseIn キーにデスクトップ環境の名前を追加する必要があります。例えば、sway を追加するには:

/usr/share/xdg-desktop-portal/portals/gnome-keyring.portal
[portal]
DBusName=org.freedesktop.secrets
Interfaces=org.freedesktop.impl.portal.Secret
UseIn=gnome;sway

XDG Desktop Portal のバックエンドに関する詳細は XDG デスクトップ ポータル#バックエンド を参照してください。

トラブルシューティング

パスワードが保存されない

ログインするたびにパスワードプロンプトが表示され、パスワードが保存されない場合は、デフォルトのキーリングを作成/設定する必要がある場合があります。Seahorse (別名、パスワードと鍵) を使ってこれを行う方法については、GNOME Help の Create a new keyringChange the default keyring を参照してください。

キーリングのリセット

"The password you use to login to your computer no longer matches that of your login keyring" といったエラーメッセージが表示される場合は、ログインキーリングのパスワードを変更する必要があります。

または、~/.local/share/keyrings/ から login.keyring ファイルと user.keystore ファイルを削除することもできます。これらのファイルを削除すると、保存されている全鍵が永久に削除されるので注意してください。これらの削除したら、一旦ログアウトし、ログインし直してください。

Unable to locate daemon control file

ログイン後に以下のエラーが journal に表示される場合:

gkr-pam: unable to locate daemon control file

関連する他の問題が発生していないのであれば、このメッセージは「安全に無視することができます」[4]

No such secret collection at path: /

Seahorse で新しいキーリングを追加しようとすると、以下の理由によりこのエラーが発生することがあります:

  • ~/.local/share/keyrings/ ディレクトリが存在しない。この場合、このディレクトリを作成してください。
  • カスタムの ~/.xinitrc が使用されている。これは以下の行を追加することで解決します[5]:
~/.xinitrc
source /etc/X11/xinit/xinitrc.d/50-systemd-user.sh

ターミナルに "discover_other_daemon: 1" というメッセージが表示される

これは gnome-keyring-daemon が複数回起動されたことが原因です。Systemd サービスが gnome keyring のデーモンと一緒に提供されるため、別の方法で起動する必要はありません。そのため、.zshenv.bash_profile.xinitrcconfig.fish、その他の似たような場所から gnome-keyring-daemon を起動するコマンドを削除してください。あるいは、gnome-keyring-daemon.servicegnome-keyring-daemon.socket ユーザーユニット無効化することもできます。

キーリングの不適切な初期化

これによる症状としては:

  • SSH や Git といったプログラムが、キーリングからパスワードが提供されるのを待機する間、ハングアップする。最終的には "agent refused operation" といったエラーでタイムアウトします。
  • Seahorse でキーリングが何も表示されない。"login" という名前のキーリングを手動で作成しても何も起こらないに見える。
  • 次のようなエラーメッセージが Seahorse の出力に現れる:
    couldn't load all secret collections: No such secret collection at path: /org/freedesktop/secrets/collection/login

これを解決するには、以下を行ってください:

  • gnome-keyring-daemon.service systemd ユーザーユニット再起動する。これにより、login キーリングが適切に初期化されるはずです。
  • gcr-ssh-agent.service systemd ユーザーユニットを、使用しているのであれば、再起動する。他のエージェントも再起動する必要があるかもしれません。

これで治らない場合は、キーリングを再設定することを検討してください。

参照

翻訳ステータス: このページは en:GNOME/Keyring の翻訳バージョンです。最後の翻訳日は 2024-11-30 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。