2011-07-18 8 views
-1

glassfish v3.01にjava ee 6アプリケーションがデプロイされていますが、私たちはいくつかのEJBをWebサービスとして公開したいと思いますが、Webサービスのエンドポイントのセキュリティと認証に問題があります。カスタムログインモジュールとレルムを使用しています。 Webサービスの呼び出しを認証するにはどうすればいいですか?glassfishが@Webserviceを呼び出す

おかげ ギデオン

@WebService 
@Stateless 
@DeclareRoles({Role.WEBMASTER, Role.ACCOUNTADMIN, Role.ACCOUNTUSER}) 
@RolesAllowed({Role.WEBMASTER,Role.ACCOUNTADMIN,Role.ACCOUNTUSER}) 
public class SmppService 
{ 
    @EJB 
    private SmppEjb ejbRef;// Add business logic below. (Right-click in editor and choose 

    @WebMethod(operationName = "sendMessage") 
    @Oneway 
    public void sendMessage(@WebParam(name = "cellNumber") 
    String cellNumber, @WebParam(name = "message") 
    String message) { 
     ejbRef.sendMessage(cellNumber, message); 
    } 

} 

答えて

0

ユーザー名とパスワードは、HTTPヘッダに行きます。すべてのSOAPクライアントには、これを指定する方法が必要です。例えば、それはこの

instance = eval(@gateways[gateway]).new(url) 
instance.options["protocol.http.auth"] << [url, @auth_data[user][0], @auth_data[user][1]] 
instance.options['protocol.http.ssl_config.verify_mode'] = OpenSSL::SSL::VERIFY_NONE 

@auth_data [ユーザー]のように見えますSOAP4R使用しています私たちのRubyコードに[0]、ユーザ名と@auth_data userがパスワードです。

あなたが手でヘッダーを作成している場合、あなたはDigest Access Authentication

を使用する必要があります
関連する問題