调用API管理服务时,能不能有交互式登录?

问题描述 投票:1回答:1

我们有一个后台服务,可以根据路由返回一个json结果(Elasticsearch结果)或一个交互式的浏览器网页(Kibana)。这个服务是在API管理服务的后面把关的。我们的开发人员需要能够访问网页(Kibana)。我们目前使用的是客户端证书,我们在API定义中设置了这个要求。当浏览到浏览器中的路径时,用户会被提示需要证书,然后连接就完成了。

我想摆脱对证书的管理,而使用AAD来允许只有特定组中的用户能够访问。我明白如何在进行API调用时做到这一点。有没有可能也有类似于证书的体验,如果用户没有登录,就会提示他们登录,然后如果他们在正确的组中,就会允许访问?

谢谢,谢谢

azure azure-active-directory azure-api-management
1个回答
0
投票

我猜想你想在APIM级别而不是在Kibana中强制执行验证。为此,你需要处理两个流程。

初始流,当非认证用户请求URL时,你应该检查持久性认证,可能在Cookie头,如果没有发现 - 重定向用户到login.microsoft.com。

返回流,当Azure AD用令牌将用户重定向回APIM时,你需要验证该令牌,并将其添加到Set-Cookie头中,最好进行加密。

最后当进行任何调用时也要检查并验证cookie是否过期。

© www.soinside.com 2019 - 2024. All rights reserved.