AD FS と PKCE のシングルサインオン

Active Directory フェデレーションサービス(AD FS)は、ユーザーにシングルサインオン(SSO)認証サービスを提供するソフトウェアコンポーネントです。この機能により、ユーザーは 1 つのアプリケーションでのみ認証を行うだけでサーバー上の複数のアプリケーションにアクセスできます。

たとえば、Lexmark Management Console(LMC)にログインしているユーザーは Lexmark 印刷管理コンソールにアクセスできます。

Proof Key for Code Exchange(PKCE)は、認証コードを要求するアプリケーションに実装される軽量なメカニズムです。LPM と LDD は、Authorization 2.0 の認証コード付与の簡単な拡張機能としてこれをサポートしています。サードパーティーのオープンソースアプリケーションである Keycloak との統合により、PKCE はユーザーが一度認証を行えば、認証情報を再入力することなく複数のアプリケーションにアクセスできるようになります。

メモ:

AD FS サーバーを設定する

LMC の場合、クライアントサーバー型アプリケーションを作成する際に、アプリケーションタイプとして、 Web アプリケーション にアクセスする Web ブラウザを選択します。

以下のものが追加されていることを確認します。

LPM の場合、クライアントサーバー型アプリケーションを作成する際に、アプリケーションタイプとして、[ ネイティブアプリケーション ]または[ Web API にアクセスするネイティブアプリケーション ]を選択します。

以下のものが追加されていることを確認します。

Apache 構成設定を更新する

  1. Windows エクスプローラを開きます。

  2. <LDD-install-path>/Apache2/conf に移動します。

  3. httpd-lpm-csp.conf を編集します。

  4. [Location/printrlease/]ブロックから、二重引用符を閉じる前に次のテキストを追加します( <adfs-server-address> の値を置き換える)。

    frame-ancestors 'self' https://<adfs-server-address>/;

  5. ファイルの最後に次のテキストを追加します( <adfs-server-address> の値を置き換える)。

    <Location ~ "^/lmc/(.*)">

    Header set Content-Security-Policy "frame-ancestors 'self' https://<adfs-server-address>/;"

    </Location>

  6. ファイルを保存します。

  7. Apache2.4 サービスを再起動します。

AD FS ログインを設定する

  1. 印刷管理コンソールの右上隅にある 設定アイコン をクリックします。

  2. ログイン ]をクリックします。

  3. [タイプ]メニューから[ AD FS SSO ]を選択します。

  4. [ログイングループ]テキストフィールドに、印刷管理コンソールへの管理者アクセスまたは権限で提供される Active Directory または LDAP グループの名前を入力します。

    メモ:  ログインするユーザーがログイングループのメンバーである場合、そのユーザーは管理者アクセス権を持っている必要があります。管理者アクセス権を持っていない場合は、ユーザーポータルにリダイレクトされます。
  5. 変更を保存する ]をクリックします。

  6. メモ:  AD FS SSO ログインタイプが有効になっている場合、ユーザーはログアウト後に AD FS ログアウト画面にリダイレクトされます。再度ログインするためには、印刷管理コンソールの URL にアクセスする必要があります。
印刷管理コンソール機能を設定する
  1. 印刷管理コンソールの右上隅にある 設定アイコン をクリックします。

  2. [AD FS]および[LDAP]サーバーの設定を行います。

    AD FS 設定の場合:
    1. AD FS サーバーのアドレスを入力します。

    2. LPM が AD FS サーバーと通信するための SSL 証明書をインポートします。

    3. クライアント ID を入力します。

    4. クライアントの秘密を入力します。

      メモ:  このフィールドは任意です。
    5. クライアントのスコープを入力します。

      メモ:  初期設定値は openid です。
    6. 変更の保存 ]をクリックします。

    LDAP 設定の場合:
    1. 追加 ]をクリックします。

      メモ:  AD FS によって参照される Active Directory である既存の LDAP エントリがない場合は、サーバーの詳細を設定します。
    2. サーバーの詳細を設定します。

      メモ:  LDAP 設定で、AD FS によって参照される Active Directory を追加します。
    3. 変更の保存 ]をクリックします。