コンテンツにスキップ

管理API 概要

はじめに

Authrim 管理APIは、テナント管理者やシステム管理者がAuthrimプラットフォームをプログラマティックに管理するためのRESTful APIです。このAPIを使用することで、以下のような管理操作を自動化できます:

  • Admin ユーザー管理(管理コンソールアクセスユーザー)
  • EndUser管理(アプリケーションユーザー)
  • クライアントアプリケーション管理
  • セッション管理
  • 組織・ロール管理(RBAC)
  • 属性ベースアクセス制御(ABAC)
  • 関係ベースアクセス制御(ReBAC)
  • ポリシー管理
  • 認証フロー管理
  • 監査ログ・コンプライアンス
  • セキュリティアラート
  • 統計・分析

ベースURL

https://{tenant-domain}/api/admin

データベースアーキテクチャ

Authrimはセキュリティ強化のため、分離されたデータベースアーキテクチャを採用しています:

データベース説明対象ユーザー
DB_ADMIN管理者データベース管理コンソールにアクセスするAdminユーザー
DB_COREコアデータベースアプリケーションを利用するEndUser

この分離により:

  • Admin認証情報がEndUserデータから隔離される
  • EndUserデータが侵害されてもAdmin アクセスに影響しない
  • セキュリティベストプラクティスへの準拠

主要な機能カテゴリ

Admin管理

管理コンソールにアクセスするAdminユーザーを管理するAPI。データはDB_ADMINに保存されます。

カテゴリ説明
Adminユーザー管理AdminユーザーのCRUD操作
Adminロール管理Adminロールの定義と割り当て
IPアローリストIPアドレスによるアクセス制御
Admin監査ログAdmin操作の監査ログ

EndUser管理

アプリケーションを利用するEndUserを管理するAPI。データはDB_COREに保存されます。

カテゴリ説明
EndUser管理EndUserのCRUD操作、停止、ロック、匿名化
セッション管理アクティブセッションの一覧、失効、強制ログアウト
外部プロバイダー外部IDプロバイダー(OAuth/OIDC)の管理

EndUserアクセス制御

カテゴリ説明
組織管理組織のCRUD操作、メンバー管理、階層構造
ロール管理ロールの定義、EndUserへの割り当て
ABAC属性ベースアクセス制御、ユーザー属性管理
ReBAC関係ベースアクセス制御(Zanzibar DSL)
ポリシー管理ポリシールールの定義、シミュレーション

アプリケーション管理

カテゴリ説明
クライアント管理OAuthクライアントのCRUD操作、シークレット再生成
フロー管理認証フローの定義、検証、コンパイル
Webhook管理Webhookエンドポイントの設定、テスト
プラグイン管理プラグインの有効化、設定

セキュリティ・監査

カテゴリ説明
EndUser監査ログEndUser監査ログの検索、エクスポート
アクセストレース権限チェックの監査ログ、統計
コンプライアンスコンプライアンス状態、アクセスレビュー

設定・運用

カテゴリ説明
設定管理テナント設定、機能フラグ
トークン・認証情報署名キー、SCIMトークン、IAT
ジョブ管理非同期ジョブ(インポート、エクスポート、レポート)

APIの特徴

RESTful設計

管理APIはRESTfulな設計原則に従っています:

  • リソースはURLで識別されます
  • HTTPメソッドで操作を表現します(GET, POST, PUT, DELETE)
  • JSONフォーマットでデータを交換します

テナント分離

すべてのAPI操作はテナントスコープ内で実行されます。リクエストは認証トークンに基づいて適切なテナントにルーティングされ、データは厳密に分離されます。

PII分離アーキテクチャ

個人識別情報(PII)はコアデータベースとは別のPIIデータベースに保存されます。これにより、データ保護規制への準拠が容易になります。

カーソルベースページネーション

リスト系APIはカーソルベースのページネーションを採用しています。これにより、大量のデータを効率的に取得できます。

次のステップ