我将php中的Symfony与此捆绑包一起使用:https://github.com/hslavich/OneloginSamlBundle
使用onelogin php saml工具包:https://github.com/onelogin/php-saml
身份验证时我的IDP返回需要从oid映射到友好名称的属性
<saml:AttributeStatement>
<saml:Attribute Name="urn:oid:0.9.2342.19200300.100.1.1"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml:AttributeValue xsi:type="xs:string">58690</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute Name="urn:oid:1.2.840.113549.1.9.1"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml:AttributeValue xsi:type="xs:string">mytestemail@gmail.com</saml:AttributeValue>
</saml:AttributeStatement>
如果我在symfony bundles配置中使用oid名称,并且没有友好的名称,那么这很好用。但是,我确实希望将这些映射到uid和电子邮件。我使用了simplesamlphp,它作为类提供用于映射这些值,但在onelogin php saml中没有找到类似的值,因此我认为需要手动映射它们。
我想我需要提供一个属性消费者服务,但这并没有改变任何事情
## ...
sp:
entityId: 'http://test.local/saml/metadata'
assertionConsumerService:
url: 'http://test.local/saml/acs'
binding: 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST'
attributeConsumingService:
serviceName: 'SP test'
serviceDescription: 'Test Service'
requestedAttributes:
- name: 'urn:oid:0.9.2342.19200300.100.1.1'
isRequired: true
friendlyName: 'uid'
- name: 'urn:oid:1.2.840.113549.1.9.1'
isRequired: true
friendlyName: 'email'
## etc...
有人知道如何在onelogin/插件中做到这一点吗?我是否至少在onelogin方面走对了轨道?
我发现onelogin中引用的友好名称指的是IDP返回的属性中的一个可能字段,您可以选择使用该字段。
我的IDP不会这样做,所以要映射属性就得由我来完成。
将id映射到/从ldap名称映射是Simple esamlphp的一个特性。
onelogin中没有提供属性映射,但当然可以在您自己的代码中完成。
本文向大家介绍.NET Framework 行为:将数组名称映射到属性(XmlArray),包括了.NET Framework 行为:将数组名称映射到属性(XmlArray)的使用技巧和注意事项,需要的朋友参考一下 示例
问题内容: 我有以下从外部方收到的JSON字符串。 我的映射类: 现在的问题是,我不喜欢的 类名 和 字段名 的类。相反,我希望它被命名,并且还希望从字段名称中删除并提供适当的名称。 我可以重命名为,但是如果我更改了字段名(在类中),它将无法正确地反序列化并提供给我。我该如何克服呢? 问题答案: Json.NET具有允许您指定JSON属性名称的名称,因此您的代码应为: 文档: 序列化属性
问题内容: 在我的项目中,我使用Entity Framework6。我有以下实体: 和 当我插入一个填充了PersonRights的人员对象时,它在数据库中看起来像这样: 人员实体表: PersonRights实体表 当我从数据库加载人时,它没有填充PersonRights属性,这是因为virtual关键字具有延迟加载功能-可以。 然后我得到了person对象的PersonRights,它也可以正
带有Spring-Data的JPA对名称中带有下划线“_”的属性有问题吗?这是我扩展的接口: 这一行:<code>findByA_my_table_id(长头id) 给出此错误: 无效的派生查询!没有为类型 MyClass 找到属性“a”! 如果我将方法命名为< code > public my class find bya _ my _ table _ id(Long header id);它给
名称映射规则 跟名称相关的函数包含在 xorm.io/xorm/names 下。名称映射规则主要负责结构体名称到表名和结构体 field 到表字段的名称映射。由 names.Mapper 接口的实现者来管理,xorm 内置了三种 Mapper 实现:names.SnakeMapper , names.SameMapper和names.GonicMapper。 SnakeMapper 支持struc
问题内容: Jackson json注释中以下jax-b注释的等效方式是什么? 我需要生成json而不是xml,并且需要了解在jax-b中等效表示的常规jackson批注。 重命名字段。 使用getter代替字段。 如果json / xml元素名称是Java保留字(例如“ ”,“ ”,“ ”等),则这些功能尤其重要。 因此我们必须将POJO字段分别命名为“ new ”,“ _ public ”,“