2017-04-12 43 views
1

我已經使用AD Graph API在AD B2C租戶中創建了新用戶。Azure AD B2C從本地應用程序登錄 - 要登錄到此應用程序,必須將該帳戶添加到目錄

{ 
    "accountEnabled": true, 
    "creationType": "LocalAccount", 
    "displayName": "Alex Wu", 
    "passwordProfile": { 
    "password": "[email protected]", 
    "forceChangePasswordNextLogin": false 
}, 
    "signInNames": [ 
    { 
     "type": "userName", 
     "value": "Dawn" 
    }, 
    { 
     "type": "emailAddress", 
     "value": "[email protected]" 
    }, 
    { 
     "type": "mobile", 
     "value": "96587XXXXX" 
    } 
    ] 
}  

我想從使用adal4j庫的Android本機應用程序客戶端登錄這些憑據。我可以使用手機號碼和用戶名登錄,並且可以獲取訪問令牌。但是,當我嘗試使用電子郵件地址登錄時,出現錯誤「要登錄此應用程序,帳戶必須添加到目錄中」。

回答

1

AFAIK,Adal4j庫不支持Azure AD B2C流。如果你想在Java開發中使用這個流程,你需要自己實現這個流程。 請參考此document中提到的代碼示例,通過所需的協議與Azure AD B2C進行交互。

此外,要測試帳戶登錄策略,我們可以從如下圖所示的門戶網站運行它。根據測試,我可以使用Azure AD B2C本地帳戶的電子郵件登錄。

enter image description here

+0

感謝您的回覆。我已經實現了P2 OAuth在iOS的AD B2C上進行身份驗證。 https://github.com/p2/OAuth2首先我想知道這是否是公平的選擇。但是,藉助此庫,我可以使用用戶名和手機號碼登錄。但爲什麼不是電子郵件地址?在用戶登錄策略時,現在點擊運行,我可以使用emailAddress和密碼登錄。 – Sarva

+0

Azure AD B2C支持本地帳戶和社交帳戶(Facebook和Google+等)登錄。如果您不想啓用社交帳戶,則可以選擇Azure Active Directory而不是Azure AD B2C。爲了支持社交帳戶,我們需要實施與OA OAuth不同的Azure AD B2C OAuth流程。有關Azure AD B2C的OAuth 2.0授權代碼流的更多詳細信息,請參閱[here](https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-reference-oauth -code#1-GET-一個授權碼)。 –

相關問題