2013-10-15 10 views
9

私はSSL証明書を要求して受け入れることの根本的な違いを知っています.1つはSSL証明書を必要とし、もう1つは必要ないということです。特定のWebページのための私のIISマネージャでSSL証明書の要求とSSL証明書の受け入れの違いは何ですか?

私は、このセットアップを持っている:私が午前enter image description here

問題は、私が設定したときにSSL証明書を必要とし、私は得ることができます無視/受け付けるように設定し、クライアント証明書を持っているということですHTTPSを使用してWebページに送信します。これをRequireに変更すると、HTTPSでもWebページにアクセスできなくなるので、違いは何か、Webページにどのように影響するかを調べようとしています。

だから多分私の質問が間違った言葉で表現されています...私はわからないんだけど、テーマに関する私の理解はかなり限られているので、任意の助けいただければ幸いです。

ありがとうございます!

答えて

10

クライアント証明書認証がオプションか必須であるか、またはまったく使用できません。

  • 無視はまったく使用されない場合です。
  • を受け入れるには、それが提示だ場合、証明書がかかりますが、また、クライアントが1つを提示していない接続を継続します。
  • は、クライアント証明書を持っているの接続を継続しを必要としています。

クライアント証明書認証は、SSL/TLSでサーバーによってのみ開始できるものなので、この用語は正しくはありませんが、IISではこれが使用されています。

+0

だから、私のために...私はその後、チェックアウトのページを持っていますクレジットカード情報に移動し、通常のチェックアウトページにあるものはすべて...私はそれがSSLが必要ですが、CCAも同様に必要なことを示唆している? – Adjit

+0

"SSLを要求する"とは、クライアントが 'https:// 'を介してこのアプリケーションにアクセスできるようにするだけで、' http:// 'から' https:// 'にアップグレードしようとします。完全な解決策ではありません](http://webmasters.stackexchange.com/a/28443/11628))。これは、クライアントの証明書設定とは無関係です。 (クライアント証明書を使用していない場合は、[無視]を選択してください) – Bruno

+0

私が本当に尋ねようとしているのは、クライアント証明書を(クレジットカード決済のために)使うべきか、SSLで十分だと思いますか? – Adjit

0

@Brunoによって与えられた答えに展開します。これらの値は、applicationHost.config-ファイル、または無効化が許可されている場合はweb.configに設定することができます。

属性がsslFlagsと呼ばれ、あなたは可能な値だけでなく、以下の例があります。 HTTPSおよびサーバによって信頼できるクライアント証明書が必要Contosoという名前のサイトの

None    Disable SSL. 
Ssl     Require SSL. 
SslNegotiateCert Accept client certificates for authentication. 
SslRequireCert  Require clients certificates for authentication. 
SslMapCert   Enable certificate mapping authentication. 
Ssl128    Require 128-bit SSL. 

例:

<location path="Contoso"> 
    <system.webServer> 
     <security> 
     <access sslFlags="Ssl,SslNegotiateCert,SslRequireCert"> 
     </security> 
    </system.webServer> 
</location> 

https://docs.microsoft.com/en-us/iis/configuration/system.webserver/security/access