首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为肯塔基州或idprovider添加自定义元数据?

如何为肯塔基州或idprovider添加自定义元数据?
EN

Stack Overflow用户
提问于 2016-11-11 07:28:30
回答 2查看 306关注 0票数 2

我使用Kentor.AuthService.Idp项目作为起点。

启用SAML的服务提供者需要将以下属性作为元数据文件的一部分:

登录-id,伙伴-id,平台,用户-电子邮件

如何将这些添加到现有元数据或创建包含这些元数据的新元数据?

服务提供者的文件特别指出:

属性列表必须包含在元数据文件和生成的断言中。

在元数据中包含这些属性是否满足服务提供者的需求,或者在断言中包含这些属性与将它们包含在元数据?中是完全不同的任务。

EN

回答 2

Stack Overflow用户

发布于 2016-11-15 08:47:01

这是两件不同的事情。

看起来他们希望您指定一个受支持的属性列表,即元数据。System.IdentityModel元数据类由AuthServices支持,但是您必须自己添加它们。

在生成的断言上添加属性是一项不同的任务。您可以通过将它们添加为用于创建断言的标识的声明来做到这一点。

票数 0
EN

Stack Overflow用户

发布于 2016-11-15 19:55:37

基于安德斯的回答,我想出了以下代码。

元数据支持属性

代码语言:javascript
复制
var descriptor = new IdentityProviderSingleSignOnDescriptor();
descriptor.SupportedAttributes.Add(new Saml2Attribute("platform", "desktop"));
descriptor.SupportedAttributes.Add(new Saml2Attribute("partnerid", "partner123"));
descriptor.SupportedAttributes.Add(new Saml2Attribute("login-id", "user9"));
descriptor.SupportedAttributes.Add(new Saml2Attribute("useremail", "donotreply@domain.com"));

生成断言的属性

代码语言:javascript
复制
var claims = new List<Claim>();
claims.Add(new Claim("platform", "desktop"));
claims.Add(new Claim("partnerid", "partner123"));
claims.Add(new Claim("login-id", "user9"));
claims.Add(new Claim("useremail", "noreply@domain.com"));
var identity = new ClaimsIdentity(claims);

我不知道如何在断言中添加声明。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40543136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档