与Azure AD登录的集成测试 [英] Integration Test with Azure AD login

查看:6
本文介绍了与Azure AD登录的集成测试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个Web应用程序(.NET Core 3.1),它通过请求身份声明来对用户进行身份验证。当用户第一次访问应用程序时,他/她会被发送到Microsoft,使用Azure Active Directory的用户名和密码登录。登录后,客户端将获得存储在会话存储中的JWT令牌。然后,使用JWT令牌来验证对Web应用程序控制器的每个HTTP请求。

在进行集成测试(XUnit)时,我应该如何需要这个JWT-令牌?测试是否应通过向Azure AD发送HTTP-POST来向Azure Active Directory请求此令牌,或者是否有更好的方法?

推荐答案

有一个非常好的示例,说明如何在XUNIT中通过以下设置实现这一点:
1.在密钥库中设置密码(用户凭据、应用程序凭据)
2.设置集成测试配置(Key Vault URL、API身份验证
设置,将密钥存储库机密添加到应用程序配置)
3.在Visual Studio/AZ CLI中设置用于密钥保险库身份验证的用户
4.使用仅应用程序调用的客户端凭据对测试中的请求进行身份验证
5.以用户身份使用资源所有者密码凭据对请求进行身份验证

此GitHub回购包含上述方法的代码示例: https://github.com/juunas11/testing-aad-protected-apis

这篇关于与Azure AD登录的集成测试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆