セキュリティ管理者ユーザーの作成 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - Advanced SQL Engineセキュリティ管理ガイド

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/ppz1593203596223.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1100
Product Category
Software
Teradata Vantage

プリンシパル セキュリティ管理者、SECADMINを作成して、データベース セキュリティの初期設定を実行する必要があります。

以下の例では、SECADMINの名前を使用していますが、必須ではありません。
サイトに複数のセキュリティ管理者が必要な場合は、次のように行ないます。
  • SECADMINは、個々の管理ユーザーを作成してプロビジョニングした後、主にセキュリティ管理者とセキュリティ関連のテーブルを所有するデータベースとして機能します。個々の管理者はセキュリティ義務を実行できます。
  • ロールを使用して、特定の管理機能の権限を定義します。

以下のステップに従って、セキュリティ管理者ユーザーを作成し、セキュリティ管理の作業の実施に必要な最小限の権限を付与します。

  1. DBCユーザーとしてデータベースにログオンします。
  2. DBC.SysSecDefaultsのExpirePasswordの値をゼロ以外の値に更新して、セキュリティ管理者ユーザーに割り当てられている一時パスワード(および他のすべての一時パスワード)の有効期限が初回のログオン時に切れるようにします。これにより、ユーザーは個人用パスワードの作成を要求されるようになります。 例:
    UPDATE DBC.SysSecDefaults SET ExpirePassword = 90 ;
    PasswordExpireの実際の値は、サイトのセキュリティ ポリシーに準拠する必要があります。

    その後、日数が経過するごとに各ユーザーのパスワード期限が切れます。

    ExpirePasswordを参照してください。

  3. CREATE USER文を使用してセキュリティ管理者ユーザーを作成します。
    CREATE USER secadmin FROM space_owner AS
    PERM =  perm_space 
    PASSWORD =  temp_password 
    [ SPOOL =  spool_space ]
    [ ACCOUNT = 'account' ]
    [ DEFAULT DATABASE = secadmin ]
    [ FALLBACK ];
    secadmin
    プライマリ セキュリティ管理者ユーザーの名前(SECADMINなど)。
    space_owner
    ユーザーsecadminを作成する領域の所有者。
    perm_space
    ユーザーsecadminが作成または所有するすべてのオブジェクトを格納する領域(バイト単位)。
    推奨事項: 使用可能なシステム(space_owner)領域の約2〜3%を指定します。セキュリティ管理者はこの領域内で、セキュリティ関連データ用のユーザーとデータベースおよびテーブルを作成できます。
    secadmin領域を決定する方法については、予約スプール領域の作成を参照してください。
    temp_password
    ユーザーsecadminの一時パスワード。
    推奨事項:デフォルトのシステム パスワード制御に従った単純なパスワードを使用します。ステップ2で設定すると、最初のログオン時に一時パスワードが期限切れとなります。
    spool_space
    [オプショ]secadminがクエリーの実行に使用できる予約スプール部分を制限します。
    推奨事項: 予約スプール領域の約20%を指定します。
    account
    [オプショ]アカウント文字列は、DBC.Acctgテーブルで報告されるリソースの累積の粒度を制御するオプションのメソッドです。アカウント文字列を使用すると、DBC.Acctgで報告されるCPUおよびI/Oのコレクションをアプリケーション時刻と優先順位ごとにグループ化できます。アカウント文字列に含まれる変数置換パラメータは、実行時に解決されます。
    アカウント文字列の2番目の使用法は、TASMまたはTIWMでデフォルトのタイムシェア ワークロードに対するクエリーの分類を指示することです。この分類は、通常の分類プロセスがユーザー定義のワークロードに対するクエリーと一致しない場合にのみ有効となります。
    アカウント文字列は、データベースのプロファイル メンバー セッションの以下の特性を定義します。
    • セッション プライオリティ
    • アカウントID (システム時間およびリソースに対する課金を割り当てます)
    • 日付スタンプ
    • タイムスタンプ
    推奨事項: プロファイルごとに少なくとも1つのアカウント文字列を定義します。 必要に応じて、MODIFY PROFILE文を使用して、後から別のアカウントを追加できます。
    アカウントの詳細については、<Teradata Vantage™ - データベースの管理、B035-1093>を参照してください。
    DEFAULT DATABASE = secadmin
    [オプショ]SQLトランザクションで異なるデータベースが指定されていない限り、データベースが新しいオブジェクトまたはターゲット オブジェクトを格納または検索する領域を含むユーザーまたはデータベース。
    推奨事項: DBCテーブル以外で管理者がアクセスする必要があるすべてのデータベースを含むSECADMINを指定します。
    FALLBACK
    [オプショ]障害発生時にバックアップを提供するため、データベース領域に格納された各テーブルの複製を自動的に作成するようにシステムに指示します。
    推奨事項: secadminのデータは重要であるため、FALLBACKを指定してセキュリティ テーブルの自動複製を設定する必要があります。

    その他の構文オプションは、最初にCREATE USER文で指定することも、後からMODIFY USER文で指定することもできます。

  4. 次のSQL文を実行依頼して、Teradataがセキュリティ管理者に推奨する基本的な権限をsecadminユーザーに付与します。
    下記のSQL文の例では、secadminセキュリティ管理者の責任についてで定義された処理に推奨される権限を提供します。サイトのセキュリティ ポリシーで必要とされる場合は、これらの権限の一部またはすべてを、セキュリティ管理者に加えて、またはセキュリティ管理者の代わりにデータベース管理者に割り当てることができます。
    GRANT USER ON SECADMIN TO SECADMIN               /* maintain users */ ;
    GRANT ROLE TO SECADMIN                           /* maintain roles */ ;
    GRANT PROFILE TO SECADMIN                        /* maintain profiles */ ;
    GRANT SELECT ON DBC TO SECADMIN                  /* select on dictionary tables */;
    GRANT UPDATE ON DBC.SysSecDefaults TO SECADMIN   /* password characteristics */  ;
    GRANT EXECUTE ON DBC.LogonRule TO SECADMIN       /* logon rules */ ;
    GRANT EXECUTE ON DBC.AccLogRule TO SECADMIN      /* access logging */ ;
    GRANT DELETE ON DBC.AccLogTbl TO SECADMIN        /* delete audit entries */  ;
    GRANT DELETE ON DBC.DeleteAccessLog TO SECADMIN  /* delete audit entries */  ;
    GRANT DELETE ON DBC.EventLog TO SECADMIN         /* delete event log */  ;
  5. DBCユーザーとしてログオフします。
  6. すぐにTeradata Vantageに戻ってsecadminユーザーとしてログオンします。プロンプトで、専用パスワードを作成します。
  7. 任意のBEGIN/END LOGGINGまたはGRANT/REVOKE LOGON文を実行しようとした試行を記録するには、次のSQL文を入力します。
    BEGIN LOGGING WITH TEXT ON EACH ALL ON MACRO DBC.LogonRule, MACRO DBC.AccLogRule ;
  8. Teradata Vantageからログオフします。
    システムのニーズに基づいて、セキュリティ管理者にその他の権限を割り当てることができます。