日本語PDF データベース管理者リファレンス Windowsでの外部ユーザーおよびロールの管理 外部ユーザーおよびロールの手動による管理の概要 外部オペレーティング・システム・ユーザーの手動による作成について Oracle Databaseサーバーでの外部ユーザー認証タスクの実行 Oracle Databaseサーバーでの外部ユーザー認証タスクの実行 外部ユーザー認証タスクを実行するには、この手順を使用します。 Oracle Databaseサーバーで次のように外部ユーザー認証タスクを実行します。 パラメータOS_AUTHENT_PREFIXをinit.oraファイルに追加します。 OS_AUTHENT_PREFIXの値は、オペレーティング・システムのユーザー名およびパスワードを使用してサーバーに接続を試みる、ローカルまたはドメインのユーザー名に接頭辞として付けられます。この接頭辞付きのユーザー名は、接続要求が試行された場合にデータベース内のOracle Databaseユーザー名と比較されます。パラメータOS_AUTHENT_PREFIXとWindowsネイティブ認証方式を組み合わせて、サーバーとのクライアント接続を保護し信頼性を高くすることをお薦めします。 OS_AUTHENT_PREFIXの値を設定します。選択肢は次のとおりです。 文字列 たとえば、xyzと指定すると、Windowsのユーザー名の先頭に、接頭辞としてxyzが付きます(たとえば、ローカル・ユーザーjonesはxyzjonesになり、ドメインsalesのドメイン・ユーザーjonesはxyzsales\jonesになります)。 文字列値には、大文字と小文字の区別がありません。 ""(間にスペースのない2つの二重引用符) 推奨値。この値を使用すると、Windowsのユーザー名に接頭辞を付ける必要がなくなります(たとえば、ローカル・ユーザーjonesはjonesになり、ドメインsalesのドメイン・ユーザーjonesはsales\jonesになります)。 値の指定なし OS_AUTHENT_PREFIXに値を指定しないと、デフォルトでOPS$に設定されます(たとえば、ローカル・ユーザーjonesはOPS$jonesになり、ドメインsalesのドメイン・ユーザーjonesはOPS$sales\jonesになります)。 注意:WindowsおよびLinuxで、認証を成功させるために大文字の文字を使用してデータベース・ユーザー名を作成します。認証は、小文字を含む文字を使用すると失敗します。たとえば、認証は、小文字ops$sales\jonesの文字を使用したデータベース・ユーザー名の作成時に失敗しますが、OPS$SALES\JONESなどの大文字を使用したデータベース・ユーザー名の作成時には成功します。 「コンピュータの管理」ツールでjonesのWindowsローカル・ユーザー名を作成するか、「Active Directoryユーザーとコンピュータ」でjonesのWindowsドメイン・ユーザー名を作成します(適切な名前が現在存在しない場合)。詳細は、オペレーティング・システムのドキュメントを参照してください。 ファイルsqlnet.oraのパラメータSQLNET.AUTHENTICATION_SERVICESに、ntsが含まれていることを確認します。 SQL*Plusを起動します。C:\> sqlplus /NOLOG SYSTEMデータベース管理者(DBA)名でデータベースに接続します。SQL> CONNECT SYSTEM Enter password: system_password 変更がなければ、SYSTEMのパスワードは、デフォルトではMANAGERです。 次のように入力して、ローカル外部ユーザーを作成します。SQL> CREATE USER xyzjones IDENTIFIED EXTERNALLY; xyzは初期化パラメータOS_AUTHENT_PREFIXに対して選択した値です。また、jonesはWindowsローカル・ユーザー名です。 次のように入力して、ローカル外部ユーザーにデータベース・ロールを付与します。SQL> GRANT DBA TO xyzjones; 注意:Windowsローカル・ユーザーの外部認証は、同じコンピュータからのみサポートされます。一方、Windowsドメイン・ユーザーの外部認証は、同じコンピュータまたは異なるコンピュータからでもサポートされます。 次のように入力して、ドメイン外部ユーザーを作成します。SQL> CREATE USER "XYZSALES\JONES" IDENTIFIED EXTERNALLY; XYZは初期化パラメータOS_AUTHENT_PREFIXに対して選択した値です。また、SALES\JONESはドメイン名とWindowsドメイン・ユーザー名です。二重引用符は必須で、構文はすべて英大文字で入力する必要があります。 次のように入力して、ドメイン外部ユーザーにデータベース・ロールを付与します。SQL> GRANT DBA TO "XYZSALES\JONES"; 二重引用符は必須で、構文はすべて英大文字で入力する必要があります。 Windowsローカル・ユーザーjonesまたはドメイン・ユーザーSALES\JONESを使用してWindowsシステムにログオンします。 SYSDBA名でデータベースに接続します。SQL> CONNECT / AS SYSDBA データベースを停止します。SQL> SHUTDOWN データベースを再起動します。SQL> STARTUP これにより、パラメータOS_AUTHENT_PREFIXの変更が有効になります。 親トピック: 外部オペレーティング・システム・ユーザーの手動による作成について