Azure Web应用程序的现有AD应用程序列表中未显示Azure AD应用程序

7
我正在查看一些教程,创建了一个Azure AD应用程序,以在我的Azure Web应用程序中用作授权/身份验证。但是,当我尝试为我的Azure网站(应用服务)选择现有的AD应用程序时,它没有出现在我的Azure AD应用程序列表中。添加现有的AD应用程序的路径是“应用服务> MyAzureApp>身份验证/授权>Auzre Active Directory>快速配置>选择现有的AD应用程序”。我已经为我的Azure AD应用程序使用了以下设置:
登录URL: https://login.windows.net 回复URL: https://msmanaged-na.consent.azure-apim.net/redirect 所需权限: Azure Service Management API>作为组织用户访问Azure Service Management
密钥: 添加了一个密钥,并将其到期日期设置为1年。
请帮忙解决。

更新(@dstrockis):
我在浏览器中粘贴了这个链接 https://login.microsoftonline.com/(tenantname).onmicrosoft.com/oauth2/authorize?client_id=(API Acces-Keys-GeneratedKey)=&redirect_uri=(https://azuresitename.azurewebsites.net/.auth/login/aad/callback)&response_mode=query&response_type=code+id_token&scope=openid&nonce=12345

然后我收到了一个错误请求。请见下图。

enter image description here


你是否解决了这个问题?这让我抓狂。 - Aviad P.
是的,使用Flemin在下面提到的手动方法。 - Khadim Ali
8个回答

5
如果您想为您的应用程序配置身份验证,请按照此处提到的手动方法进行操作here。我已经在我的应用服务中完成了此操作,它正在正常工作。

1
我尝试了手动方法。现在当我浏览Web应用程序时,它返回一个错误:“无法显示页面,因为发生了内部服务器错误。” 你有什么想法吗? - Khadim Ali
仅从这个错误来判断是很困难的。请确保您已经尝试了隐身模式、在回复URL中使用“https”,检查订阅是否正确链接到活动目录,并重新检查所有配置。 - Flemin Adambukulam
那是我配置方面的错误。对于迟来的反馈表示歉意。 - Khadim Ali

2
在Azure Active Directory管理中心,当我浏览到Azure Active Directory>应用程序注册时,我注册的应用程序没有显示出来。当我将视图设置从“我的应用程序”(默认选择)更改为“所有应用程序”时,它会在列表中显示。至少对于我的目的,无需更改所有者。

所有者设置是一个线索-

从“My Apps”视图切换到“All apps”允许我的应用程序显示出来。


澄清并详细说明。 - matisetorm
在Azure Active Directory管理中心,当我浏览到Azure Active Directory > 应用程序注册时,我注册的应用程序没有显示出来。当我将视图设置从“我的应用程序”(默认选择)更改为“所有应用程序”时,它就会显示在列表中。至少对于我的目的而言,无需更改所有者。 - omegasurf

1
在Azure AD中,“注册”应用程序和将其“配置”到您的租户之间存在差异。 Azure AD门户UX目前仅执行前者,但不执行后者。 团队已经意识到这个问题并正在修复。
与此同时,最好的解决方法是模拟登录该应用程序,这将使该应用程序“配置”到您的Azure AD租户中。
如果您完成以下请求并将其粘贴到浏览器中,并使用您租户中的帐户登录,您应该会看到它显示出来。 https://login.microsoftonline.com/{common-or-tenant}/oauth2/authorize?client_id={client-id}&redirect_uri={redirect_uri}&response_mode=query&response_type=code+id_token&scope=openid&nonce=12345

我尝试了上述请求,将{tenant}替换为<mytrialorg>.onmicrosoft.com,client_id替换为API Access> Keys部分中生成的Azure AD应用程序密钥,redirect_uri替换为“https://<azurewebsitename>.azurewebsites.net/.auth/login/aad/callback”,但在登录时收到了错误的请求错误。 - Khadim Ali
请使用应用程序ID,而不是应用密钥。 - dstrockis
但是我收到了包含代码、ID令牌和会话状态的响应。 - Khadim Ali
好的,那么这可能与Azure AD无关,而是应用服务与AAD的集成问题。听起来下面的人更了解这个问题。抱歉造成了困扰。 - dstrockis

1
我有些迟到,但我相信我的翻译会有所帮助。
当您创建应用程序注册时,请不要忘记在关闭注册面板之前为其分配所有者(设置 -> 所有者)。
否则,它将被创建但不会显示在列表中,因为似乎它没有默认所有者。

Example of creating an App Registration


当您是“全局管理员”时,所有者未填写。 - LockTar

1

对我而言,只需要更新应用程序注册清单文件。

"publicClient": false

"publicClient": null

有用了

干杯,


0

听起来你的应用程序没有注册为企业应用程序,这就是我发现我的应用程序需要的。


0

我在Azure Function中遇到了类似的问题,我的KeyVault Access没有显示出来。它给了我一个晦涩的错误提示([error] aadsts900023" specified tenant identifier is neither a valid dns name, nor a valid external domain.)

最终发现,访问密钥库消失了,但我找不到应用程序再次授予权限。

为了解决这个问题,我进入Azure Function > Function Settings > Platform Features部分。

在常规设置下,选择“所有设置”。

在此页面中,在“设置”部分下选择“身份验证”。

在“系统分配”选项卡中,打开“状态”。

然后会出现以下内容:“此资源已在Azure Active Directory中注册。您可以控制其对Azure Resource Manager、Azure Key Vault等服务的访问。”


0

从您的错误信息图片中可以看出,应用程序似乎没有添加到您的Azure AD租户中。

现在当我去为我的Azure网站(应用服务)选择现有的AD应用程序时,它不会出现在我的Azure AD应用程序列表中。

在Azure门户中选择现有的AD应用程序时,请确保您的应用程序已添加到“当前活动目录”中(如下面截图所示)。如果您在Azure门户中创建新的AD应用程序,则非常容易。 enter image description here

如果您对Azure AD工作流程中的参数感到困惑,请参阅this article


我确认AD应用程序已添加到当前活动目录中。这是一个Azure试用组织,只有一个默认的AD。 - Khadim Ali

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接