ヘッダーをスキップ
Oracle® Database 2日でデータベース管理者
11gリリース2(11.2)
B56320-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

7 ユーザー・アカウントおよびセキュリティの管理

この章では、ユーザー・アカウントを作成および管理する方法について説明します。この章の内容は、次のとおりです。

ユーザー・アカウントについて

データベースにアクセスするユーザーに対して、ユーザー・アカウントを作成し、適切なデータベースへのアクセス権限をこれらのアカウントに付与する必要があります。ユーザー・アカウントはユーザー名で識別されます。次のユーザー属性を定義します。

ユーザー・アカウントを作成すると、ユーザー名、パスワード、アカウント用のデフォルト表領域を割り当てるのみでなく、次の手順を実行する必要があります。

各ユーザーには、担当する作業に必要な権限のみを付与する(それ以上は付与しない)ことをお薦めします。たとえば、データベース・アプリケーション開発者には、表、索引、ビューおよびストアド・プロシージャを作成および変更する権限が必要ですが、表領域を削除またはデータベースをリカバリする権限は必要ありません。データベース管理のためのユーザー・アカウントを作成し、一部の管理権限のみをそれらのアカウントに付与することができます。

また、アプリケーションからのみ使用できるユーザー・アカウントを作成することもできます。このアカウントでログインできるユーザーはいませんが、アプリケーションがこのアカウントを使用してデータベースに接続し、ユーザーがアプリケーションにログインします。このタイプのユーザー・アカウントでは、アプリケーション・ユーザーがデータベースに直接ログインして、不測の事態が発生することを防止します。詳細は、「ユーザー権限およびロールについて」を参照してください。

ユーザー・アカウントを作成すると、そのユーザーのためのスキーマも同時に作成されます。スキーマは、表やビュー、トリガーなどの、データベース・オブジェクトの論理的なコンテナです。スキーマ名はユーザー名と同一で、ユーザーが所有するオブジェクトを参照するときに確実に使用できます。たとえば、hr.employeesは、hrスキーマでemployeesという名前の表を参照します。(employees表はhrによって所有されます。)データベース・オブジェクトおよびスキーマ・オブジェクトという用語は同じ意味で使用されます。

ユーザーを削除する場合は、同時にすべてのスキーマ・オブジェクトを削除するか、別の操作によってスキーマ・オブジェクトを事前に削除しておく必要があります。

事前定義されたユーザー・アカウント

データベースには、作成したユーザー・アカウントに加えて、インストール時に自動的に作成された複数のユーザー・アカウントが含まれます。

すべてのデータベースには、管理アカウントSYSSYSTEMSYSMANおよびDBSNMPが含まれています。管理アカウントは高度な権限を持つアカウントであり、データベースの起動と停止、データベース・メモリーと記憶域の管理、データベース・ユーザーの作成と管理などの管理タスクを実行する権限のあるユーザーのみに必要です。Oracle Enterprise Manager Database Control(Database Control)にログインする場合は、SYSSYSTEMまたはSYSMANを使用します。の管理エージェントは、DBSNMPアカウントを使用してデータベースの監視および管理を行います。Database Configuration Assistant(DBCA)でデータベースを作成する際に、これらのアカウントのパスワードを割り当てます。これらのアカウントは削除することができません。

すべてのデータベースには、個別のOracle Databaseの機能またはコンポーネントが固有のスキーマを保持できるように自動的に作成される内部のアカウントも含まれます。これらのアカウントを権限のないアクセスから保護するために、これらは最初にロックされ、これらのパスワードは期限切れになります(ロックされたアカウントはログインを無効化するアカウントです)。内部アカウントを削除したり、内部アカウントを使用してデータベースにログインする必要はありません。

データベースにはサンプル・スキーマが含まれています。これは、連結されたスキーマのセットで、共通のデータベース・タスクに関するOracleドキュメントおよび資料を表示できます。また、このスキーマを使用して、本番データを危険にさらさずに試験を行えます。

各サンプル・スキーマには関連付けられたユーザー・アカウントがあります。たとえば、hrユーザー・アカウントはhrスキーマを所有します。このスキーマには人事管理アプリケーションの簡単な表のセットがあります。サンプル・スキーマのアカウントは、最初はロックされていて、パスワードが期限切れになっています。データベース管理者は、これらのアカウントのロックを解除しパスワードを割り当てます。


関連項目:


ユーザー権限およびロールについて

ユーザー権限は基本レベルのデータベース・セキュリティを提供します。ユーザー権限はデータへのユーザーのアクセスの制御およびユーザーが拡張できるSQL文の種類の制限をするように設計されています。ユーザーを作成する場合は、権限を付与してユーザーのデータベースへの接続を有効化、問合せの実行と更新の作成、スキーマ・オブジェクトの作成などを行います。

ユーザー権限の主なタイプは次のとおりです

ロールを使用すると、権限の管理はより簡単になります。ロールは関連する権限のグループ名が付けられます。ユーザーはロールを作成し、ロールにシステムおよびオブジェクト権限を付与し、その後ユーザーにロールを付与できます。また、他のロールにロールを付与することもできます。スキーマ・オブジェクトとは異なり、ロールはいずれのスキーマにも含まれません。

表7-1に、Oracle Databaseで事前定義され広く使用されている3つのロールを示します。この3つのロールは、ユーザーを作成する際、または作成後にいつでも付与できます。

表7-1 Oracle Databaseの事前定義されたロール

ロール名 説明

CONNECT

ユーザーのデータベースへの接続を可能にします。このロールをデータベース・アクセスが必要なユーザーまたはアプリケーションに付与します。Database Controlを使用してユーザーを作成すると、このロールは自動的にユーザーに付与されます。

RESOURCE

そのユーザーに関連付けられたスキーマで特定タイプのスキーマ・オブジェクトの作成、変更および削除を可能にします。このロールは開発者やスキーマ・オブジェクトの作成が必要なその他のユーザーにのみ付与されます。このロールにより、オブジェクト・システムの作成権限のサブセットが付与されます。たとえば、CREATE TABLEシステム権限を付与できますが、CREATE VIEWシステム権限は付与できません。付与できる権限は、CREATE CLUSTERCREATE INDEXTYPECREATE OPERATORCREATE PROCEDURECREATE SEQUENCECREATE TABLECREATE TRIGGERCREATE TYPEです。

DBA

ユーザーの作成および権限の付与、ロールの作成および付与、あらゆるスキーマでのスキーマ・オブジェクトの作成、変更および削除などを含むほとんどの管理機能をユーザーが実行することを可能にします。これはすべてのシステム権限を付与しますが、データベース・インスタンスの起動または停止の権限は含まれません。この権限はデフォルトでSYSおよびSYSTEMユーザーに付与されます。



関連項目:


管理アカウントおよび権限について

管理アカウントおよび管理権限により、ユーザーの管理、データベース・メモリーの管理、データベースの起動および停止などの管理機能を実行できます。

この項の内容は次のとおりです。

SYSおよびSYSTEMユーザー

次の管理ユーザー・アカウントはOracle Databaseをインストール時に自動的に作成されます。インストールの際に適用したパスワードを使用しても作成できます。どちらも自動的にDBAロールが付与されます。

  • SYS

    このアカウントでは、すべての管理機能を実行できます。データベースのデータ・ディクショナリ用のすべての実表およびベース・ビューはSYSスキーマに保存されます。これらの実表およびベース・ビューはOracle Databaseを操作する際に重要となります。データ・ディクショナリの整合性を保持するには、SYSスキーマ内の表をデータベースのみで操作します。すべてのユーザーまたはデータベース管理者による変更は絶対に行わないでください。また、SYSスキーマ内に表を作成しないでください。

    SYSユーザーにはSYSDBA権限が付与され、この権限によりバックアップやリカバリのような高水準な管理タスクを実行できます。

  • SYSTEM

    このアカウントは、次の例外を除いたすべての管理機能を実行します。

    • バックアップとリカバリ

    • データベース・アップグレード

    このアカウントを使用して日常的な管理タスクを実行できますが、Oracle Databaseを管理するための名前付きユーザー・アカウントを作成して、データベース・アクティビティを監視できるようにすることを薦めします。

SYSDBAおよびSYSOPERシステム権限

SYSDBAおよびSYSOPERはデータベースの作成、起動、停止、バックアップまたはリカバリなどの高度な管理操作を実行するために必要な管理権限です。SYSDBAシステム権限は、すべての権限を持つデータベース管理者用、SYSOPERシステム権限は、基本的な運用タスクを実行するがユーザー・データを表示する権限は持たないユーザー用です。

SYSDBAおよびSYSOPERは、データベースがオープンでないときもデータベース・インスタンスにアクセスできるシステム権限です。これらの権限の制御は完全にデータベース外で行われています。この制御により、これらの権限のいずれかを付与されている管理者は、データベース・インスタンスに接続してデータベースを起動できます。

SYSDBA権限およびSYSOPER権限は、他の方法では権限が付与されない特定のデータベース操作を実行可能にする接続のタイプと考えることもできます。たとえば、SYSDBA権限がある場合、AS SYSDBAを使用してデータベースに接続できます。

SYSユーザーはインストール後すぐにSYSDBAの権限を自動的に付与されます。SYSユーザーとしてログインする場合、SYSDBAまたはSYSOPERとしてデータベースに接続する必要があります。SYSDBAユーザーとして接続すると、SYSDBA権限が発動され、SYSOPERユーザーとして接続すると、SYSOPER権限が発動されます。Oracle Enterprise Manager Database Controlでは、SYSDBAまたはSYSOPERとして接続しないと、SYSユーザーとしてログインできません。

SYSDBAまたはSYSOPER権限で接続すると、通常はユーザー名に関連付けられているスキーマではなく、デフォルトのスキーマで接続が確立されます。このスキーマは、SYSDBAの場合はSYSSYSOPERの場合は、PUBLICです。


注意:

SYSユーザーとして接続する場合、データ・ディクショナリの表における権限は無制限となります。データ・ディクショナリの表を変更しないように注意してください。


関連項目:

  • SYSDBAおよびSYSOPER権限によって認可される操作の詳細は、『Oracle Database管理者ガイド』を参照してください。


ロールの管理

ロールは、関連するシステムおよびオブジェクト権限の名前付きグループです。ロールを作成し、ユーザーおよび他のロールに割り当てます。

この項の内容は次のとおりです。


関連項目:


ロールの表示

ロールは、Oracle Enterprise Manager Database Control(Database Control)のロール・ページで確認できます。

ロールを表示するには、次の手順を実行します。 

  1. データベースのホームページにアクセスし、ロールを管理する権限を持つユーザー・アカウントでログインします。このようなユーザー・アカウントの例はSYSTEMです。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページ上部の「サーバー」をクリックし、サーバー・サブページを表示します。

  3. 「セキュリティ」セクションで、「ロール」をクリックします。

    ロール・ページが表示されます。

    view_roles.gifの説明が続きます。
    view_roles.gifの説明

  4. 特定のロールの詳細を表示するには、「選択」列で表示するロールの名前を選択し、「表示」をクリックします。

    ロールが表示されない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ロールのリストの上部の「次へ」をクリックし、次のページを表示します。該当するロールが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、該当するロールを検索します。「オブジェクト名」フィールドに、ロールの最初の数文字を入力して「実行」をクリックします。

      ロールを選択し、「表示」をクリックします。

    ロールの表示ページが表示されます。このページでは、選択済のロールに付与されたすべての権限およびロールを表示できます。

例: ロールの作成

アプリケーション開発者用にAPPDEVと呼ばれるロールを作成すると想定します。アプリケーション開発者はアプリケーションで使用するスキーマ・オブジェクトの作成、変更および削除を行う必要があるため、APPDEVロールには表7-2に示すシステム権限を含めます。

表7-2 APPDEVロールに付与されたシステム権限

権限 説明

CREATE TABLE

スキーマで表をユーザーが作成、変更および削除することを可能にします。

CREATE VIEW

スキーマでビューをユーザーが作成、変更および削除することを可能にします。

CREATE PROCEDURE

スキーマでプロシージャをユーザーが作成、変更および削除することを可能にします。

CREATE TRIGGER

スキーマでトリガーをユーザーが作成、変更および削除することを可能にします。

CREATE SEQUENCE

スキーマでシーケンスをユーザーが作成、変更および削除することを可能にします。

CREATE SYNONYM

スキーマでシノニムをユーザーが作成、変更および削除することを可能にします。


APPDEVロールを作成するには、次の手順を実行します。 

  1. 「ロールの表示」に従って、ロール・ページに移動します。

  2. 「作成」をクリックします。

    ロールの作成ページが表示されます。

  3. 「名前」フィールドにAPPDEVと入力します。

  4. 「システム権限」をクリックし、システム権限サブページに移動します。

    create_role.gifの説明が続きます。
    create_role.gifの説明

    このロールに対するシステム権限の表にはまだ行は含まれません。

  5. 「リストを編集」をクリックします。

    システム権限の変更ページが表示されます。

  6. 「使用可能なシステム権限」リストで権限をダブルクリックして、「選択したシステム権限」リストに追加します。

    追加する権限は、表7-2に示されています。

    modify_system_privs.gifの説明が続きます。
    modify_system_privs.gifの説明


    注意:

    権限をダブルクリックすると簡単にできます。また、権限を選択して「移動」ボタンをクリックすることもできます。複数の権限を選択するには、[Shift]キーを押しながら権限の範囲を選択するか、または[Ctrl]キーを押して個々の権限を選択し、権限を選択した後に「移動」をクリックします。

  7. 「OK」をクリックします。

    システム権限サブページに戻り、選択済のシステム権限が表示されます。この時点で、「ロール」をクリックしてAPPDEVロールにその他のロールを割り当てます。または「オブジェクト権限」をクリックしてAPPDEVロールにオブジェクト権限を割り当てます。

  8. 「OK」をクリックし、ロール・ページに戻ります。

    APPDEVロールはデータベース・ロール表に表示されます。

例: ロールの変更

Oracle Streams Advanced Queuingをアプリケーションで使用すると想定します。その場合、開発者がアプリケーションの開発およびテストにAQ_ADMINISTRATOR_ROLEおよびAQ_USER_ROLEが必要かどうかを決定します。この2つのAdvanced Queuingロールを付与するには、APPDEVロールを編集する必要があります。

APPDEVロールを変更するには、次の手順を実行します。 

  1. 「ロールの表示」に従って、ロール・ページに移動します。

  2. 「選択」列でクリックしてAPPDEVロールを選択し、「編集」をクリックします。

    ロールの編集ページが表示されます。

  3. 「ロール」をクリックし、ロール・サブページにナビゲートします。

  4. 「リストを編集」をクリックします。

    ロールの変更ページが表示されます。

  5. 「使用可能なロール」リストでAQ_ADMINISTRATOR_ROLEおよびAQ_USER_ROLEロールをダブルクリックし、「選択したロール」リストに追加します。

  6. 「OK」をクリックします。

    ロール・サブページに戻ります。 APPDEVロールに付与された選択したロールが表示されます。

  7. 「適用」をクリックして、変更内容を保存します。

    APPDEVロールが正常に変更されたことを含む更新メッセージが表示されます。

ロールの削除

ロールを削除する場合、そのロールが現在1人以上のユーザーに付与されていても、Database Controlはロールを削除するため注意が必要です。ロールを削除する前に、そのロールが付与されているユーザーがいないかどうかを確認します。ロールを削除すると、そのロールを付与されたすべてのユーザーから、そのロールに関連付けられた権限が自動的に削除されます。

ロールに権限受領者がいるかどうか判別するには、次の手順を実行します。 

  1. 「ロールの表示」で説明されているとおりに、ロール・ページに移動します。

  2. 「選択」列で、必要なロールをクリックします。

    目的のロールが表示されない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ロールのリストの上部の「次へ」をクリックし、次のページを表示します。該当するロールが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、該当するロールを検索します。「オブジェクト名」フィールドに、ロールの最初の数文字を入力して「実行」をクリックします。

    ロールを選択できます。

  3. 「アクション」リストで、「権限受領者の表示」を選択して「実行」をクリックします。

    選択したロールが付与されたユーザーを表示したレポートが表示されます。

  4. 「取消」をクリックし、ロール・ページに戻ります。

ロールを削除するには、次の手順を実行します。 

  1. 「ロールの表示」で説明されているとおりに、ロール・ページに移動します(そのページに移動していない場合)。

  2. 「選択」列で、必要なロールをクリックし、「削除」をクリックします。

    確認ページが表示されます。

  3. 「はい」をクリックします。

    確認メッセージはロールが正常に削除されたことを示します。

データベース・ユーザー・アカウントの管理

この項では、データベースのユーザーおよびアプリケーションのユーザー・アカウントを作成し管理する方法を提供します。この付録には、次の項があります。

ユーザー・アカウントの表示

ユーザー・アカウントは、Oracle Enterprise Manager Database Control(Database Control)のユーザー・ページで確認できます。

ユーザーを表示するには、次の手順を実行します。 

  1. データベースのホームページに移動し、ユーザーを管理する権限を持つユーザー・アカウント(SYSTEMなど)でログインします。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページ上部の「サーバー」をクリックし、サーバー・サブページを表示します。

  3. 「セキュリティ」セクションで、「ユーザー」をクリックします。

    ユーザー・ページが表示されます。

    users_page.gifの説明が続きます。
    users_page.gifの説明

  4. 特定のユーザーの詳細を表示するには、「選択」列でユーザーをクリックし、「表示」をクリックします。

    ユーザーが表示されない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ユーザーのリストの上部の「次へ」をクリックし、次のページを表示します。該当するユーザーが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、該当するユーザーを検索します。「オブジェクト名」フィールドに、ユーザー名の最初の数文字を入力して「実行」をクリックします。

    • 表のデータのソート順序を変更するには、表の列をクリックします。たとえば、ユーザーを逆アルファベット順にリストするには、「ユーザー名」列ヘッダーをクリックします。

    ユーザーを選択し、「表示」をクリックします。

    ユーザーの表示ページが表示され、すべてのユーザー属性が表示されます。

例: ユーザー・アカウントの作成

Nickという名前のデータベース・アプリケーション開発者用のユーザー・アカウントを作成すると想定します。Nickは開発者であるため、アプリケーションを構築およびテストするために、彼に必要なデータベース権限およびロールを付与する必要があります。また、その表領域でスキーマ・オブジェクトを作成できるように、デフォルト表領域に10MBの領域割当て制限をNickに付与する必要があります。

Nickという名前のユーザーを作成するには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. ユーザー・ページで、「作成」をクリックします。

    ユーザーの作成ページが表示されます。一般サブページが表示されます。

    図create_user.gifの説明は次にあります。
    create_user.gifの説明

  3. 「名前」フィールドにNICKと入力します。

  4. プロファイル・リストで、値DEFAULTを受け入れます。

    この設定によりデフォルトのパスワード・ポリシーがユーザーNickに割り当てられます。

    詳細は、「データベースのパスワード・ポリシーの設定」を参照してください。

  5. 認証リストのデフォルト値Passwordを許可します。

    ユーザーを認証するためのより高度な方法の詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。

  6. 「パスワードの入力」および「パスワードの確認」フィールドに、セキュアなパスワードを入力します。

    セキュアなパスワードを作成します。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。

  7. 「期限切れパスワード」は選択しないでください。アカウント・ステータスが期限切れに設定された場合、ユーザーまたはデータベース管理者はユーザーがデータベースにログインする前にパスワードを変更する必要があります。

  8. (オプション)「デフォルト表領域」フィールドの横の懐中電灯アイコンをクリックして、USERS表領域を選択し、「選択」をクリックします。

    Nickが作成するすべてのスキーマ・オブジェクトは、他を指定しないかぎりUSERS表領域に作成されます。「デフォルト表領域」フィールドを空白のままにすると、Nickは新しくインストールするデータベースのデフォルト表領域としてUSERSを割り当てられます。USERS表領域の詳細は、「表領域について」を参照してください。

  9. (オプション)「一時表領域」フィールドの横の懐中電灯アイコンをクリックして、TEMP表領域を選択し、「選択」をクリックします。

    「一時表領域」フィールドを空白のままにすると、Nickは新しくインストールするデータベースのデフォルト一時表領域としてTEMPを割り当てられます。TEMP表領域の詳細は、「表領域について」を参照してください。

  10. 「ステータス」オプションについては、デフォルトの「ロック解除」をそのまま使用します。

    ユーザー・アカウントを使用されないように後でロックできます。ユーザー・アカウントの削除によりユーザーが所有するすべてのスキーマ・オブジェクトも同時に削除されてしまうのを防ぐため、一時的にユーザー・アカウントへのアクセスを拒否するにはユーザー・アカウントを削除せずにロックします。

  11. 「例: ユーザー・アカウントへの権限およびロールの付与」の手順に従って、ユーザーに、ロール、システム権限およびオブジェクト権限を付与します。


    注意:

    「例: ユーザー・アカウントへの権限およびロールの付与」の手順13で、「OK」をクリックしないでください。かわりに、その手順をスキップし、ここでの手順12を続行します。

  12. 「例: ユーザー・アカウントへの表領域の割当て制限の割当て」の説明に従って、10MBの割当て制限をUSERS表領域に割り当てます。

  13. 表領域の割当て制限を割り当てるとき(前の手順)に「OK」をクリックしなかった場合、「OK」をクリックしてユーザーを作成します。


関連項目:


既存のユーザー・アカウントの複製による新規ユーザー・アカウントの作成

既存のユーザー・アカウントと属性が同じユーザー・アカウントを作成する場合は、既存のユーザー・アカウントを複製できます。

既存のユーザー・アカウントを複製して新規ユーザー・アカウントを作成するには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. 「選択」列で、複製するユーザーをクリックします。

  3. 「アクション」リストで、「類似作成」を選択して「実行」をクリックします。

    ユーザーの作成ページが表示されます。このページには複製されたユーザーとして同じ属性を持った新しいユーザーが表示されます。

  4. ユーザー名およびパスワードを入力し、必要に応じてユーザー属性または権限を変更します。次に「OK」をクリックし、新規ユーザーを保存します。

「アクション」リストは他のアクションへのショートカットおよびユーザーの作成に使用されるSQLコマンドを表示する方法を示します。

例: ユーザー・アカウントへの権限およびロールの付与

Nickという名前のユーザー・アカウントを作成または変更すると想定します。Nickはデータベース・アプリケーション開発者であるため、自身のスキーマでデータベース・オブジェクトを作成できるように、APPDEVロールをNickに付与する必要があります。(「例: ロールの作成」APPDEVロールを作成済です。)また、自身のスキーマ以外のスキーマで表やビューを作成できるようにする場合は、CREATE ANY TABLEおよびCREATE ANY VIEWのシステム権限を付与します。また、Nickは人事管理アプリケーションを開発するため、hrサンプル・スキーマにある表を表示して例として使用できるようにする必要があります。したがって、これらの表のSELECTオブジェクト権限を付与する必要もあります。最後に、NickがDatabase Controlにログインして、データベース・オブジェクトを作成および管理するためのGraphical User Interfaceを使用できるようにする必要があります。したがって、SELECT_CATALOG_ROLEロールをNickに付与する必要があります。次の表は、Nickに付与する権限およびロールを示しています。

権限付与タイプ 権限またはロール名
システム権限 CREATE ANY TABLECREATE ANY VIEW
オブジェクト権限 hrスキーマで、すべての表のSELECT
ロール APPDEVSELECT_CATALOG_ROLE

次の例は、Nickのユーザー・アカウントの作成中またはアカウントの編集中であることを想定しています。ユーザーの作成ページにアクセスし、一般サブページで必要なすべてのフィールドを入力しているか(「例: ユーザー・アカウントの作成」を参照)、Nickのためのユーザーの編集ページにアクセスしています(「例: ユーザー・アカウントの変更」を参照)。また、この例ではNickに権限またはロールをまだ付与していないとします。

Nickという名前のユーザーに権限およびロールを付与するには、次の手順を実行します。 

  1. ユーザーの作成ページ、またはユーザーの編集ページの上部に向かって、「ロール」をクリックしてロール・サブページを表示します。

    ロール・サブページはNickに割り当てたCONNECTロールを表示します。Database Controlは、作成したすべてのユーザーにこのロールを自動的に割り当てます。(選択された「デフォルト」チェック・ボックスは、CONNECTロールがNickのデフォルト・ロールであることを示しています。つまり、このロールはNickがログインするたびに自動的に有効になります。)

  2. 「リストを編集」をクリックします。

    ロールの変更ページが表示されます。

    modify_roles.gifの説明が続きます。
    modify_roles.gifの説明

  3. 「使用可能なロール」リストでAPPDEVロールの場所を指定し、ダブルクリックして「選択したロール」リストに追加します。SELECT_CATALOG_ROLEロールでも同じ手順を実行し、「OK」をクリックします。

    ユーザーの作成ページまたはユーザーの編集ページに戻ります。Nickに付与したCONNECTAPPDEVおよびSELECT_CATALOG_ROLEロールが表示されます。


    注意:

    ロールをダブルクリックする方が簡単です。ロールを選択して「移動」ボタンをクリックすることもできます。複数の権限を選択するには、[Shift]キーを押しながら権限の範囲を選択するか、[Ctrl]キーを押しながら個々の権限を選択します。

  4. ページ上部に向かって、「システム権限」をクリックしてシステム権限サブページを選択します。

  5. 「リストを編集」をクリックします。

    システム権限の変更ページが表示されます。

  6. 「使用可能なシステム権限」リストをスクロールしてCREATE ANY TABLEおよびCREATE ANY VIEW権限を特定し、それぞれをダブルクリックして、「選択したシステム権限」リストに追加し、「OK」をクリックします。

    ユーザーの作成ページまたはユーザーの編集ページに戻ります。新しい追加されたシステム権限が表示されます。


    注意:

    ロールを削除するには、ロールの変更ページの「選択したロール」リストで削除するロールをダブルクリックします。システム権限を削除するには、システム権限の変更ページの「選択したシステム権限」リストで削除するシステム権限をダブルクリックします。

  7. ページ上部に向かって、「オブジェクト権限」をクリックしてオブジェクト権限サブページを選択します。

  8. 「オブジェクト・タイプの選択」リストから「表」を選択し、「追加」をクリックします。

    表オブジェクト権限の追加ページが表示されます。

    add_object_privileges.gifの説明が続きます。
    add_object_privileges.gifの説明

  9. 表オブジェクトの選択リストの横にある懐中電灯アイコンをクリックします。

    表オブジェクトの選択ダイアログ・ボックスが表示されます。

  10. 「スキーマ」リストでHRを選択し、「実行」をクリックします。

    hrスキーマのすべての表が表示されます。

    select_table_objects.gifの説明が続きます。
    select_table_objects.gifの説明

  11. 「すべて選択」をクリックし、次に「選択」ボタンをクリックします。

    「表オブジェクトの選択」ダイアログ・ボックスが閉じると、表オブジェクト権限の追加ページ上の「表オブジェクトの選択」フィールドに、hrスキーマ内のすべての表の名前が表示されます。

  12. 「使用可能な権限」リストでSELECT権限をダブルクリックして「選択した権限」リストに移動し、「OK」をクリックします。

    ユーザーの作成ページまたはユーザーの編集ページに戻ります。ユーザーNickに付与されたすべてのhr表に対するSELECTオブジェクト権限が表示されます。


    注意:

    オブジェクト権限を削除するには、ユーザーの作成ページ、またはユーザーの編集ページ(オブジェクト権限サブページ)で削除するオブジェクト権限を選択し、「削除」をクリックします。

  13. 次のいずれかを実行し、ロールと権限の付与を保存します。

    • ユーザー・アカウントを作成する場合は、「OK」をクリックし、新規ユーザー・アカウントを保存します。

    • ユーザー・アカウントを修正する場合は、「適用」をクリックしてユーザー・アカウントに関する変更を保存します。


関連項目:


例: ユーザー・アカウントへの表領域の割当て制限の割当て

Nickという名前のユーザー・アカウントを作成または変更すると想定します。Nickのデフォルト表領域に10MBの領域使用量の割当て制限を配分します。

Nickが表領域にオブジェクトを作成できるように、デフォルト表領域にNickの表領域の割当て制限を割り当てる必要があります。(これは他の表領域にNickがオブジェクトを作成する場合も同様です。)Nickに特定の表領域を割り当てた後は、Nickの全オブジェクトが消費する領域の合計は、その表領域内で割当て制限を超えることはできません。UNLIMITEDの割当て制限を割り当てることもできます。

次の例は、Nickのユーザー・アカウントの作成中またはアカウントの編集中であることを想定しています。ユーザーの作成ページにアクセスし、一般サブページで必要なすべてのフィールドを入力しているか(「例: ユーザー・アカウントの作成」を参照)、Nickのためのユーザーの編集ページにアクセスしています(「例: ユーザー・アカウントの変更」を参照)。また、この例では、Nickには表領域の割当て制限が指定されていないものとします。

Nickという名前のユーザーに表領域の割当て制限を割り当てるには、次の手順を実行します。 

  1. ユーザーの作成ページ、またはユーザーの編集ページの上部で、割当て制限サブページを選択します。

    ユーザーNickはどの表領域でも割当て制限を持っていないことを示している割当て制限サブページが表示されます。

    quotas.gifの説明が続きます。
    quotas.gifの説明

  2. 表領域USERS「割当て制限」列でリストからValueを選択します。

  3. USERS表領域の「値」列に、10を入力します。

  4. 次のいずれかを実行し、新しい割当て制限の割当てを保存します。

    • ユーザー・アカウントを作成する場合は、「OK」をクリックし、新規ユーザー・アカウントを保存します。

    • ユーザー・アカウントを修正する場合は、「適用」をクリックしてユーザー・アカウントに関する変更を保存します。

例: ユーザー・アカウントの変更

ユーザーNickのデフォルトの表領域であるUSERSの割当て制限を削除すると想定します。そのためには、ユーザーNickのアカウントを変更する必要があります。

Nickという名前のユーザーを変更するには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. 「選択」列で、ユーザー・アカウントNickを選択し、「編集」をクリックします。

    ユーザーNickが見つからない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ユーザー・アカウントのリストの上部の「次へ」をクリックし、次のページを表示します。Nickのユーザー・アカウントが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、Nickのアカウントを検索します。「オブジェクト名」フィールドに、NIという文字を入力して「実行」をクリックします。

    Nickのユーザー・アカウントを選択し、「編集」をクリックします。

    ユーザーの編集ページが表示され、Nickの一般属性が表示されます。

  3. ページ上部で、割当て制限サブページを選択します。

  4. 表領域USERS「割当て制限」列でリストから「無制限」を選択し、「適用」をクリックします。

    ユーザーNickが正常に変更されたことを示すメッセージが表示されます。

ユーザー・アカウントのロックおよびロック解除

特定のユーザー・アカウントに対してデータベースへのアクセスを一時的に拒否するには、ユーザー・アカウントをロックします。そのユーザーが接続しようとしても、データベースによってエラー・メッセージが表示され、接続は許可されません。そのユーザーに対して再度データベースへのアクセスを許可する場合は、ユーザー・アカウントのロックを解除します。

ユーザー・アカウントをロックまたはロック解除するには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. 「選択」列で、対象のユーザー・アカウントをクリックします。

    目的のユーザー・アカウントが見つからない場合は、別のページに表示されている可能性があります。この場合は、「次へ」ボタンをクリックして他のページを表示するか、ページの「検索」領域を使用して、対象のユーザー・アカウントを検索します。

  3. 次の操作を1つ実行します。

    • アカウントをロックするには、「アクション」リストから「ーザーのロック」を選択し、「実行」をクリックします。

    • アカウントのロックを解除するには、「アクション」リストから「ユーザーのロック解除」を選択し、「実行」をクリックします。

    確認メッセージが表示されます。

  4. 「はい」をクリックします。

ユーザー・パスワードの期限切れ

パスワードの期限が切れた場合、ユーザーは次回ログイン時にパスワードを変更するよう求められます。次の場合にパスワードの期限が切れます。

  • ユーザーのパスワードが漏洩した場合。

  • セキュリティ・ポリシーが表示され、定期的なパスワード変更を求める場合。


    注意:

    一定期間後にパスワードの期限を自動的に無効にする設定ができます。詳細は、「データベースのパスワード・ポリシーの設定」を参照してください。

  • ユーザーがパスワードを忘れた場合。

    3番目の場合、ユーザー・アカウントを変更し、新規の一時パスワードを割り当て、パスワードを無効にします。一時パスワードでログインすると、新しいパスワードを選択するように要求されます。

ユーザーのパスワードを期限切れにするには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. 「選択」列で、対象のユーザー・アカウントをクリックします。

    目的のユーザー・アカウントが見つからない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ユーザー・アカウントのリストの上部の「次へ」をクリックし、次のページを表示します。対象のユーザー・アカウントが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、対象のユーザー・アカウントを検索します。「オブジェクト名」フィールドに、ユーザー・アカウント名の最初の数文字を入力して「実行」をクリックします。

    ユーザー・アカウントを選択できます。

  3. すべてのユーザーのパスワードを期限切れにするには、「複数」オプションを選択して「すべて選択」をクリックします。

  4. 「アクション」リストから「パスワード期限切れ」を選択し、「実行」をクリックします。

    確認メッセージが表示されます。

  5. 「はい」をクリックして変更操作を実行します。

例: ユーザー・アカウントの削除

Nickという名前のユーザーが他の部門に移動したと想定します。今後データベースにアクセスする必要がなくなるので、Nickという名前のユーザーのアカウントを削除します。

ユーザー・アカウントを削除するときには、そのユーザーが所有しているすべてのスキーマ・オブジェクトも削除されるため、注意が必要です。スキーマ・オブジェクトを残したままで、ユーザーがデータベースにログインできないようにするには、ユーザー・アカウントをロックします。詳細は、「ユーザー・アカウントのロックおよびロック解除」を参照してください。

Nickという名前のユーザーを削除するには、次の手順を実行します。 

  1. 「ユーザー・アカウントの表示」に従って、ユーザー・ページに移動します。

  2. 「選択」列で、ユーザー・アカウントNickを選択し、「削除」をクリックします。

    ユーザー・アカウントNickが見つからない場合は、別のページに表示されている可能性があります。この場合、次のいずれかの操作を行います。

    • ユーザー・アカウントのリストの上部の「次へ」をクリックし、次のページを表示します。Nickのユーザー・アカウントが見つかるまで「次へ」をクリックし続けます。

    • そのページの「検索」エリアを使用して、ユーザー・アカウントを検索します。「オブジェクト名」フィールドに、NIという文字を入力して「実行」をクリックします。

    Nickのユーザー・アカウントを選択し、「削除」をクリックします。

    確認ページが表示されます。

  3. 「はい」をクリックして、ユーザー・アカウントの削除を確認します。

データベースのパスワード・ポリシーの設定

この項では、データベース内のすべてのユーザー・アカウントにパスワード・ポリシーを設定するためのバックグラウンド情報および手順について説明します。この付録には、次の項があります。


関連項目:


パスワード・ポリシーの概要

ユーザー・アカウントを作成すると、デフォルト・パスワード・ポリシーがそのユーザー・アカウントに割り当てられます。新規にインストールされたデータベースに対するこのデフォルト・パスワード・ポリシーには、次の指定があります。

  • ユーザー・アカウントのパスワードは180日で自動的に期限切れとなります。

  • パスワードの期限切れの7日後にユーザー・アカウントがロックされます。

  • 10回ログインに失敗すると、ユーザー・アカウントが1日ロックされます。

デフォルト・パスワード・ポリシーは、プロファイルと呼ばれるデータベース・オブジェクトを使用してユーザー・アカウントに割り当てられます。各ユーザー・アカウントにプロファイルが割り当てられ、そのプロファイルには、パスワード・ポリシーを説明する複数の属性があります。データベースにはDEFAULTという名前のデフォルト・プロファイルがあり、ユーザー・アカウントを作成する際に、他のプロファイルを指定しないかぎり、そのデフォルト・プロファイルがユーザー・アカウントに対して割り当てられます。

データベース・セキュリティを向上させるには、パスワード・ポリシーに厳しい制約を設ける必要がある場合があります。たとえば、パスワードの期限を70日に設定したり、ログインに3回失敗すると、ユーザー・アカウントがロックされるように設定することもできます。(ユーザー・アカウントのログインの失敗は、アカウントのパスワードとしてユーザーが不正なものを入力した場合に発生します。)また、パスワードを推定してシステムに入ろうとする侵入者から、十分に保護するために、パスワードを複雑に設定するように要求することもできます。たとえば、パスワードに少なくとも1文字の数字および1文字の句読点が含まれるように指定できます。

DEFAULTプロファイルのパスワード関連属性を変更することによって、データベース内のすべてのユーザー・アカウントのパスワード・ポリシーを変更します。


注意:

異なるユーザー・アカウントに異なるパスワード・ポリシーを使用することもできます。これを行うには、複数のプロファイルを作成し、各プロファイルにそれぞれパスワード関連の属性を設定し、異なるユーザー・アカウントに異なるプロファイルを割り当てます。この手順についてはこの項では説明しません。

デフォルト・パスワード・ポリシーの変更

プロファイル名DEFAULTのパスワード関連属性を変更し、すべてのデータベース・ユーザー・アカウントのデフォルトのパスワード・ポリシーを変更します。

デフォルト・パスワード・ポリシーを変更するには、次の手順を実行します。 

  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページ上部の「サーバー」をクリックし、サーバー・サブページを表示します。

  3. 「セキュリティ」セクションで、「プロファイル」をクリックします。

    プロファイル・ページが表示されます。

  4. 「選択」列でDEFAULTと呼ばれるプロファイルを選択し、「編集」をクリックします。

    プロファイルの編集ページが表示されます。

  5. ページ上部で、パスワード・サブページを選択します。

    edit_profile.gifの説明が続きます。
    edit_profile.gifの説明

  6. 必要に応じてフィールド値を変更します。各フィールドの横にある懐中電灯アイコンをクリックし、選択のリストを表示します。フィールドの説明については、このページの「ヘルプ」をクリックしてください。

  7. 「適用」をクリックして、変更内容を保存します。


関連項目:


ユーザー: Oracle by Example Series

Oracle by Example(OBE)には、このマニュアルに関するシリーズが含まれています。このOBEでは、この章のタスクを段階的に説明し、注釈付きのスクリーンショットを使用します。

ユーザーに関するOBEを参照するには、ご使用のブラウザで次のURLを指定します。

http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/r2/2day_dba/users/users.htm