Open7

django-oso 触ってみた

YetAnother_ykYetAnother_yk

今回の要件がマルチテナントかつテナントごとに権限周りを高度に切り替えたいとのこと。
chatGPT に相談した上で別でサーバや外部サービスとの接続が不要で試しやすそうだったので、oso x django (django-oso) を触っていく。

YetAnother_ykYetAnother_yk

比較対象としては OpenFGA や Oso Cloud もあったが別サーバを用意する・外部サービスを利用するランニングコストの確保が難しいと判断して“なし”とした

YetAnother_ykYetAnother_yk

なお、Oso はすでに新規採用は非推奨となっており、今後は Oso Cloud を推しているので注意

YetAnother_ykYetAnother_yk

マルチテナントの都合で docker on apple silicon macOS (feat. vscode DevContainer) で開発環境を構築していたが、対応する oso のビルドが pypi に公開されていないため一筋縄では行かないことが判明
https://github.com/osohq/oso/issues/1529

一旦は Remote - SSH で Linux サーバに接続して開発するフローに変更