デフォルトでは、信頼できる環境で複数のポリシーエージェントを作成するときは、ポリシーエージェントに同一の UID およびパスワードが含まれます。UID およびパスワードが共有されるため、Access Manager はエージェントを区別できません。そのため、セッション Cookie が横取りされる可能性があります。
この弱点は、認証、承認、およびユーザーに関するプロファイル情報がアイデンティティープロバイダによって、サードパーティーまたは企業内の未承認のグループによって開発されたアプリケーションまたはサービスプロバイダに提供される場合に存在するようになることがあります。考えられるセキュリティー上の問題を次に示します。
すべてのアプリケーションは同一の HTTP セッション Cookie を共有します。このため、不正なアプリケーションがセッション Cookie をハイジャックし、そのユーザーが偽装によって別のアプリケーションにアクセスできるようになります。
アプリケーションが HTTPS プロトコルを使用していない場合、セッション Cookie はネットワーク盗聴される傾向があります。
1 つでもアプリケーションがハッキングされる可能性がある場合、インフラストラクチャー全体のセキュリティーが危険にさらされます。
不正なアプリケーションは、セッション Cookie を使用してユーザーのプロファイル属性を取得することができ、変更することも考えられます。ユーザーが管理権限を持っている場合、そのアプリケーションはさらに多くの損害を与える可能性があります。
Access Manager 管理コンソールを使用して、エージェントごとにエントリを作成します。
エージェントの作成時に入力したパスワードに次のコマンドを実行します。このコマンドは、エージェントがインストールされているホストで起動してください。
AccessManager-base/SUNWam/agents/bin/crypt_util agent123
次の出力が得られます。
WnmKUCg/y3l404ivWY6HPQ==
新しい値を反映するように AMAgent.properties を変更し、エージェントを再起動します。例:
# The username and password to use for the Application authentication module. com.sun.am.policy.am.username = agent123 com.sun.am.policy.am.password = WnmKUCg/y3l404ivWY6HPQ== # Cross-Domain Single Sign On URL # Is CDSSO enabled. com.sun.am.policy.agents.cdsso-enabled=true # This is the URL the user will be redirected to after successful login # in a CDSSO Scenario. com.sun.am.policy.agents.cdcservletURL = http://server.example.com:port /amserver/cdcservlet
新しい値を反映するように、Access Manager がインストールされている AMConfig.properties を変更し、Access Manager を再起動します。例:
com.sun.identity.enableUniqueSSOTokenCookie=true com.sun.identity.authentication.uniqueCookieName=sunIdentityServerAuthNServer com.sun.identity.authentication.uniqueCookieDomain=.example.com
Access Manager コンソールで、「設定」、「プラットフォーム」の順に選択します。
「Cookie ドメイン」リストで、次のように Cookie ドメイン名を変更します。