今回は、Azure AD を使用して、CData Sync にシングルサインオン認証でログインできるようにする方法をご紹介します。
1.シングルサインオン (SSO) とは
シングルサインオン (SSO) は、一度ログインするだけで、複数のサービスにログインして利用できる仕組みです。
利便性が向上するだけでなく、複数のアカウントを管理しなくて済むことで、セキュリティを向上させることができます。
2.用意するもの
証明書(*.cer)
OpenSSL 等を使用して生成する方法以外に、Azure AD でも生成することができます。
チュートリアル: フェデレーション証明書の管理 - Microsoft Entra | Microsoft Learn
3.CData Sync のSSO 認証設定(Azure AD の場合)
設定項目の一覧は以下の通りです。
・Azure AD 側の設定
1) Azure ポータル-アプリの登録-新規登録
2) 証明書とシークレットのクライアントシークレットでOAuthClientSecret を発行
3) 証明書とシークレットの証明書にSync の証明書をアップロード
4) リダイレクトURI にSyncのシングルサインオン(SSO) 設定ページにあるコールバックURL を追加
5) API のアクセス許可でopenid を追加
・Sync 側の設定
オーディエンスURI:Azure AD アプリのアプリケーション(クライアント)ID
Key Claim:oid (SyncユーザーのフェデレーションIdと突き合わせる項目)
oid はAzure AD ユーザーのオブジェクトID
OAuth クライアントID:Azure AD アプリのアプリケーション(クライアント)ID
OAuth クライアントシークレット:Azure AD アプリの証明書とシークレットで発行したシークレットの値
URL をインポート:Azure AD アプリ概要ページのエンドポイントにある、OpenID Connect メタデータ ドキュメントURL を指定してインポートをクリックすると、Azure AD から設定をインポートできます。
発行者証明書:証明書アップロード
デフォルトスコープ: openid profile
トークン発行者識別子:https://login.microsoftonline.com/<ディレクトリ(テナント)ID>/v2.0
トークンURL:https://login.microsoftonline.com/<ディレクトリ(テナント)ID>/oauth2/v2.0/token
ログオフURL:https://login.microsoftonline.com/<ディレクトリ(テナント)ID>/oauth2/v2.0/logout
3.1.Azure AD でアプリを登録する
Azure AD のアプリの登録画面で、「新規登録」をクリックします。
名前を入力し、「登録」をクリックします。
3.2.クライアントシークレットを追加する
証明書とシークレットのクライアントシークレットで、「新しいクライアントシークレット」をクリックし、「追加」をクリックします。
表示された値脇のコピーをクリックして、クライアントシークレットの値を控えます。
3.3.証明書をアップロードする
「証明書のアップロード」をクリックし、証明書を選択して、「追加」をクリックします。
3.4.API のアクセス許可を設定する
API のアクセス許可で、「アクセス許可の追加」をクリックし、openid を追加します。
認証で、「プラットフォームを追加」をクリックし、Web を選択し、CData Sync のシングルサインオン (SSO) 設定画面の「コールバックURL」を追加します。
概要の「エンドポイント」をクリックし、設定に必要なエンドポイントを確認します。
3.5.CData Sync のシングルサインオン(SSO) 設定画面で設定を行う
CData Sync に必要な設定を入力します。
「URLをインポート」項目にOpenID Connect メタデータ ドキュメントURL を指定し、「インポート」をクリックするとURLの設定などをAzure AD からインポートすることができます。
設定が完了したら保存をクリックします。
この時点では、まだ設定が完了していないため「接続テスト」を行うことはできません。
3.6.ユーザーにフェデレーションId を設定する
設定画面でユーザータブでユーザーの編集画面を開き、「フェデレーションId」項目にAzure AD でのユーザーを識別する値を指定します。
この項目で指定する値がどの項目になるかは、Key Claim によって決まります。
oid を指定した場合、Azure AD のユーザーの「オブジェクト ID」を指定します。
これで、設定が完了しました。
最後に接続テストを行って、実際に認証が行えることを確認します。
3.7.「接続テスト」を行い、認証が行えることを確認する
「接続テスト」をクリックすると、Microsoft のログイン画面が表示されるので、先ほどフェデレーションId で紐づけたユーザーでログインを行います。
設定完了後の画面はこのようになります。
4.実際にシングルサインオン(SSO) 認証でCData Sync にログインしてみる
ログアウトを行い、ログイン画面を表示されると、「シングルサインオン」項目が選択できるようになります。
「シングルサインオン」をクリックすると、Microsoftのログイン画面が表示されるので、フェデレーションId で紐づけたユーザーでログインを行うと、CData Sync にログインすることができます。
5.まとめ
シングルサインオン(SSO) 認証は複数のサービスを跨ぐため、初めて設定する際はハードルが高く感じるかもしれません。
しかし、一度設定できてしまえば、認証を一元管理することができるようになり、セキュリティを向上させながら、運用の負担を減らすことができます。
CData Sync を複数のユーザーで使用する場合は、シングルサインオン(SSO) 認証の利用を検討してみてはいかがでしょうか
関連コンテンツ