SSO 在我使用 ITFoxtec 的应用程序中运行良好。我的应用程序的一个新要求是还要检查 Identity.User 表中的用户(.Net6 中的 Identity)。如果用户不在用户表中或者用户已在表中标记为已删除用户,即使 ADFS 返回成功的身份验证结果,我也想拒绝用户访问应用程序。请问这个如何实现呢?谢谢
我正在考虑在 AssertionConsumerService 中添加额外的步骤,在 saml2AuthnResponse.CreateSession 发生之前考虑它。
要实现此目的,您可以按照以下步骤操作:
在AssertionConsumerService方法中,调用SAML2AuthnResponse.CreateSession方法后,可以从Identity.User表中检索用户的信息。
检查Identity.User表中是否存在该用户,以及该用户是否未被标记为已删除。
如果用户不存在或被标记为已删除,您可以通过抛出异常或返回错误消息来拒绝对应用程序的访问。