0

私は、SSO ログインを介してサービス プロバイダー (SP) の IDP (つまり、ForgeRock の OpenAM) から SAML アサーションを取得できるようにする手段 (できれば Java コードを介して) を見つけている最中です。

SP は、Web ブラウザを介して IDP と対話するように構成されています (例: vCloud Director --> OpenAM またはその逆) (つまり、ユーザーは vCloud Director ログイン ページを呼び出すと、OpenAM ログイン ページに自動的にリダイレクトされます)。ただし、このプロセスはブラウザー (リダイレクトが提供されている場合) を介してのみ適用され、ブラウザーの外部では適用されません。

(IDP からの SAML アサーションを認証に使用して) SSO ログインを実行する手段が見つからないようです。これまでのところ、OpenAM SSO の AssertionIDRequestUtil.sendAssertionIDRequestURI 関数を含む多数の参照に出くわしましたが、それでも、AssertionId および SAML EntityId パラメータを取得する場所がわかりません。

SAML アサーションを取得する他の手段はありますか? または、SSO ログインを実行する他の方法はありますか?

4

1 に答える 1

0

これを達成する最も簡単な方法は次のとおりだと思います。

  1. REST または ClientSDK を介して認証を実行する
  2. Java HTTP クライアントを使用して、IdP が開始する SAML 認証フロー (/openam/idpssoinit?metaAlias=/idp&spEntityID=entityID) を開始します。このリクエストを送信するときは、次のことを確認する必要があります。
    • セッション ID は iPlanetDirectoryPro Cookie としてリクエストの一部です。
    • セッションのアップグレードは実行されません (IdP での authcontext 設定は、最初のステップでセッションが作成されたレベルよりも低いか同じ authLevel になります)
于 2012-10-25T05:06:25.557 に答える