Safariがサイト全体で特定のクライアント証明書を自動的に使用するようにするにはどうすればよいですか?


25

Safariでクライアント証明書を使用すると、いくつかの問題が発生します。

  • Safariは、サイトの各ページでクライアント証明書を選択するよう求めます(迷惑です)
  • Safariは、特にクライアント証明書を更新する必要がある場合は、既にアクセスしたページで証明書を選択するように再確認する場合もあります。

これらの問題を修正するにはどうすればよいですか?

回答:


26

Safariのクライアント証明書および関連する設定は、一種証明書とともにキーチェーンマネージャーに保存されます

Webサイトで使用する証明書を選択すると、一種ID設定で別のエントリがキーチェーンマネージャーに保存されます。残念ながら、デフォルトでは、それはあなたがいた正確なページに対してのみ保存されます。名前と場所の両方がページのURLに設定されます。

これを修正するには、ID設定エントリの1つを編集し、whereセクションをベースURLに変更しますhttps://somesslsite.com/(末尾のスラッシュが重要です!)。また、混乱を防ぐために同じ名前に名前を更新します。その後、そのサイトの他のID設定エントリをすべて削除できます。

有効期限が切れた証明書があり、新しい証明書を追加する必要がある場合は、古い証明書エントリと関連するすべてのID設定エントリを削除することをお勧めします。

証明書IDの設定エントリを見つけるには、キーチェーンマネージャーを開き、[ すべてのアイテム]が選択されていることを確認し、必要に応じて部分的なURLや証明書名を検索します。おそらく多くはないので、それでうまくいかない場合は、リストを種類別に並べ替えるだけで簡単に見つけることができます。

注:私はそれを考え出したが、自分自身や他の人のために知識を維持したかったので、私は自分でこれに答えています。


2
残念ながら、Safariは各サブURLを要求し続けます...:-/
タフカダソー14

コメントを削除しました。DanJsの回答はすでにそれを説明しています。
カロン

ロケーションプロパティを更新する必要はありません。名前が十分ではありません。
アンディ

17

OS Xのより新しいバージョンでは、部分パスとワイルドカードがサポートされるようになりました。したがって、キーチェーンマネージャーを使用して、Webサイトやドメイン全体のID設定を作成できます。

部分パスの例(末尾のスラッシュが必要なことに注意してください!):

https://server.mydomain.com/

ワイルドカードの例:

*.mydomain.com

詳細はこちら(「man security」ページから):

10.5.4より前では、SSL / TLSクライアント認証のID設定は、URLごとにのみ設定できました。設定を有効にするには、アクセスするURLがサービス名と正確に一致する必要がありました。

10.5.4では、部分パスURLを含むサービス名を使用して同じサーバー上のより具体的なパスを照合することにより、サーバーごとにID設定を指定できるようになりました。たとえば、「https://www.apache-ssl.org/」のID設定が存在する場合、「https://www.apache-ssl.org/cgi/cert-export」に対して有効になります。等々。部分パスURLは末尾のスラッシュ文字で終わる必要があることに注意してください。

10.6以降、ワイルドカード文字*をサービス名の左端のコンポーネントとして使用することにより、ドメインごとにID設定を指定できます。SSLワイルドカードとは異なり、ID設定ワイルドカードは複数のサブドメインと一致できます。たとえば、名前のID設定は、または*.army.milに一致します。同様に、の設定はとの両方に一致します。server1.subdomain1.army.milserver2.subdomain2.army.mil*.milserver.army.milserver.navy.mil


私のために働いた(Mac OS X 10.9.1でSafari 7.0.1を実行)
タフカダソー

3

私はこれに苦労してきましたが、上記の答えは何が起こっているのかを実感させてくれました。

Webサイトの証明書があり、有効期限が切れている場合は、古い証明書を削除する必要があります。次に、そのWebサイトのID設定項目も削除します。これらの古いアイテムは、証明書と同様に期限切れです。それらを削除すると、新しいID設定が保存され、正しく使用されます。

そう:

  1. 古い証明書を削除する
  2. 古い証明書のID設定項目を削除する
  3. 新しい証明書を追加

その後、Webサイトを参照し、リストから新しい証明書を選択すると、その特定のWebアドレスについてこれが記憶されます。現在、Safari 5.1.3を使用しており、このバージョンでは設定にワイルドカードを使用しません。Webアドレスの変更ごとに設定を追加する必要があります。完全な答えを見つけてください。


それを行うための正しい方法については答えを@apinsteinを参照してください
dwery
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.