Enabling OAUTH2 Authentication

pgAdminのOAUTH2認証を有効にするには、pgAdminがサーバーモードでインストールされているシステム上の config_local.py または config_system.py ファイル( config.py ドキュメントを参照)でOAUTH2設定を構成する必要があります。これらの設定を config.py ファイルからコピーし、次のパラメーターの値を変更できます。

Parameter

Description

AUTHENTICATION_SOURCES

このパラメータのデフォルト値は internal です。OAUTH2認証を有効にするには、このパラメーターの値のリストに oauth2 を含める必要があります。次のように値を変更できます。

  • ['oauth2','internal']:pgAdminはoauth2で認証するための追加のボタンを表示します

OAUTH2_NAME

Oauth2プロバイダーの名前、例:Google、Github

OAUTH2_DISPLAY_NAME

pgAdminのOauth2表示名

OAUTH2_CLIENT_ID

Oauth2クライアントID

OAUTH2_CLIENT_SECRET

Oauth2クライアントシークレット

OAUTH2_TOKEN_URL

Oauth2アクセストークンエンドポイント

OAUTH2_AUTHORIZATION_URL

ユーザー認証のエンドポイント

OAUTH2_SERVER_METADATA_URL

OAuth2プロバイダーのサーバーメタデータURL

OAUTH2_API_BASE_URL

リクエストをシンプルにするOauth2ベースURLエンドポイント、例: https://api.github.com/

OAUTH2_USERINFO_ENDPOINT

ユーザーエンドポイント、例: user (githubの場合)および useinfo (googleの場合)

OAUTH2_SCOPE

Oauthスコープ、例:「openidemailprofile」。結果のプロファイルには「email」クレームが必要であることに注意してください。

OAUTH2_ICON

oauth2ボタンに配置されるFont-awesomeアイコン、例:fa-github

OAUTH2_BUTTON_COLOR

Oauth2ボタンの色

OAUTH2_USERNAME_CLAIM

ユーザー名に使用されるクレーム。値が空の場合

電子メールはユーザー名として使用されますが、値が提供されている場合、クレームが存在する必要があります。例: oid (AzureADの場合)

OAUTH2_AUTO_CREATE_USER

自動的に設定したい場合は、値を True に設定します

正常に認証されたOauth2ユーザーに対応するpgAdminユーザーを作成します。パスワードはpgAdminデータベースに保存されないことに注意してください。

リダイレクトURL

Oauth2サーバーを構成するためのリダイレクトURLは http://<pgAdminServerURL>/oauth2/authorize

マスターパスワード

マルチユーザーモードでは、pgAdminはユーザーのログインパスワードを使用して、PostgreSQLサーバーパスワードを暗号化/復号化します。Oauth2認証では、pgAdminはユーザーのパスワードを保存しないため、PostgreSQLサーバーのパスワードを保存するための暗号化キーが必要です。これを行うには、構成パラメーターMASTER_PASSWORDを True に設定します。これにより、マスターパスワードを設定すると、パスワードの保存中に暗号化キーとして使用されます。Falseの場合、サーバーパスワードを保存できません。

ログインページ

構成後、再起動すると、Oauth2ログインボタンがあるログインページが表示されます。

Oauth2ログイン