REMOTE_USER 変数

目次
casso126jjp
目次
REMOTE_USER 変数は、Web サーバによって認証されたユーザの名前を保持します。エージェントが Web サーバにインストールされると、
Single Sign-On
では Web サーバのネイティブ認証を置換します。REMOTE_USER 変数は空白です。
ご使用のアプリケーションが REMOTE_USER 変数を使用する場合は、REMOTE_USER 変数が設定されます。
Web サーバが REMOTE_USER 変数を使用しない場合は、HTTP_SM_USER ヘッダがユーザ名をアプリケーションへ渡す代替方法を提供します。
REMOTE_USER 変数を設定するように Web エージェントを設定する
REMOTE_USER 変数を設定するように Web エージェントを設定する
  • REMOTE_USER を
    Single Sign-On
    のログイン ユーザ名の値に設定するには、Web エージェントの SetRemoteUser パラメータを[yes]に設定します。
    このパラメータのデフォルト値は no で、これは REMOTE_USER 変数を空白のままにするものです。
    注:
    Single Sign-On
    Web エージェント 5.x QMR 2 以前では、SetRemoteUser パラメータが影響するのは IIS Web サーバのみでした。Apache および Oracle iPlanet エージェントでは、REMOTE_USER は必ず
    Single Sign-On
    のログイン ユーザ名に設定されます。5.x QMR 2 より前のエージェントをインストールするユーザ、またはそのようなエージェントからのアップグレードを行うユーザは、REMOTE_USER がデフォルトで有効にならないことに注意してください。
  • REMOTE_USER 変数を、ユーザのログイン認証情報ではなく、特定のユーザ アカウントに基づいて設定するには、以下の手順に従います。
    • SetRemoteUser パラメータを yes に設定して、これを有効にします。
    • RemoteUserVar パラメータを設定します。このパラメータは、エージェントに対し、HTTP-WebAgent-Header-Variable レスポンス属性の値に基づいて 変数の値を設定するように指示するものです。このパラメータは、レガシー アプリケーションと統合するために使用します。
      RemoteUserVar パラメータを設定するには、レスポンス変数の名前のみを入力します。たとえば、「user=ajohnson」のような HTTP-WebAgent-Header-Variable を返すには、RemoteUserVar パラメータを値「user」に設定します。
    • ヘッダ変数を OnAuthAccept ルールにバインドします。既存の HTTP ヘッダ変数レスポンスを使用せずに、新規作成してください。
casso126jjp
注:
詳細については、ポリシー サーバ ドキュメントを参照してください。
  • デフォルトに戻して、REMOTE_USER を空白のままにするには、SetRemoteUser パラメータを no に戻します。
注:
SetRemoteUser または RemoteUserVar を設定する前に、セキュリティ上の因果関係を必ず考慮してください。
IIS Web サーバおよび REMOTE_USER 変数
IIS Web サーバでは、
Single Sign-On
で REMOTE_USER 変数を使用するために基本認証が必要です。
基本認証が有効になっている場合に、ユーザが
Single Sign-On
で保護されたリソースを要求すると、エージェントはユーザ名のみで IIS Web サーバの HTTP_Authorization ヘッダを設定しようとします。パスワードは使用しません。
HTTP_Authorization ヘッダが使用される場合、IIS Web サーバの基本認証メカニズムは他のすべての認証チャレンジに対して優先されます。そのため、IIS Web サーバは、ユーザが独自の認証要求に応答しようとしていると見なします。
エージェントが ISAPI フィルタ(IIS のクラシック パイプライン モードを使用)として動作する場合、エージェントは以下のタスクを実行します。
  • 要求のユーザ コンテキストを設定します。
  • REMOTE_USER ヘッダの値を設定します。
SetRemoteUser パラメータの値が yes で、以下のいずれかの設定が使用される場合、エージェントは REMOTE_USER ヘッダのデータを入力します。
  • DefaultUsername および DefaultPassword - これら両方のパラメータにより、エージェントが大部分のアクティビティで使用する(特権)プロキシ ユーザ アカウントが制御されます。
  • ForceIISProxyUser - 通常の動作を無効にして、エージェントに、IIS Web サーバをプロキシ サーバとして実行するように強制します。
  • UseAnonAccess - エージェントに対して、要求のユーザ コンテキストをまったく提供せずに、既存のユーザ コンテキストを未変更のままにするように指示します。
  • 認証済みユーザ セキュリティ コンテキストで実行 - エージェントは IIS Web サーバに対して、永続的なセッションに格納された認証情報を使用するように指示します。
SetRemoteUser パラメータおよび UseAnonAccess パラメータを一緒に使用する場合は、注意してください。
以下の表に、これらのパラメータがどのように連携するかを示します。
パラメータの設定
その結果
SetRemoteUser=yes
UseAnonAccess=yes
エージェントはユーザ セキュリティ コンテキストを渡さ
ない
ため、REMOTE_USER 変数は設定できません。
ユーザ セキュリティ コンテキストがない場合、IIS Web サーバは、エージェントが変更した HTTP_Authorization ヘッダの認証情報を強制的に使用します。ただし、これにはユーザ名しか含まれないため、このヘッダは不完全です。
SetRemoteUser=yes
UseAnonAccess=no
エージェントは、DefaultUserName、DefaultPassword、または ForceIISProxyUser などのその他のパラメータの設定方法に応じて、一部のタイプのユーザ コンテキストを渡すことができます。
エージェントがセキュリティ コンテキストを IIS Web サーバへ渡す場合、IIS Web サーバはエージェントの認証情報を使用します。IIS Web サーバは不完全な HTTP_Authorization ヘッダを無視します。