3

GF3.1.2 の設定に助けが必要です。次の変更を行いました。変更後に機能しないため、何か重要なものが欠けている場合はお知らせください。私のIDはnilesh2811@gmail.comです

リンクがあれば、フォーラムで特定のスレッドや回答が見つかりませんでした。このための書類がある場合は、転送してください。

必要なことをしてください

web.xml

<login-config>
  <auth-method>CLIENT-CERT</auth-method>
</login-config>
<security-constraint>
  <web-resource-collection>
    <web-resource-name>Entire Application</web-resource-name>
    <url-pattern>/faces/*</url-pattern>
    <http-method>POST</http-method>
  </web-resource-collection>
  <auth-constraint>
    <description/>
    <role-name>authorized</role-name>
  </auth-constraint>
  <user-data-constraint>
    <transport-guarantee>CONFIDENTIAL</transport-guarantee>
  </user-data-constraint>
</security-constraint>
<security-role>
  <description/>
  <role-name>authorized</role-name>
</security-role>

sun-web.xml

<security-role-mapping>
  <role-name>authorized</role-name>
  <principal-name>admin</principal-name>
  <group-name>authorized</group-name>
</security-role-mapping>

ドメイン.xml

<security-service>
  <auth-realm classname="com.sun.enterprise.security.auth.realm.file.FileRealm" name="admin-realm">
    <property name="file" value="${com.sun.aas.instanceRoot}/config/admin-keyfile"></property>
    <property name="jaas-context" value="fileRealm"></property>
  </auth-realm>
  <auth-realm classname="com.sun.enterprise.security.auth.realm.file.FileRealm" name="file">
    <property name="file" value="${com.sun.aas.instanceRoot}/config/keyfile"></property>
    <property name="jaas-context" value="fileRealm"></property>
  </auth-realm>
  <auth-realm classname="com.sun.enterprise.security.auth.realm.certificate.CertificateRealm" name="certificate">
    <property name="assign-groups" value="authorized"></property>
  </auth-realm>
4

4 に答える 4

1

web.xml の login-config セクションが不完全です

<login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>certificate</realm-name>
</login-config>

realm-name の内容は、domain.xml の auth-realm 要素の name 属性と一致する必要があります。この場合は「certificate」です。

[更新しました]

さらに、CA 証明書をサーバーのトラストストアにインポートする必要があります。

${com.sun.aas.instanceRoot}/config/cacerts.jks
于 2012-04-22T09:43:01.443 に答える
1

実際にglassfish 3.1.2を試してみましたが、次の条件で動作しました:

1. jks タイプの同じキー (トラスト) ストアを同じ場所で使用する必要があります。他の証明書形式と対話するには、それらを jks 形式が処理できる形式に変換する必要があります。

2.glassfish-web.xml では、このマッピングのようにする必要があります

    <security-role-mapping>
      <role-name>manager</role-name>   
    <group-name>authorized</group-name>
    </security-role-mapping>

3. domain.xml ファイルには、次のものが必要です。

<auth-realm classname="com.sun.enterprise.security.auth.realm.certificate.CertificateRealm" name="certificate">
              <property name="assign-groups" value="authorized"></property>
            </auth-realm> 

注: web.xml では、domain.xml ファイルと一致するレルム名が必要です。

于 2013-06-16T16:19:39.327 に答える
0

設定

Client Authentication: true

http-listener-2

于 2013-12-20T14:31:44.720 に答える
0

誰もがこれを初めて試す場合、簡単な言葉で理解するには時間がかかるでしょう。クライアントとサーバーの両方のトラストストアがお互いの証明書を信頼する必要があります。まず、サーバーとクライアントに証明書を交換する自己署名証明書を使用することをお勧めします。手順を簡素化したヘルプについては、次の記事を使用できます。記事に従ってください。その後、必要な独自のメソッド証明書を使用できます。

http://www.slideshare.net/krizsan/scdjws-5-study-notes-3085287

SCDJWS 5 または現在は Oracle Certified Professional として知られている Java EE 5 Web Services Developer Study Notes by Ivan A Krizsan バージョン: 2012 年 2 月 23 日

于 2012-05-02T22:16:31.567 に答える