GlassFish 3 でJSR 196に準拠したカスタム認証モジュールを使用したいと考えています。インターフェース javax.security.auth.message.ServerAuth には次のメソッドがあります。
AuthStatus validateRequest(
MessageInfo messageInfo,
javax.security.auth.Subject clientSubject,
javax.security.auth.Subject serviceSubject
)
AuthStatus は、FAILURE や SUCCESS などの定数のいずれかになります。
問題は、JSR 196 を使用して「ロール データベース」からロールを取得するにはどうすればよいかということです。
例: サーバーは SSO トークン (たとえば、CAS トークン) を含む要求を受信し、トークンが有効かどうかを確認し、JDBC を介してデータベースから、または http を介して REST サービスから取得したロールをリモート ユーザー オブジェクトに取り込みます。
役割フェッチは JSR 196 の範囲内ですか? それはどのように実装できますか?
カスタム認証とカスタム ロール ソースを使用するには、 JSR 115と共に JSR 196 を使用する必要がありますか?