我正在使用Azure AD和adal.js的隐式流。 需要先征得用户的同意,然后才能返回身份令牌以进行隐式流程。另外,用户应该选择帐户,因为他可以使用多个帐户
但是我无法通过这种方式运行。
由于我有很多帐户,因此我使用awk 'NF&&$(NF-1)~/[0-9]+/{print $(NF-1)}' Input_file
是这样的:
prompt=select_account
问题是为什么我没有看到用户的同意对话框? 结果,用户未经同意就获得了身份令牌。
在放置window.config = {
instance: 'https://login.microsoftonline.com/',
tenant: tenantId,
clientId: clientId,
postLogoutRedirectUri: window.location.origin,
popUp: false,
extraQueryParameter : "prompt=select_account"
};
时,会看到同意对话框,但每次AND有时都无法选择所需的帐户时出现,并且auth使用了错误的登录帐户。我了解在某些情况下(更改应用程序的权限时)需要重新prompt=consent
,所以使用此提示似乎无法解决我的问题。
我尝试了prompt=consent
和prompt=select_account consent
,但返回的错误是prompt=select_account%20consent
无效。
相反,当我使用授权代码流时,我看到同意对话框,并且同意被保存在azure广告中,因此用户将不会再次看到它。在隐式流处需要相同的行为。