【发布时间】:2016-01-21 05:33:19
【问题描述】:
我们有一个身份提供者用户注册表和一个 SOAP Web 服务,供应用程序读取/写入用户配置文件。现在我们计划添加一个 SCIM 接口。
我们发现核心用户模式涵盖了基本的属性集,但是我们现有的系统对相同的属性有不同的命名约定。
例如,说 USERTELEPHONENUMBER、USERSTREETADDR1 等等。
考虑到大量应用程序已经在使用这种命名约定,我们希望继续使用 SCIM 2.0。
鉴于我们可以扩展核心用户模式,
1) 我们可以选择不使用核心模式中的任何属性吗?如果payload包含这些属性,我们是否可以在服务器端简单地忽略它们,只处理自定义模式属性?
用户文档示例 -
{
"schemas": [ "urn:scim:schemas:core:2.0:User",
urn:scim:schemas:extension:customattrs:2.0:User"],
"id": "2819c223-7f76-453a-919d-413861904646",
"urn:scim:schemas:extension:customattrs:2.0:User": {
"USERFIRSTNAME": "fname",
"USERLASTNAME": "lname",
"USERTELEPHONENUMBER": "1231231234
}
}
2) 我们可以自己定义一个新的资源,定义一个新的核心模式。
这些选项中哪一个是更清洁的方式?
【问题讨论】:
-
我知道这篇文章很久以前就发布过了,但我在为我目前的作业做一些 SCIM 研究时已经越过了它。为什么不创建一个扩展来公开从你的属性到标准属性的映射?