SCIM 2.0
最后更新于
最后更新于
跨域身份管理(System for Cross-domain Identity Management,SCIM)主要用于多租户的云应用身份管理。
SCIM 2.0建立在一个对象模型上,所有SCIM对象都继承资源,它有id、externalid和meta属性。RFC7643定义了扩展公共属性的用户、用户组和企业用户。SCIM的协议框架如图所示。
对于资源的操作,SCIM提供了一套RESTful API,包含丰富但简单的操作集,支持从修改特定用户的特定属性到进行批量更新的所有操作,如表所示。
表 SCIM的RESTful API操作集
创建用户
POST
POST /Users
获取用户
GET
GET /Users/{id}
更新用户
PUT
PUT /Users/{id}
删除用户
DELETE
DELETE /Users/{id}
搜索用户
GET
GET /Users?filter=userName eq "john.doe@example.com"
列出所有用户
GET
GET /Users
创建组
POST
POST /Groups
获取组
GET
GET /Groups/{id}
更新组
PUT
PUT /Groups/{id}
删除组
DELETE
DELETE /Groups/{id}
搜索组
GET
GET /Groups?filter=displayName eq "Developers"
列出所有组
GET
GET /Groups
获取用户组成员
GET
GET /Users/{id}/Groups
获取组成员列表
GET
GET /Groups/{id}/Members
添加用户到组
POST
POST /Groups/{id}/Members
从组中移除用户
DELETE
DELETE /Groups/{id}/Members/{userId}
SCIM 2.0于2015年9月在IETF下发布,主要包含三个RFC标准,即RFC7642、RFC7643和RFC7644。
RFC7642标准:SCIM的定义、概述、概念和要求(Definitions,Overview,Concepts,and Requirements),并列出了跨域身份管理系统的用户场景和使用案例。
RFC7643标准:SCIM的核心模式(Core Schema),定义了SCIM平台基础架构(用户和用户组)和扩展模型。
RFC7644标准:SCIM的协议(Protocol),用于在网页上提供和管理身份数据的应用级REST协议。