日本語PDF

Oracle Databaseサーバーでの外部ロール認証タスクの実行

Oracle Databaseサーバーで外部ロール認証タスクを実行する方法について説明します。

次のステップを実行します。
  1. 初期化パラメータOS_ROLESinit.oraファイルに追加します。
  2. OS_ROLEStrueに設定します。

    デフォルトの設定では、このパラメータはfalseです。

  3. ファイルsqlnet.oraのパラメータSQLNET.AUTHENTICATION_SERVICESに、ntsが含まれていることを確認します。
  4. SQL*Plusを起動します。
    C:\> sqlplus /NOLOG
    
  5. Windowsサーバーに接続します。
    SQL> CONNECT / AS SYSDBA
    
  6. 新規のデータベース・ロールを作成します。この新規のロールにはどのような名前でも指定できます。次の例では、DBSALES3というロール名を使用します。
    SQL> CREATE ROLE DBSALES3 IDENTIFIED EXTERNALLY;
    
  7. データベース環境に対応するOracle DatabaseロールをDBSALES3に付与します。
    SQL> GRANT DBA TO DBSALES3 WITH ADMIN OPTN;
    
  8. データベースにSYSDBAとして接続します。
    SQL> CONNECT / AS SYSDBA
    
  9. データベースを停止します。
    SQL> SHUTDOWN
    
  10. データベースを再起動します。
    SQL> STARTUP
    
  11. 次の構文でWindowsローカル・グループを作成します。
    ORA_sid_rolename[_D][_A] 
    

    このコマンドでは、次のことに注意してください。

    • sidは、データベース・インスタンスを示します。

    • rolenameは、付与されるデータベース・ロールを示します。

    • Dは、このデータベース・ロールをデータベース・ユーザーのデフォルト・ロールにすることを示します。

    • Aは、このデータベース・ロールがADMIN OPTIONを含むことを示します。

    文字DおよびAはオプションです。指定する場合は、これらの文字の前にアンダースコアが必要です。

    この例では、ORA_orcl_dbsales3_Dが作成されます。

  12. このグループに、1つ以上のWindowsローカル・ユーザー名またはドメイン・ユーザー名を追加します。

    複数のデータベース・ロールを作成し、次の表に示すように、それぞれ異なるオプションで複数のWindowsグループに付与できます。ORCLインスタンスに接続し、Windowsにより次の4つのWindowsローカル・グループすべてのメンバーとして認証されたユーザーは、デフォルトでdbsales3およびdbsales4に関連付けられた権限を付与されます(オプション_Dが指定されているためです)。このようなユーザーが最初にdbsales3またはdbsales4のメンバーとして接続し、SET ROLEコマンドを使用すると、データベース・ロールdbsales1およびdbsales2にもアクセスできます。ただし、ユーザーが最初にデフォルトのロールで接続せずに、dbsales1またはdbsales2で接続を試みても、接続できません。また、このようなユーザーは、dbsales2およびdbsales4をその他のロールに付与できます(オプション_Aが指定されているためです)。

    データベース・ロール Windowsグループ

    dbsales1

    ORA_ORCL_dbsales1

    dbsales2

    ORA_ORCL_dbsales2_a

    dbsales3

    ORA_ORCL_dbsales3_d

    dbsales4

    ORA_ORCL_dbsales4_da

    注意:

    Oracle Databaseでグループ名がロール名に変換されるとき、名前は大文字に変換されます。

関連項目:

ユーザーおよびグループの管理方法は、オペレーティング・システムのドキュメントを参照してください。