Azure Kubernetes 服务中的 AAD 身份验证

Posted

技术标签:

【中文标题】Azure Kubernetes 服务中的 AAD 身份验证【英文标题】:AAD Authentication inside AzureKubernetesService 【发布时间】:2021-12-14 14:00:49 【问题描述】:

我为单个租户开发了一个使用 Azure AD 身份验证的应用程序。

我想在 AKS 中托管它,但似乎不可能,如下所述:

问题是如果应用程序不在 localhost 中,它必须以 https 运行,但我的 pod 运行在 http 协议上(像往常一样)。即使我的 aks 集群服务作为 Https 运行,回调 uri 似乎也在寻找它运行的 pod 上的协议,因此它将请求重定向到 http://mydomain 而不是 https://mydomain,返回“相关错误”或“app id 不存在”(因为映射的 uri 是 https://)

重定向 URI 无法映射到 Azure 应用程序上的 http,如 here 所述。

我已经在使用 Kestrel 证书的应用程序构建中使用我的 Pod 中的证书使其工作。但这似乎不是一个好的解决方案。

有人知道更合适的解决方法吗?

【问题讨论】:

你有机会试试this 或this 【参考方案1】:

到目前为止,没有其他可用的解决方案,因为根据您关注的文档,我们对重定向 URL 有限制。

【讨论】:

以上是关于Azure Kubernetes 服务中的 AAD 身份验证的主要内容,如果未能解决你的问题,请参考以下文章

Azure 应用服务能够使用托管标识(无应用角色)调用另一个受 AAD 保护的应用服务,为啥?

在移动应用中使用 AAD 自定义登录验证 Azure 应用服务

在 Azure 应用服务身份验证与身份验证(经典)中重定向以使用 AAD 登录

具有托管标识(用户分配)的 Azure SQL 无法针对 AAD 使用

在 Asp.Net Core Web 应用程序中使用 EasyAuth 对 Azure 应用服务上的 AAD 进行身份验证时,无法填充 ClaimsPrincipal

在 AAD 保护的 Azure Web 应用程序中检索访问令牌