0

戦争にバンドルされた安全な Web サービス (ssl 経由のメッセージ認証) があり、jdbcRealm を使用してユーザーを認証しようとしています。jdbcRealm は他の ear アプリでは正常に機能しますが、この .war では機能しません

web.xml:

<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Secure Area</web-resource-name>
            <url-pattern>/xoxoServer/secondWS/*</url-pattern>
            <http-method>POST</http-method>
        </web-resource-collection>
        <!--<auth-constraint>
          <role-name>EMPLOYEE</role-name>
        </auth-constraint>-->
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>

    </security-constraint>

    <login-config>
        <auth-method>BASIC</auth-method>
        <realm-name>my_realm</realm-name>
    </login-config>
</web-app>

コンソールでこれを取得します:

FIN: [Web-Security] hasResource perm: (javax.security.jacc.WebResourcePermission /secondWS POST)
FIN: JMAC: UnsupportedCallback : javax.security.auth.callback.NameCallback
FIN: JMAC: In PasswordValidationCallback Processor
FIN: jmac login user [test] into realm: file using JAAS module: fileRealm
FIN: Login module initialized: class com.sun.enterprise.security.auth.login.FileLoginModule
FIN: JAAS authentication aborted.
INFO: SEC5046: Audit: Authentication refused for [test].
INFO: SEC1201: Login failed for user: test

これを修正するには?ありがとう。ps:Glassfish 3.1.2.2 b5 と jdk6 を使用しています。

4

1 に答える 1

0

私はこれを解決しました:

  1. 戦争を耳に詰め込む

  2. glassfish-application.xml にレルムを追加する (耳の中)

于 2012-11-29T15:57:35.560 に答える