ameos / ameos_scim
TYPO3 的 SCIM 扩展
Requires
- php: ^8.0
- tmilos/scim-filter-parser: ^1.3
- typo3/cms-core: ^12.4 | dev-master
Requires (Dev)
- typo3/testing-framework: ^8.0
Replaces
- typo3-ter/scim: 1.0.4
README
概述
本 TYPO3 扩展实现了跨域身份管理系统(SCIM)标准。SCIM 通过在各种平台上提供管理用户身份的一致方式,旨在简化基于云的应用和服务中的用户管理。
功能
- 用户配置:自动化用户账户的创建、更新和删除。
- 群组管理:管理用户群组和成员资格。
- 模式合规性:完全符合 SCIM 2.0 规范。
- 可扩展性:易于扩展和定制以满足特定需求。
- 安全性:实施强大的安全措施以保护用户数据。
要求
TYPO3 v12 或更高版本 PHP 8.0 或更高版本
安装
使用 Composer
将扩展添加到您的 TYPO3 项目
composer require ameos/scim
手动安装
下载扩展。
在 TYPO3 扩展管理器中激活扩展。
配置
添加访问权限
在根页面创建 scim 访问记录并复制密钥。此密钥可以用作提供者配置中的 Bearer。
TypoScript 设置
导航到 TYPO3 后端,并转到模板模块。
选择您的根页面,并单击编辑整个模板记录。
添加静态模板 SCIM 配置。
使用包含前端用户的存储文件夹的 ID 编辑插件.tx_ameosscim.pid 常量。
扩展设置
您可以在扩展设置中激活或停用 SCIM(后端或前端)并配置 api 路径。
映射配置
扩展自带预配置的映射
您可以通过在您的 sitepackage ext_localconf.php 文件中指定 Yaml 文件的路径来修改此映射。
Configuration::registerConfiguration('EXT:sitepackage/Configuration/Scim/Configuration.yaml');
在配置/映射/Configuration.yaml 中查看默认映射
使用
API 端点
用户端点
GET /Users: Retrieve all users.
GET /Users/{id}: Retrieve a specific user by ID.
POST /Users: Create a new user.
PUT /Users/{id}: Replace an existing user.
PATCH /Users/{id}: Update an existing user.
DELETE /Users/{id}: Delete a user.
组端点
GET /Groups: Retrieve all groups.
GET /Groups/{id}: Retrieve a specific group by ID.
POST /Groups: Create a new group.
PUT /Groups/{id}: Replace an existing group.
PATCH /Groups/{id}: Update an existing group.
DELETE /Groups/{id}: Delete a group.
其他端点
POST /Bulk: Bulk operations
示例请求
创建用户
curl -X POST https://example.com/scim/v2/Users \
-H "Authorization: Bearer your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"userName": "jdoe",
"name": {
"givenName": "John",
"familyName": "Doe"
},
"emails": [
{
"value": "jdoe@example.com",
"primary": true
}
]
}'
检索用户
curl -X GET https://example.com/scim/v2/Users/{id} \
-H "Authorization: Bearer your_api_key_here"
日志记录
日志记录连接到 scim 通道
有关配置的信息,请参阅 TYPO3 配置:https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ApiOverview/Logging/Index.html
扩展扩展
要扩展此扩展的功能,您可以
- 使用事件。
- 扩展映射配置。
- 扩展扩展类。
有关详细信息,请参阅 TYPO3 扩展开发文档。
支持
有关支持,请在 GitHub 存储库中打开问题或通过 typo3dev@ameos.com 联系我们。
贡献
我们欢迎对该项目的贡献。请按照以下步骤进行贡献
- 在 GitHub 上叉取存储库。
- 创建功能分支(git checkout -b feature * your-feature)。
- 提交您的更改(git commit -am 'Add your feature')。
- 推送到分支(git push origin feature/your-feature)。
- 创建新的拉取请求。
许可证
本项目采用 MIT 许可证。有关更多详细信息,请参阅 LICENSE 文件。
感谢您使用我们的 TYPO3 SCIM 扩展。我们希望它能简化您的用户管理并提高您的生产力。