メインコンテンツにスキップ

MinIO

MinIOは、OpenID Connect(OIDC)互換プロバイダーを使用した外部アイデンティティ管理をサポートしています。 このドキュメントでは、Casdoorをアイデンティティプロバイダーとして設定し、MinIOをサポートする方法について説明します。

ステップ1: Casdoor & MinIOをデプロイする

まず、Casdoorをデプロイします。

サーバーインストールについてはCasdoor公式ドキュメントを参照してください。

成功したデプロイメントの後、以下を確認してください:

  • Casdoorサーバーがhttp://localhost:8000で実行されている。
  • お気に入りのブラウザを開き、http://localhost:7001にアクセスしてCasdoorのログインページを表示します。
  • admin123を入力してログイン機能をテストします。

次に、これらのステップに従って自分のアプリにCasdoorベースのログインページを迅速に実装できます。

こちらを参照してMinIOサーバーをデプロイし、こちらでMinIOクライアントであるmcについて確認できます。

ステップ2: Casdoorアプリケーションを設定する

  1. 新しいCasdoorアプリケーションを作成するか、既存のものを使用します。

  2. リダイレクトURLを追加します。Casdoorアプリケーション設定

  3. 必要な設定を提供して、使用したいプロバイダーを追加します。

    アプリケーション設定ページでは、Client IDClient secretの2つの値が見つかります(上の画像に示されているように)。 これらの値は次のステップで使用します。

    お気に入りのブラウザを開き、http://CASDOOR_HOSTNAME/.well-known/openid-configurationにアクセスしてCasdoorのOIDC設定を表示します。

  4. このステップはMinIOにとって必要です。 MinIOはJWTのポリシーにクレーム属性を使用する必要があるため、Casdoorでもそれを設定する必要があります。 現在、Casdoorはtagを使用してMinIOのポリシーを設定するためのワークアラウンドとして使用しています。

    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のログインページに正常にアクセスできます。