管理ツールの OAuth 認証連携

本節は MailDepot管理ツールを OpenID Connect に対応した認証プロバイダを利用して OAuth 認証を行うための設定手順を記載します。

対応プロバイダ

MailDepot では以下の OpenID Connect 認証プロバイダとの認証連携に対応しています。

認証プロバイダとは、OAuth 2.0 認可プロトコルを利用してユーザの認証を行います。

必要なファイルの配置

MailDepot管理ツールで OAuth 認証を利用するには、以下の設定ファイルの作成が必要となります。

/opt/maildepot3/domain/ドメイン名/etc/oauth.conf

上記の設定ファイルには、下記のパラメタを設定します。

パラメタ名 説明
provider_name 認証プロバイダの名称
authorize_endpoint 認可API のエンドポイント
token_endpoint トークンAPI のエンドポイント
userinfo_endpoint ユーザ情報API のエンドポイント
token_scope scope パラメタの指定
user_attr ログイン名の属性名の指定
client_id クライアントID
client_secret クライアント秘密鍵

上記パラメタの設定値は、認証プロバイダにより異なっており、認証プロバイダに応じた値を設定します。
また、クライアントID とクライアント秘密鍵には認証プロバイダから提供される値を設定します。
認証プロバイダからこれらの値の取得するには、認証プロバイダで OAuth クライアントの登録が必要となります。

KAOauth での設定
パラメタ名 パラメタ値
provider_name KAOauth
authorize_endpoint https://認証ドメイン名/openid/authorize
token_endpoint https://認証ドメイン名/openid/token
userinfo_endpoint https://認証ドメイン名/openid/userinfo
token_scope openid profile
user_attr login_name

KAOauth の管理画面の「OAuth 管理」にて OAuth クライアントの登録を行います。

以下に KAOauth 用の設定例を示します。

provider_name = KAOauth
authorize_endpoint = https://****.auth.kaoauth.com/openid/authorize
token_endpoint = https://****.auth.kaoauth.com/openid/token
userinfo_endpoint = https://****.auth.kaoauth.com/openid/userinfo
token_scope = "openid profile"
user_attr = "login_name"
client_id = "*******"
client_secret = "********"
Microsoft Entre ID の設定
パラメタ名 パラメタ値
provider_name Microsoft
authorize_endpoint https://login.microsoftonline.com/テナントID/oauth2/v2.0/authorize
token_endpoint https://login.microsoftonline.com/テナントID/oauth2/v2.0/token
userinfo_endpoint https://graph.microsoft.com/v1.0/me
token_scope openid email
user_attr mail

Micrsoft Entra 管理センター」の「アプリの登録」にて OAuth クライアントの登録を行います。

以下に Microsoft Entre ID 用の設定例を示します。

provider_name = Azure
authorize_endpoint = https://login.microsoftonline.com/********/oauth2/v2.0/authorize
token_endpoint = https://login.microsoftonline.com/********/oauth2/v2.0/token
userinfo_endpoint = https://graph.microsoft.com/v1.0/me
token_scope = "openid email"
user_attr = "mail"
client_id = "*******"
client_secret = "********"
Google Identify の設定
パラメタ名 パラメタ値
provider_name Google
authorize_endpoint https://accounts.google.com/o/oauth2/auth
token_endpoint https://accounts.google.com/o/oauth2/token
userinfo_endpoint https://www.googleapis.com/oauth2/v1/userinfo
token_scope openid email
user_attr email

Google API Console」の「OAuth同意画面」にて OAuth クライアントの登録を行います。

以下に Google Indentity 用の設定例を示します。

provider_name = Google
authorize_endpoint = https://accounts.google.com/o/oauth2/auth
token_endpoint = https://accounts.google.com/o/oauth2/token
userinfo_endpoint = https://www.googleapis.com/oauth2/v1/userinfo
token_scope = "openid email"
user_attr = "email"
client_id = "*******"
client_secret = "********"

OAuth クライアントの登録

MailDepot管理ツールで OAuth 認証を利用するには、認証プロバイダで OAuth クライアントの登録が必要となります。

認証プロバイダでの登録では、ウェブサイトのリダイレクト URI を登録します。
リダイレクトURI には MailDepot管理ツールの以下の URL を指定します。

HTTPS を有効化していない場合 http://サイト名/ドメイン名/oauth/callback
HTTPS を有効化している場合 https://サイト名/ドメイン名/oauth/callback

サイト名には、MailDepotサーバのホスト名を、ドメイン名には、 MailDepot のインストール時に指定したドメイン名を指定します。

認証プロバイダがリダイレクトURI に HTTP を許可していない場合、 MailDepot管理ツールに対して HTTPS を有効化する必要があります。

アカウントの自動作成

新規ユーザの自動作成設定で、自動作成が有効になっている場合、 OAuth 認証に成功したユーザに対して MailDepot のアカウントを 自動的に作成することができます。

自動作成が無効になっている場合、認証プロバイダが認証した ユーザが MailDepot のユーザとして登録されていないと MailDepot の管理ツールにはログインできません。

OAuth 認証によるログイン

MailDepot管理ツールで OAuth 認証が設定されている場合、 ログイン画面に OAuth 認証のログインボタンが表示されます。