[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

12 認証

12.1 認証とは

認証とは,システムへのアクセスを許可する前に,コンピュータ・システムがユーザの身元を確認する動作です。 ユーザの認証が成功すると,システムはユーザの認可情報を 資格情報の形式でユーザのプロセスにバインドします。 システムはこれらの資格情報を使用して,システム・リソースへのアクセスを許可するのか, 拒否するのかを判断します。

OpenVMSでは,次に示すように,ネイティブ(SYSUAFベース)とWindows NT互換の認証および認可機能が提供されます。

OpenVMSがユーザの認証(ネイティブまたはWindows NT)に成功すると,ペルソナと呼ぶ構造を使用して,ユーザのネイティブな資格情報がプロセスに結びつけられます。Windows NT を認証のために使用した場合は,OpenVMSはユーザのWindows NT 資格情報もプロセスに結合します( ペルソナの拡張として)。

12.2 NTA$LOGONの使用によるWindows NT資格情報の取得

NTA$LOGONはNTLM資格情報を取得するためのユーティリティです。OpenVMS Registry またはCOM for OpenVMS機能にアクセスするために,Windows NTセキュリティを必要とするすべてのプロセスは, NTLM資格情報を必要とします。

NTA$LOGONに対してユーザ・アカウント名,パスワード,(必要な場合は) ドメイン名を提供しなければなりません。NTA$LOGONはACM (Authentication and Credential Management)オーソリティを使用してドメイン・ コントローラに連絡をとり,Windows NTアクセス・トークンを取得します。NTA$LOGON はWindows NT情報とユーザのOpenVMS資格情報をマージします。

NTA$LOGONの依存関係の詳細と,NTA$LOGONがOpenVMSインフラストラクチャの他の部分とどのように関係するかについては, 第4.8節第4.9節 ( 特にACMEサーバとAdvanced Server for OpenVMS server)を参照してください。

NTA$LOGONユーティリティを使用するには,次のいずれかを入力します。

表 12-1はNTA$LOGONユーティリティのコマンド・ ライン・パラメータを示しています。

表 12-1 NTA$LOGONユーティリティのコマンド・ ライン・パラメータ

引数 必須/省略可能
P1 ユーザ・アカウント名。 アカウント名は必須であるが,コマンド・ラインに指定しなかった場合は,NTA$LOGON から入力が求められる。 省略可能
P2 パスワード。パスワードは必須であるが, コマンド・ラインに指定しなかった場合は, NTA$LOGONから入力が求められる(入力したパスワードは画面に表示されない) 。 省略可能

例 12-1は, 資格情報を取得するための典型的なNTA$LOGON セッションを示しています。

例 12-1 NTA$LOGONセッションの例

    $ NTLOGON :== $NTA$LOGON
    $ NTLOGON joesmith
    Password:


注意
Windows NTドメイン名とユーザ・ アカウント名では,大文字と小文字が区別されません。NTA$LOGONはすべてのドメイン名とユーザ・ アカウント名を大文字に変換します。コマンド・ ラインにパスワードを指定すると,DCLはすべての文字を大文字に変換します。 ただし,パスワードを引用符("")で囲んだ場合は,大文字に変換されません。

12.2.1 NTA$LOGONの省略可能な修飾子

NTA$LOGONでは次の修飾子を使用できますが,これらの修飾子は省略可能です。

12.2.2 Windows NT資格情報を取得するためのNTA$LOGON の使用例

例 12-2は, ユーザがNT資格情報を初めて取得する方法を示しています。

例 12-2 Windows NT資格情報の初めての取得

    $ NTLOGON :== $NTA$LOGON
    $ NTLOGON/LIST
    ERROR: NtOpenProcessToken() failure: -1073741700 0xc000007c
    %SYSTEM-E-NOSUCHEXT, no such extension found

    $ NTLOGON/LOG JOESMITH
    [Persona #1 NT extension: Account= "JOESMITH" Domain= "NT_DOMAIN" ]
    Password:

例 12-3は, ユーザがWindows NT 資格情報を置換する方法を示しています。

例 12-3 Windows NT資格情報の置換

    $ NTLOGON/DELETE
    $ NTLOGON/OVERRIDE_MAPPING/DOMAIN=OTHER_DOMAIN
    Username: janebrown
    Password:

例 12-4は,ユーザがパスワードをディスクのファイルに保存する方法を示しています。 パスワードは2 回入力するように求められますが,入力しても画面に表示されません。

例 12-4 ファイルへのパスワードの保存

    $ NTLOGON :== $NTA$LOGON
    $ NTLOGON/WRITE_FILE=DEV:[DIR]NTA$LOGON.DAT COM_SERVER
    Password:
    Confirm:
    $ NTLOGON/READ_FILE=DEV:[DIR]NTA$LOGON.DAT/LIST
    File DEV:[DIR]NTA$LOGON.DAT contains the following records:
    02-MAR-1999 16:57:23.20 COM_SERVER

このファイルを作成した後,DCLコマンド・プロシージャに次のコマンドを追加できます。

         $ NTLOGON :== $NTA$LOGON
         $ NTLOGON/READ_FILE=DEV:[DIR]NTA$LOGON.DAT COM_SERVER

12.3 ACM (Authentication and Credential Management)オーソリティ

ACM (Authentication and Credential Management)オーソリティは, OpenVMSとWindows NTに対してユーザを認証し, ユーザのセキュリティ・プロファイルを判断します。ACME_SERVERプロセスはこれらのACM サービスを提供します。ACME_SERVERプロセスはACME エージェントと呼ぶプラグイン・モジュールを使用します。ACMEエージェントは, 認証要求,問い合わせ要求,イベント要求への応答などの実際の作業を行います。

OpenVMS ACMEエージェント(VMS$VMS_ACMESHR.EXE)は,OpenVMSネイティブ・ サービスを提供します。MSV1_0 ACMEエージェント(PWRK$MSV1_0_ ACMESHR.EXE,Advanced Server for OpenVMS製品のコンポーネント) は,Windows NT接続サービスを提供します。

MSV1_0 ACMEエージェントはWindows NT接続サービス要求をNTA$LOGONおよびSSPI/NTLM から,クラスタ内の1つ以上のシステムで稼動しているAdvanced Server for OpenVMS プロセスに転送します。PWRK$ACME_SERVER 論理名には,MSV1_0 ACMEが要求を転送する先のクラスタ・ ノード名のリストを含むことができます。各名前はカンマで区切ります。Advanced Server for OpenVMS プロセスを1 つ以上のクラスタ・ノードで実行し,ノード名をPWRK$ACME_SERVER 論理名に含むと,MSV1_0 ACMEエージェントは,接続が中断されたときに, 要求を自動的にフェールオーバできます。論理名が定義されていない場合は, デフォルトでローカル・マシン名に設定されます。

ACME_SERVERプロセスは,RPCまたはCOM for OpenVMSを実行するどのシステムにも存在しなければなりません。しかし,Advanced Server for OpenVMS プロセスは, クラスタ内の1つのノードにだけ存在すれば十分です。

12.3.1 OpenVMSでのWindows NT認証

ACME_SERVERは要求されたWindows NTペルソナ拡張情報も含めて,完全なOpenVMS ペルソナを呼び出しプロセスに返すので,VMS ACMEエージェントは次の規則を適用します。

12.3.2 Windows NTユーザの認証; OpenVMSプロセスへのWindows NT資格情報の付与

OpenVMSでWindows NTユーザを認証し,Windows NTユーザの資格情報をOpenVMSプロセスに割り当てるには, 次の操作を行います。

  1. Advanced Server for OpenVMSデータベースでHOSTMAP エントリを定義します。

    HOSTMAPエントリは,Windows NTユーザ・アカウントとローカルのOpenVMS ユーザ・アカウントの間の関連付けを定義します。OpenVMS がWindows NTユーザを認証する場合, HOSTMAPエントリを使用して,OpenVMSユーザ・アカウントをWindows NTユーザ・ アカウントにマップし, ローカルのOpenVMSユーザ・プロファイルとWindows NTユーザ・ プロファイルを作成します。HOSTMAPエントリが存在しない場合は, OpenVMSはWindows NTユーザ・アカウント名をローカルのOpenVMS ユーザ・アカウント名として使用します。

    Advanced Server for OpenVMSのADMINISTER ユーティリティを使用して,HOSTMAP情報を定義します。たとえば, Windows NTのFRED というユーザをローカルのOpenVMSユーザ・ アカウントFREDERICK にマップするには,次のコマンドを入力します。

           $ ADMINISTER ADD HOSTMAP FRED FREDERICK
    

    FRED が信頼されるドメインFINANCE に定義されている場合は, 信頼されるドメイン名をHOSTMAPエントリに指定しなければなりません。 次の例を参照してください。

           $ ADMINISTER ADD HOSTMAP FINANCE\FRED FREDERICK
    

  2. ホストマップを行うためにOpenVMSユーザ・アカウントを有効にします。

    デフォルト設定では,OpenVMSは,ホストマップのためにEXTAUTHフラグがセットされたOpenVMS ユーザ・アカウントだけを使用できます。このポリシーにより,OpenVMS システム管理者はWindows NT認証でどのOpenVMS ユーザ・アカウントを使用できるかを制御できます。

    ( SECURITY_POLICYシステム・パラメータのIGNORE_EXTAUTHビット[ビット番号11 (10 進数)]をセットすれば,このアカウント単位の制限をシステム全体で無効にできます。)

    OpenVMSユーザ・アカウントでEXTAUTHフラグをセットするには, AUTHORIZEユーティリティを使用します。たとえば,OpenVMSユーザ・ アカウントFREDERICK のEXTAUTHフラグを有効にするには, 次のコマンドを入力します。

           $ AUTHORIZE MODIFY FREDERICK/FLAG=EXTAUTH
    

12.3.3 ACME_SERVERプロセスの管理(ACME サーバ・コマンド)

システムの起動時にACME_SERVERプロセスを起動し,MSV1_0 ACMEエージェントを構成するには, 次のエントリをSYLOGICALS.COMに追加します。

       $ DEFINE NTA$NT_ACME_TO_BE_STARTED YES

また,次のスタートアップ・コマンド・ファイルを使用して,ACME_ SERVERプロセスを手動で起動することもできます。

       $ @SYS$STARTUP:NTA$STARTUP_NT_ACME

ACME_SERVERをシャットダウンするには,次のコマンドを入力します。

       $ SET SERVER ACME/EXIT

ACMEエージェントで異常状態が発生したために,正常にサーバをシャットダウンできない場合は, /EXIT修飾子の代わりに/ABORT修飾子を使用して,ACME_SERVER を強制終了します。

ACME_SERVERのログ機能を有効にするには,次のコマンドを入力します。

       $ SET SERVER ACME/LOG

このコマンドはACME$SERVER.LOGファイルをSYS$MANAGERディレクトリに作成します。 このファイルは,発生する可能性のある問題を診断するのに役立ちます。

ACME_SERVER構成情報を表示するには,次のコマンドを入力します。

       $ SHOW SERVER ACME[/FULL]

12.3.4 MSV1_0 ACMEエージェントの構成

表 12-2は,MSV1_0 ACME エージェントの特定の機能を制御するために使用できるシステム単位の論理名を示しています。

表 12-2 MSV1_0 ACMEエージェントの論理名

論理名 説明
PWRK$ACME_SERVER Advanced Server for OpenVMSプロセスで実行されていて,Windows NT接続要求をサービスできるクラスタのSCS ノード名の一覧。各名前はカンマで区切る。 ノード名を定義しなかった場合は,MSV1_0 ACMEエージェントはローカル・ システムのAdvanced Server for OpenVMSプロセスに接続する。
PWRK$ACME_RETRY_COUNT Advanced Server for OpenVMSプロセスに接続するときに,MSV1_0 ACME エージェントが実行するリトライの最大回数。デフォルト値は10 である。
PWRK$ACME_RETRY_ INTERVAL リトライを実行する間隔であり,1/10秒単位で指定する。 デフォルトは2.5秒である。


[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]