轻量级SCIM2服务器原型
项目描述
scim2-server
这是一个使用 scim2-models 的示例 WSGI-SCIM 服务器。它利用了 werkzeug 和 scim2-filter-parser,并将所有资源保存在内存中,一旦进程退出,它们就会丢失。
功能
- 发现端点(《/v2/ServiceProviderConfig》,“/v2/ResourceTypes”,“/v2/Schemas”)
- 创建/读取/更新/删除资源(《POST》,“GET”,“PUT”,“DELETE”)
- 搜索 & 过滤
- 支持 ETags
- 唯一约束
- HTTP PATCH(添加/删除/替换)
- 排序
目前缺少的唯一可选功能是支持批量操作(《RFC 7644,第 3.7 节》)。
用法
$ scim2-server [-h] [--schema SCHEMA] [--resource-type RESOURCE_TYPE] [--bearer-token BEARER_TOKEN] [--hostname HOSTNAME] [--port PORT] [--reverse-proxy] [--dump-resources DUMP_RESOURCES]
-h
/--help
:显示帮助信息--reverse-proxy
:允许在反向代理后面使用提供者(需要 URL 重新编写)。--schema
:从指定的 JSON 文件注册模式。如果未提供,则从 RFC 7643 加载默认模式。--resource-type
:从指定的 JSON 文件注册资源类型。如果未提供,则从 RFC 7643 加载默认资源类型。--bearer-token
:注册一个可以用于访问服务的令牌。如果没有提供令牌,则允许匿名访问而不进行身份验证。--hostname
:要监听的域名。默认为127.0.0.1
。--port
:要监听的端口。默认为8080
。--dump-resources
:在提供者正常退出时转储包含所有资源的 JSON 文档。
注意
如果您想实现 SCIM 提供者,则可以使用此提供者作为起点。如果您想将其用于生产,您可能需要更改以下内容
- 使用适当的 WSGI 服务器而不是 Werkzeug 提供的服务器
- 实现自己的后端,作为
scim2_server.backend.Backend
的子类 - 使用 OAuth 实现适当的授权,而不是公共访问或静态令牌
- 如果适用,支持
/Me
端点 - 添加使用静态 URL 前缀的支持或改进在反向代理后面的使用支持
当前状态的提供者已在实时 Microsoft Entra 系统以及实时 Okta 系统上进行测试并成功。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分发
scim2_server-0.1.1.tar.gz (27.3 kB 查看哈希)
构建版本
scim2_server-0.1.1-py3-none-any.whl (29.1 kB 查看哈希值)
关闭
scim2_server-0.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 354968fc21caed0fab2c352ff318157a889d4cdc962d747049c6747482afd10c |
|
MD5 | 4c4f6c5aa389e62a216946c7e4c7983b |
|
BLAKE2b-256 | b35d49467d06d7ffc34cb7922e13126b27d6a1615e4dde496b8590110f3bfc85 |
关闭
scim2_server-0.1.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c00f53fb560cdcf63f46adfcbbab04e6e591577305d9cb6d8476527ee20304f8 |
|
MD5 | 3f63d5c58a84bc90974764f1accb304d |
|
BLAKE2b-256 | d0a94945410d164c48756586479cfc9cc3e3f1d2f695a0dca61459372a2fadfc |