使用SAML进行身份验证

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

我的客户要求我开发一个web api并使用SAML作为身份验证。

我从这个site看到了下面的图片,它显示了身份验证流程。

但是我不知道如何使用身份验证后生成的令牌。

  • 我是否需要将其存储为任何其他会话变量?
  • 我是否需要在一段时间后更新token或在整个会话期间持续?

注意:授权服务器/ idP由其他方维护。

enter image description here

authentication saml-2.0
1个回答
1
投票

由于您自己开发Web API,因此无需刷新令牌。

您需要将API添加为IdP的依赖方。之后,您可以重定向到IdP并启动身份验证。您获得的令牌包含多个属性(也可在IdP上配置),如唯一用户ID(uid),电子邮件,姓名,国家/地区等...

在大多数情况下,此令牌使用公钥/私钥进行签名。您的API服务器需要验证令牌的签名,颁发者(IdP),受众(您的API)并使用这些属性。一切正常后,您需要配置本地用户帐户,链接外部uid并为本地配置的用户帐户创建本地身份验证cookie(如果您的API使用OAUth2或OpenIdConnect,则生成OAuth2令牌)。

由于这是一个复杂的过程,根据您使用的语言/框架,您可能希望查看现有的实现。

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