Authentication options#
PEMユーザー認証はPostgresバックエンドサーバーに委任されます。特定のユーザー名でPEMにログインできるようにするには、バックエンドにその名前のPostgresユーザーが存在する必要があります。
Webアプリケーションホストからpem
データベースに接続するには、ユーザーがpem_user
ロールを持ち、pg_hba.conf によって許可されている必要があります。
PEMユーザーロールの詳細については、 PEM認証の管理 を参照してください。
デフォルトでは、PEMはユーザーにパスワードを使用した認証を必要とします。オプションで2FAを適用したり、Kerberosを使用したパスワードレス認証を有効にしたりできます。
1.二要素認証2FA#
PEMは2FAをサポートして、標準のログイン資格情報を超えた追加のセキュリティレイヤーを提供します。
config_local.py
ファイルのパラメーターを変更することにより構成できます。
サポートされている方法
電子メール - ワンタイム確認コードをユーザーのメールアドレスに送信します。
Authenticator App - Google AuthenticatorのようなTOTPベースのアプリケーションを使用します。
キー構成
MFA_ENABLED - 機能を有効にするには
trueに設定します。MFA_FORCE_REGISTRATION -
trueの場合、次回ログイン時に2FAに登録する必要があります。メールサーバー
電子メールベースの2FAの場合、PEMはその内部SMTP構成またはFlask-Mailを使用できます。
ドキュメント
2.Kerberos認証#
Kerberosは、SSO環境に安全なチケットベースの認証メカニズムを提供します。この構成は、Kerberosサーバー、PEMサーバー、およびクライアントマシン全体のホスト名とDNS解決に大きく依存しています。
Linuxベースのケルベロス#
この方法には、Kerberos認証サーバーのインストールと、PEM WebアプリケーションHTTPとバックエンドデータベースPostgresの両方のプリンシパルの構成が含まれます。
キータブ - セキュリティキータブはKerberosサーバーから抽出され、PEMサーバーに展開されて、暗号化された通信が促進されます。
認証 - ユーザーは
kinitユーティリティを介してチケットを取得します。 pg_hba.confファイルは、gss Generic Security Service方法を使用するように更新されました。ドキュメント - Configuring Kerberos authentication on Linux 。
Windows Active Directory SSPI#
PEMは、Kerberos認証のためにWindows Active Directoryドメインサービスと統合できます。
サービスマッピング - Active Directoryユーザーは、特にHTTPおよびPostgresサービスプリンシパルに作成され、マッピングされます。
キータブ生成 - Windows
ktpassユーティリティは、 Windowsドメインと対話するLinuxベースのPEMサーバーのキータブを生成するために使用されます。ブラウザ要件 - クライアントブラウザFirefox/Chromeは、SPNEGO / KerberosネゴシエーションのためにPEMサーバーURIを信頼するように構成する必要があります。