2.5. RH SSO 7.2
RH-SSO 7.1 から RH-SSO 7.2 に以下の変更が加えられました。
2.5.1. 新しいパスワードハッシュアルゴリズム
パスワードハッシュアルゴリズムを新たに追加しました (pbkdf2-sha256 および pbkdf2-sha512)。新しいレルムは、27500 ハッシュの反復で pbkdf2-sha256 ハッシュアルゴリズムを使用します。pbkdf2-sha256 は pbkdf2 よりも若干高速であるため、反復は 20000 から 27500 に増加しました。
パスワードポリシーにハッシュアルゴリズム (未指定) および反復 (20000) のデフォルト値が含まれる場合は、既存のレルムがアップグレードされます。ハッシュの反復を変更した場合は、よりセキュアなハッシュアルゴリズムを使用する場合は pbkdf2-sha256 を手動で変更する必要があります。
2.5.2. ID トークンには scope=openid が必要です。
RH-SSO 7.0 では、認可要求に scope=openid
クエリーパラメーターが存在するかどうかに関わらず ID トークンが返されました。これは、OpenID Connect の仕様に従って正しくありません。
RH-SSO 7.1 では、このクエリーパラメーターをアダプターに追加しましたが、以前の動作を維持し、移行に対応しました。
RH-SSO 7.2 では、この動作が変更され、要求を OpenID Connect 要求としてマークするために scope=openid
クエリーパラメーターが必要になりました。このクエリーパラメーターを省略すると、ID トークンは生成されません。
2.5.3. Microsoft SQL Server には追加の依存関係が必要
Microsoft JDBC Driver 6.0 では、JDBC ドライバーモジュールに追加の依存関係を追加する必要があります。Microsoft SQL Server の使用時に NoClassDefFoundError
エラーが発生した場合は、以下の依存関係を JDBC ドライバーの module.xml
ファイルに追加します。
<module name="javax.xml.bind.api"/>
2.5.4. OpenID Connect Authentication Response に session_state パラメーターを追加
OpenID Connect Session Management 仕様では、session_state
パラメーターが OpenID Connect Authentication Response に存在する必要があります。
RH-SSO 7.1 ではこのパラメーターはありませんでしたが、仕様で要求されているように、Red Hat Single Sign-On はデフォルトでこのパラメーターを追加します。
ただし、OpenID Connect/OAuth2 アダプター、特に古い Red Hat Single Sign-On アダプター (RH-SSO 7.1 以前など) には、この新しいパラメーターで問題が発生する可能性があります。
たとえば、クライアントアプリケーションへの認証に成功すると、パラメーターは常にブラウザー URL に表示されます。RH-SSO 7.1、もしくはレガシー OAuth2 または OpenID Connect アダプターを使用する場合は、認証応答への session_state
パラメーターの追加を無効にすると役に立つ場合があります。これは、「古いアダプターとの互換性」 で説明されているとおり、Red Hat Single Sign-On 管理コンソールで、OpenID Connect Compatibility Modes
を含むセクション内のクライアントの詳細で特定のクライアントに対して行うことができます。Exclude Session State From Authentication Response
スイッチがあり、これをオンにすると、認証応答に session_state
パラメーターが追加されないようにすることができます。
2.5.5. Microsoft Identity Provider が Microsoft Graph API を使用するように更新
バージョン 7.2.4 までの Red Hat Single Sign-On での Microsoft Identity Provider の実装は、認可とユーザープロファイルの取得を Live SDK エンドポイントに依存しています。2018 年 11 月以降、Microsoft は新しい Microsoft Graph API を優先して、ライブ SDK API のサポートを削除しています。Red Hat Single Sign-On ID プロバイダーが新しいエンドポイントを使用するように更新されました。そのため、この統合が使用されている場合は、Red Hat Single Sign-On バージョン 7.2.5 以降にアップグレードしてください。
アプリケーションの ID 形式の変更により、Live SDK applications で登録されたレガシークライアントアプリケーションは Microsoft Graph エンドポイントでは動作しません。アプリケーション識別子がディレクトリーで見つからないというエラーが発生した場合は、新しいアプリケーション ID を取得するために、Microsoft Application Registration ポータルでクライアントアプリケーションを再度登録する必要があります。
2.5.6. Google ID プロバイダーが Google Sign-in 認証システムを使用するように更新されました。
バージョン 7.2.5 までの Red Hat Single Sign-On での Google Identity Provider の実装は、認可とユーザープロファイルの取得を Google+ API エンドポイントに依存しています。2019 年 3 月以降、Google は新しい Google サインイン認証システムを優先し、Google+ API のサポートは修了しています。Red Hat Single Sign-On ID プロバイダーが新しいエンドポイントを使用するように更新されました。そのため、この統合が使用されている場合は、Red Hat Single Sign-On バージョン 7.2.6 以降にアップグレードしてください。
アプリケーション ID がディレクトリーで見つからないというエラーが発生した場合は、クライアントアプリケーションを Google API Console ポータルに登録し、新規アプリケーション ID およびシークレットを取得する必要があります。
Google+ ユーザー情報エンドポイントで提供される標準以外の要求のカスタムマッパーを調整し、Google Sign-in API によって異なる名前に基づいて提供されることがあります。利用可能な要求に関する最新情報は、Google ドキュメントを参照してください。
2.5.7. LinkedIn Social Broker が LinkedIn API のバージョン 2 に更新
LinkedIn に応じて、すべての開発者は API および OAuth 2.0 のバージョン 2.0 に移行する必要があります。そのため、LinkedIn Social Broker を更新しました。この統合を使用している場合は、Red Hat Single Sign-On バージョン 7.2.6 以降にアップグレードしてください。
LinkedIn API のバージョン 2 を使用してユーザーのプロファイルを取得する際に、このブローカーを使用する既存デプロイメントでエラーが発生する場合があります。このエラーは、認証プロセス中に Profile API へのアクセスまたは特定の OAuth2 スコープの要求を許可されていない可能性があるブローカーの設定に使用されるクライアントアプリケーションに付与されたアクセス許可の欠如に関連している可能性があります。
新規に作成された LinkedIn クライアントアプリケーションであっても、クライアントが OAuth2 スコープの r_liteprofile
および r_emailaddress
を要求でき、少なくともクライアントアプリケーションが https://api.linkedin.com/v2/me
エンドポイントから現在のメンバーのプロファイルを取得できることを確認する必要があります。
メンバーの情報へのアクセスや現在のメンバーの Profile API によって返される要求のセットが LinkedIn によって課され、LinkedIn Social Broker はデフォルトユーザー名としてメンバーのメールアドレスを使用するようになりました。これは、認証中に認可要求を送信する際に、常に r_emailaddress
が設定されていることを示しています。