使用SAML进行身份验证

时间:2017-12-18 18:11:54

标签: authentication saml-2.0

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

我看到了此site下面的图片,其中显示了身份验证流程。

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

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

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

enter image description here

1 个答案:

答案 0 :(得分:1)

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

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

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

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