2017-01-11 7 views
-2

私はこれらの手順により、クライアント証明書認証のための私の自由サーバを設定しようとしています: http://www.ibm.com/support/knowledgecenter/SS7K4U_liberty/com.ibm.websphere.wlp.zseries.doc/ae/twlp_sec_clientcert.htmlIBMリバティクライアント証明書の認証

私の自由設定:Javaクライアントからの

<server description="new server"> 
    <!-- Enable features --> 
    <featureManager> 
     <feature>webProfile-7.0</feature>   
     <feature>restConnector-1.0</feature> 
     <feature>localConnector-1.0</feature> 
     <feature>monitor-1.0</feature> 
     <feature>jsp-2.3</feature> 
     <feature>adminCenter-1.0</feature> 
     <feature>ssl-1.0</feature> 
    </featureManager> 

    <!-- To access this server from a remote client add a host attribute to the following element, e.g. host="*" --> 
    <httpEndpoint id="defaultHttpEndpoint" 
        httpPort="9081" 
        httpsPort="9444" />       

    <application id="Sample" name="Sample" type="war" location="Sample.war"/> 
    <keyStore id="defaultKeyStore" location="key.jks" type="JKS" password="{xor}EzY9Oi0rJg==" /> 
    <keyStore id="defaultTrustStore" location="truststore.jks" type="JKS" password="{xor}EzY9Oi0rJg==" /> 
    <ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore" trustStoreRef="defaultTrustStore" clientAuthenticationSupported="true"/> 
    <webAppSecurity allowFailOverToBasicAuth="true" /> 

    <auth-method>CLIENT-CERT</auth-method> 
    <basicRegistry id="basic">  
     <user identity="CN=Admin,O=myOrg,C=country" name="Admin" password="admin" />-->   
    </basicRegistry> 

    <administrator-role> 
     <user>Admin</user>  
    </administrator-role> 

</server> 

は私が手: CWWKX0229E :提供されたユーザー資格情報に問題がありました。サーバーはコード401と「Unauthorized」というメッセージで応答しました

私のユーザーマッピングが間違っていると思います。誰かが私にリバティーユーザーとクライアント証明書をマップする方法の例を教えてもらえますか?

答えて

0

ユーザー/パスワードではなく証明書を使用してWebアプリケーションにログインする予定ですか? web.xmlにCLIENT-CERTを定義する必要があります。アプリケーションがアクセスする場所からブラウザに証明書をインストールする必要があります。また、Libertyサーバーでは、トラストストアに署名者証明書が必要です。また、証明書DN名がレジストリ・ユーザーに正確に一致する場合は、証明書フィルタを定義することもできます。

以下のコマンドをserver.xmlに追加して、クライアント証明書認証が成功しなかった場合に基本認証を使用できるようにすることができます。

また、アプリケーションが基本認証で動作することを確認することもできます。で

詳細: http://www.ibm.com/support/knowledgecenter/SSEQTP_8.5.5/com.ibm.websphere.wlp.doc/ae/twlp_sec_clientcert.html

+0

は私が認証を使用するように衣装からの要求を持っています。そして、それは基本認証で動作します。 クライアント証明書認証を使用して管理者ロールを持つことは可能ですか? – VytautasN

+0

独自のWebアプリケーションを使用してclient-certログインを行っている場合は、administrationtaor-roleは必要ありませんが、アプリケーションが定義した役割は必要ありません。あなたが管理センターで証明書のログインを使用しようとしている場合、私はそれが動作するのかどうかは疑問です。 –

+0

しかし、clientAuthentication = "true"を設定することで、クライアント認証/相互SSLが必要な場合があります。この場合、サーバーはクライアントから証明書を送信するよう要求します。ただし、クライアントに証明書がない場合、または証明書がサーバーによって信頼されていない場合、ハンドシェイクは成功しません。この場合でも、ユーザー/パスワードでログインする必要があります。 –

関連する問題