「OAuth 2認証」の版間の差分
Toshihiro KITA (トーク | 投稿記録) |
Toshihiro KITA (トーク | 投稿記録) |
||
53行目: | 53行目: | ||
=== GoogleとFacebookの/admin/tool/oauth2/issuers.phpページにすべて緑色のチェックマークがありますが、サーバのログインページにボタンが表示されません=== | === GoogleとFacebookの/admin/tool/oauth2/issuers.phpページにすべて緑色のチェックマークがありますが、サーバのログインページにボタンが表示されません=== | ||
(おそらくセキュリティ上の理由から)Moodle 3.4の新規インストールで、OAuth 2のプラグイン設定が無効な状態であることが発見されました。サイト管理 > プラグイン > 認証 > 認証管理(/admin/settings.php?section= | (おそらくセキュリティ上の理由から)Moodle 3.4の新規インストールで、OAuth 2のプラグイン設定が無効な状態であることが発見されました。サイト管理 > プラグイン > 認証 > 認証管理(/admin/settings.php?section=manageauths)のページに移動し、OAuth 2のレコードを有効にしてから、オプションでそのレコードの設定を微調整します。 | ||
[[カテゴリ:OAuth 2]] | [[カテゴリ:OAuth 2]] |
2021年11月12日 (金) 05:41時点における版
別のサイトのアカウントを使用してログイン
OAuth 2認証プラグインを使用すると、ユーザはログインページのボタンからGoogle、Microsoft、Facebookのアカウントを使用してログインできます。
アカウントの作成が有効になっている場合、ユーザが初めてログインすると、新しいアカウントが作成されます。それ以外の場合は、同じメールアドレスで既存のアカウントにリンクするように求められます。
OAuth 2認証を有効にする
OAuth 2認証を使用するには、管理者は最初に必要なOAuth 2サービスを作成する必要があります。
- サイト管理 > サーバの 'OAuth 2サービス' に移動し、ボタンをクリックして新しいサービスを作成します。
- OAuth 2 Googleサービス、OAuth 2 Microsoftサービス、またはOAuth 2 Facebookサービスの指示に従って、クライアントIDと秘密鍵を取得します。
- クライアントIDと秘密鍵を入力し、'ログインページに表示する' がチェックされていることを確認して、変更を保存します。
必要に応じて、'メール確認を必要とする' チェックボックスをオフにすると、確認メールが送信されません。これは、ドメインにGoogleを使用している教育機関に役立ちます。 Google OAuthプロバイダは、そのドメインに対して信頼されていると見なすことができます。
必要に応じて、追加のサービスについて繰り返します。 OAuth 2認証の場合、システムアカウントに接続する必要はありません。
次に:
- サイト管理の '認証管理' に移動し、OAuth 2認証プラグインを有効にします。
- オプション: OAuth 2設定で、選択したユーザデータフィールドをロックし、変更を保存します。
新しいアカウントの作成を防止する
ユーザがOAuth 2サービスでログインするときに新しいアカウントを作成したくない場合:
- サイト管理の '認証管理' に移動し、'ユーザ認証時のアカウント作成を抑制する'(authpreventaccountcreation)ボックスにチェックを入れます。
- '変更を保存する' ボタンをクリックします。
トラブルシューティング
'OAuth 2サービス' ページに、'ログインを許可' の赤い十字があります
ログインを許可するための緑色のチェックマークを取得するには、OAuth 2サービスを編集し、'ログインページに表示する' の設定がチェックされていることを確認します。
OAuth 2認証を有効にした後、コーディングエラーが発生します
サイトにインストールされている以前のバージョンのOAuth 2プラグインはありますか?その場合、標準のOAuth 2認証を使用するには、プラグインのアンインストールが必要です。
Facebookを使用してログインしようとすると、エラーメッセージが表示されます
エラーメッセージ '返されたユーザ情報に、ユーザ名とメールアドレスが含まれていませんでした。 OAuth 2サービスが正しく設定されていない可能性があります。' というメッセージは、ユーザのFacebookアカウントが携帯電話の番号を使って作成されたものである可能性が高いです。
解決策は、ユーザが最初にFacebookにログインし、そこにユーザ名とメールアドレスを追加することです。
OAuth 2サービスにログインした後、"必要なパラメータ(コード)がありませんでした" というエラーが表示されます
'必要なパラメータ(コード)がありませんでした' というエラーメッセージは、ウェブサーバの設定ミスが原因の場合があります。OAuth 2 は url パラメータとして渡される長いトークンに依存しており、ウェブサーバの設定によってはこれが機能しない場合があります。
GoogleとFacebookの/admin/tool/oauth2/issuers.phpページにすべて緑色のチェックマークがありますが、サーバのログインページにボタンが表示されません
(おそらくセキュリティ上の理由から)Moodle 3.4の新規インストールで、OAuth 2のプラグイン設定が無効な状態であることが発見されました。サイト管理 > プラグイン > 認証 > 認証管理(/admin/settings.php?section=manageauths)のページに移動し、OAuth 2のレコードを有効にしてから、オプションでそのレコードの設定を微調整します。