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

safari ssl-certificate

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

  • Safariはサイトの各ページでクライアント証明書の選択を求められます(迷惑)
  • 特にクライアント証明書を更新する必要がある場合は、Safariは、すでに訪問したページで証明書を選択するように再度要求してくるかもしれません

これらの問題を解決するにはどうしたらいいですか?

  31  apinstein  2011-10-05


ベストアンサー

Safariのクライアント証明書と関連する環境設定は、証明書の一種でKeychain Managerに保存されています

Webサイトで使用する証明書を選択すると、Keychain ManagerにID設定のような別のエントリが保存されます。残念なことに、デフォルトでは、あなたが閲覧していた正確なページのためだけに保存されます。名前と場所の両方がページのURLに設定されます

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

有効期限が切れた証明書を持っていて、新しい証明書を追加しなければならなかった場合は、古い証明書のエントリと関連するすべての ID プリファレンスのエントリを削除することをお勧めします

証明書とIDプリファレンスのエントリを見つけるには、Keychain Managerを開き、すべての項目が選択されていることを確認し、必要に応じて部分的なURLや証明書名を検索してください。おそらく数は多くないと思いますので、うまくいかない場合は、リストを種類別に並べ替えれば、簡単に見つけることができるはずです

注意:私はそれを考え出したので、私自身がこれに答えていますが、自分や他の人のための知識を持続させたいと思っていました

33  apinstein  2011-10-05


部分パスとワイルドカードは、OS Xの最新バージョンでサポートされるようになりました。そのため、Keychain Managerを使って、ウェブサイト全体やドメインのID設定を作成することができます

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

https://server.mydomain.com/

Wildcard example:

*.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 設定ワイルドカードは複数のサブドメインにマッチします。例えば、名前 *.army.mil の ID プリファレンスは server1.subdomain1.army.milserver2.subdomain2.army.mil にマッチします。同様に、*.mil のプリファレンスは server.army.milserver.navy.mil の両方にマッチします

22  DanJ  2013-10-04


私自身も悩んでいたのですが、上記の回答を見て、何がどうなっているのかが分かりました

あるウェブサイトの証明書を持っていて、それが期限切れになった場合、何をすべきかというと、古い証明書を削除することです。次に、そのウェブサイトの ID プリファレンスタイプの項目も削除します。これらの古いアイテムは、証明書と同じように期限切れです。これらを削除した後、新しいIDプリファレンスはすべて保存され、正しく使用されるようになります

So:

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

その後、あなたはウェブサイトを参照し、リストから新しい証明書を選択することができ、これは、その特定のWebアドレスのために記憶されます。現在、私たちはSafari 5.1.3であり、このバージョンでは、環境設定にワイルドカードを使用しません、あなたは、ウェブアドレスの変更ごとに環境設定を追加する必要があります…私は任意の完全な答えを見つけることができませんでしたので、これは誰かを助けることを願って、ちょうどそこにそれを置く

3  Chris  2012-02-16


タイトルとURLをコピーしました