MinIO
MinIOは、OpenID Connect(OIDC)互換プロバイダーを使用した外部アイデンティティ管理をサポートしています。 このドキュメントでは、Casdoorをアイデンティティプロバイダーとして設定し、MinIOをサポートする方法について説明します。
ステップ1: Casdoor & MinIOをデプロイする
まず、Casdoorをデプロイします。
サーバーインストールについてはCasdoor公式ドキュメントを参照してください。
成功したデプロイメントの後、以下を確認してください:
- Casdoorサーバーがhttp://localhost:8000で実行されている。
- お気に入りのブラウザを開き、http://localhost:7001にアクセスしてCasdoorのログインページを表示します。
admin
と123
を入力してログイン機能をテストします。
次に、これらのステップに従って自分のアプリにCasdoorベースのログインページを迅速に実装できます。
こちらを参照してMinIOサーバーをデプロイし、こちらでMinIOクライアントであるmc
について確認できます。
ステップ2: Casdoorアプリケーションを設定する
新しいCasdoorアプリケーションを作成するか、既存のものを使用します。
リダイレクトURLを追加します。
必要な設定を提供して、使用したいプロバイダーを追加します。
アプリケーション設定ページでは、
Client ID
とClient secret
の2つの値が見つかります(上の画像に示されているように)。 これらの値は次のステップで使用します。お気に入りのブラウザを開き、http://
CASDOOR_HOSTNAME
/.well-known/openid-configurationにアクセスしてCasdoorのOIDC設定を表示します。このステップはMinIOにとって必要です。 MinIOはJWTのポリシーにクレーム属性を使用する必要があるため、Casdoorでもそれを設定する必要があります。 現在、Casdoorは
tag
を使用してMinIOのポリシーを設定するためのワークアラウンドとして使用しています。サポートされているすべてのポリシーはこちらで見つけることができます。
ステップ3: MinIOを設定する
以下のコマンドを使用してMinIOサーバーを起動できます:
export MINIO_ROOT_USER=minio
export MINIO_ROOT_PASSWORD=minio123
minio server /mnt/export
--console-address
パラメータを使用してアドレスとポートを設定できます。
次に、MinIOクライアントmc
を使用してサービスエイリアスを追加します。
mc alias set myminio <Your console address> minio minio123
今、MinIOのOpenID Connectを設定します。 Casdoorの場合、コマンドは以下になります:
mc admin config set myminio identity_openid config_url="http://CASDOOR_HOSTNAME/.well-known/openid-configuration" client_id=<client id> client_secret=<client secret> claim_name="tag"
より詳細なパラメータについては、公式ドキュメントを参照してください。
正常に設定されたら、MinIOインスタンスを再起動してください。
mc admin service restart myminio
ステップ4: デモを試してみましょう!
今、ブラウザでMinIOコンソールを開き、Login with SSO
をクリックします。
Casdoorユーザーログインページにリダイレクトされます。 ログインに成功すると、自動的にMinIOページにリダイレクトされ、ログインされます。 アクセスできるバケットとオブジェクトが表示されるはずです。
Casdoorのフロントエンドとバックエンドを異なるポートでデプロイする場合、リダイレクトされるログインページはバックエンドポートになり、404 not found
が表示されます。 フロントエンドのポートに変更することができます。 その後、Casdoorのログインページに正常にアクセスできます。