OAuth2

OAuth2認証はconfig/authentication.yamlで設定されます。Chamiloには、Azure AD、Keycloak、Facebook、および任意の汎用的なOAuth2準拠プロバイダーに対する組み込みサポートが含まれています。

ステップ1 — アイデンティティプロバイダーにChamiloを登録する

プロバイダーの管理パネルでアプリケーションを作成し、リダイレクトURIを以下のように設定してください:

https://your-chamilo-url/connect/<provider>/check

ここで<provider>azurekeycloakfacebook、または汎用プロバイダーに付けた名前です。クライアントIDクライアントシークレットをメモしておいてください。

ステップ2 — authentication.yamlを設定する

プロバイダーを有効にし、その認証情報を提供します。すべてのプロバイダーは以下の共通キーを共有しています:

キー
説明

enabled

trueで有効化

title

ログインボタンに表示されるラベル

client_id

アイデンティティプロバイダーから取得

client_secret

アイデンティティプロバイダーから取得

allow_create_new_users

初回ログイン時にChamiloアカウントを自動作成

allow_update_user_info

ログインごとにユーザーデータを同期

force_as_login_method

他の方法を無効化し、この方法を強制

Azure AD (Microsoft Entra ID)

authentication:
  1:
    oauth2:
      azure:
        enabled: true
        title: "Microsoftでサインイン"
        client_id: "<application-client-id>"
        client_secret: "<client-secret>"
        tenant: "<tenant-id>"
        url_login: "https://login.microsoftonline.com"
        path_authorize: "/<tenant-id>/oauth2/v2.0/authorize"
        path_token: "/<tenant-id>/oauth2/v2.0/token"
        url_api: "https://graph.microsoft.com"
        allow_create_new_users: true
        allow_update_user_info: true

Azureは、グループベースのロールマッピング(AzureグループIDをChamiloの教師や管理者などのロールにマッピング)、ユーザーデルタ同期コマンド、クライアントシークレットの代わりに証明書認証もサポートしています。これらのオプションについては、wikiを参照してください。

Keycloak

Facebook

汎用OAuth2

Google、GitLab、またはその他のOAuth2準拠プロバイダーに使用します:

フィールドマッピング(プロバイダーの属性をChamiloのfirstnamelastnameemailなどにマッピングする方法)やロールマッピングも設定可能です。マッピングキーの完全なリストについては、wikiを参照してください。

ステップ3 — キャッシュをクリアしてテストする

Chamiloからログアウトします。設定したプロバイダーのボタンがログインページに表示されるはずです。すべてのユーザーに展開する前に、専用のアカウントでテストしてください。

ヒント

  • OAuth2に問題が発生した場合に管理者が常にログインできるように、標準のログインフォームを有効にしておいてください。

  • 既存のユーザーとAzureを使用する場合、existing_user_verification_orderを設定して、Chamiloが受信したユーザーを既存のアカウントにどのようにマッチングするかを制御します。

  • ロールの割り当てはデフォルトで学生になっています。グループマッピングを使用して、ユーザーを教師や管理者ロールに自動的に昇格させることができます。

最終更新

役に立ちましたか?