私は私のアプリにAzureを統合しています。私はActive DirectoryのAzureポータルでアプリケーションを作成しましたが、ADALライブラリを使用して統合していますが、 。ログインの識別子がディレクトリに見つかりません
if (mResult != null) {
// logout
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie();
CookieSyncManager.getInstance().sync();
authenticationContext.getCache().removeAll();
} else {
// login
authenticationContext.acquireToken(LoginActivity.this,Constant.CLIENT_ID,
Constant.CLIENT_SECRETE_KEY, Constant.REDIRECT_URL, "", PromptBehavior.Auto, "",
callback);//CLIENT_ID=my appid at the of app registration //CLIENT_SECRETE_KEY=secret key of registered app in Active Directory //REDIRECT_URL=passing valid url
}
とOnCreate関数でauthenticationcontextを初期化する(これを呼び出すボタンにonclickのボタンを作成して)LoginActivity
authenticationContext = new AuthenticationContext(LoginActivity.this,
Constant.AUTHORITY_URL, true);// Authority_URL=https://login.windows.net/mydirectoryname.onmicrosoft.com
のコールバック
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
authenticationContext.onActivityResult(requestCode, resultCode, data);
}
private void showInfo(String msg) {
Log.e("", msg);
}
private AuthenticationCallback<AuthenticationResult> callback = new AuthenticationCallback<AuthenticationResult>() {
@Override
public void onError(Exception exc) {
showInfo("getToken Error:" + exc.getMessage());
}
@Override
public void onSuccess(AuthenticationResult result) {
mResult = result;
startActivity(new Intent(LoginActivity.this, SecondActivity.class));
if (mResult.getUserInfo() != null) {
Log.v("", "User info userid:" + result.getUserInfo().getUserId()
+ " displayableId:" + result.getUserInfo().getDisplayableId());
}
}
};
用
とAzureポータルのアプリ登録で、KEYVAULTとMicrosoftAzureActiveDirectoryの許可(ログインしてユーザープロフィールの許可を得る) 私は間違っていますか?
Constant.ResourceIdで渡す内容とコード内でClientSecretKeyを使用する場所 – sss
クライアントシークレットは使用しません。信頼できない環境で動作しているので、モバイルアプリで使用することはできません。リソースIDは、アクセストークンに使用するリソースのURIです。だからAzure AD Graph APIの場合は 'https:// graph.windows.net /'です。 – juunas
authenticationContext.acquireToken(LoginActivity.this、Constant.RESOURCE_ID、 Constant.CLIENT_ID、Constant.REDIRECT_URL、 ""、PromptBehavior。自動、 ""、 コールバック)。 このAuthority_Url = https://login.windows.net/(mydirectoryname).onmicrosoft.com このRedirect_url = "https://(mydomainname)/ users/auth/azure_oauth2/callback" このリソースID = " https://login.windows.net/(mydirectory_id)/oauth2/token " AADSTS50001エラーが表示される* – sss