リソースへのユーザ アクセス
エージェントは要求されたリソースにユーザ アクセスを付与する前に以下の手順に従う必要があります。エージェントのパフォーマンスを向上するために、ほとんどの手順は結果をキャッシュできるようになっています。エージェントは、キャッシュを望むだけ実行することができます。
casso126jjp
エージェントは要求されたリソースにユーザ アクセスを付与する前に以下の手順に従う必要があります。エージェントのパフォーマンスを向上するために、ほとんどの手順は結果をキャッシュできるようになっています。エージェントは、キャッシュを望むだけ実行することができます。
- ユーザの要求を受け入れます。リソースにアクセスするためのユーザの要求を受理します。これはアプリケーション固有の要求です。たとえば、Web エージェントは、URL に対する GET 要求を受け入れます。
- リソースが保護されているかどうかを確認します。要求されたリソースが保護されているかどうかを確認するには isProtected() を呼び出します。リソースが保護されている場合、ポリシー サーバはユーザの身元を検証するためにユーザから取得される必要がある必要な認証情報を返します。リソースが保護されていない場合、要求されたリソースへのアクセスが許可されます。この手順の結果はキャッシュできます。
- ユーザを認証します。ユーザから必要な認証情報を収集し、かつユーザを認証するには login() を呼び出します。認証が成功したら、ポリシー サーバはセッションを作成し、一意のセッション ID およびセッション指定を含むレスポンス属性を返します。これらのレスポンス属性は、ポリシーによって駆動され、ユーザ プロファイル データ、スタティックまたはダイナミックの権限、多くの事前定義された認証状態属性、またはポリシー管理者によって指定された他のデータです。エージェントは、ユーザ セッション情報をキャッシュし、セッション有効期限を追跡することにより、セッション管理を実行できるようになります。
- ユーザが許可されているかどうか確認します。authorize() を呼び出して、要求されたリソースにユーザがアクセスできるかどうか検証します。許可に成功したら、ポリシー サーバはリソース固有の権限を含めたレスポンス属性を返します。これらのレスポンス属性は、ポリシーによって駆動され、ユーザ プロファイル データ、スタティックまたはダイナミックの権限、またはポリシー管理者によって指定された他のデータです。この時点では、要求されたリソースに関するユーザの許可情報は知られており、将来の要求の処理速度を向上するためにキャッシュできます。
- キャッシュされた許可情報を監査します。認証および許可手順のいずれもユーザ、保護されたリソース、およびエージェントに関する関連情報をログ記録します。ただし、エージェントがそのキャッシュからの許可を実行する場合、トランザクションは、今までどおり audit() メソッドを通してログ記録できます。
- リソースへのアクセスを許可します。ユーザの識別情報が知られ、許可が検証され、必要な権限が取得されたため、許可されたユーザにリソースへのアクセス権を付与します。
- 管理要求を発行します。これは、ポリシー サーバで更新コマンドをポーリングするために必要に応じて実行される手順です。コマンドに応じて、エージェントは暗号化キーの更新またはキャッシュのクリアのいずれかまたは両方を実行します。
エージェントが必要なくなった場合に、各 API インスタンスに対して unInit() メソッドを発行します。これにより、すべてのポリシー サーバへの TCP 接続が閉じられます。
注:
エージェント API は、セッション検証を適用するような方法でのキャッシュに対してファシリティを提供しません。ユーザ セッションとリソース固有の権限のいずれかまたは両方をキャッシュすることを選択することで、各ユーザの要求の間に自身のセッション管理を実行する必要がエージェントに発生します。これが必要なのは、エージェント上でのキャッシュによって、セッション検証およびリソース許可のいずれかまたは両方の実行のために CA Single Sign-on
ポリシー サーバに接続する必要がなくなるためです。