https://github.com/ivixvi/scim-patch
Go implementation of SCIM 2.0 Patch operations.
https://github.com/ivixvi/scim-patch
patch scim
Last synced: 7 months ago
JSON representation
Go implementation of SCIM 2.0 Patch operations.
- Host: GitHub
- URL: https://github.com/ivixvi/scim-patch
- Owner: ivixvi
- License: mit
- Created: 2024-07-06T22:48:15.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-12T12:49:57.000Z (11 months ago)
- Last Synced: 2025-04-13T23:38:56.680Z (9 months ago)
- Topics: patch, scim
- Language: Go
- Homepage: https://pkg.go.dev/github.com/ivixvi/scim-patch
- Size: 117 KB
- Stars: 3
- Watchers: 2
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README-ja.md
- License: LICENSE
Awesome Lists containing this project
README
# scim-patch
[](https://pkg.go.dev/github.com/ivixvi/scim-patch)
SCIM2.0 Patch 操作のGo言語実装です
> [!CAUTION]
> 安定していないため、本番利用できる状態ではありません。
# 概要
SCIM2.0のPatch操作の仕様の幅が広く、また、IdP毎の差異を吸収するのも大変です。
そこで、本ライブラリが「Patchによるスキーマの操作」を一通り吸収します。
直接アプリケーションのデータを操作しないため、総合的な処理やデータストアは冗長になると考えられます。
しかし、その代わりにSCIMのスキーマとアプリケーションで利用しているスキーマ間のマッピングを考えるだけでよくなり、密結合を下げる助けになります。
また、本ライブラリはSchemaやfilterの扱いのため、以下のSCIM関連実装に依存しています。
- https://github.com/elimity-com/scim
- https://github.com/scim2/filter-parser
## 想定される使用例
構想としては以下のIssueが近く、この例のような形で実装できることを期待しています。
https://github.com/elimity-com/scim/issues/171
現在の実装における利用例は [example](./_example/README-ja.md) をご確認ください。
### ロガー
Patcherの内部処理のロギングはロガーをコンテキストを経由して渡すことで可能です。
PatcherLoggerインターフェイスを実装したロガーを利用することができます。
具体的な利用例は [example](./_example/README-ja.md) をご確認ください。