2017-08-08 35 views

答えて

0

MobileFirstは、OAuth 2認証フレームワークhttps://www.ibm.com/support/knowledgecenter/en/SSHS8R_8.0.0/com.ibm.worklight.dev.doc/dev/c_oauth_security_model.htmlを実装しています。実装には2つの段階があり、アクセストークンの入手と
アクセストークンを使用した保護されたリソースへのアクセス。
ChallengeHandler APIは、最初のステージを実装するために使用され、
アクセストークンを取得します。 WLAuthorizationManager APIは、
第2段階の保護されたリソースへのアクセスを実装するために使用されます。詳細は でhttps://www.ibm.com/support/knowledgecenter/SSHS8R_8.0.0/com.ibm.worklight.dev.doc/dev/c_oauth_client_apis.html?view=embed#c_oauth_client_apis

1

あなたはチャレンジを受けずにユーザーにログインすることもできます。たとえば、アプリケーションの最初の画面としてログイン画面を表示したり、ログアウト後にログイン画面を表示したり、ログインに失敗したりします。これらのシナリオをプリエンプティブログインと呼びます。

答えが難しい場合は、submitChallengeAnswer APIを呼び出すことはできません。

WLAuthorizationManager.login(securityCheckName,credentials).then(
    function() { 
     WL.Logger.debug("login onSuccess"); 
    }, 
    function (response) { 
     WL.Logger.debug("login onFailure: " + JSON.stringify(response)); 
}); 

資格情報が間違っている場合は、セキュリティチェックがチャレンジを送り返し:これらのシナリオでは、モバイル財団SDKは、ログインAPIが含まれています。

アプリケーションのニーズに基づいて、submitChallengeAnswerとは対照的に、loginをいつ使用するかを知っている開発者の責任です。これを実現する1つの方法は、isChallengedなどのブール値フラグを定義し、handleChallengeに達したときにtrueに設定するか、それ以外の場合(失敗、成功、初期化など)にfalseに設定します。ユーザーがログインボタンをクリックすると

することは、あなたが動的に使用するAPIを選択することができます。

if (isChallenged){ 
    userLoginChallengeHandler.submitChallengeAnswer(credentials); 
} else { 
    WLAuthorizationManager.login(securityCheckName,credentials).then(
//... 
    ); 
}