カテゴリ:

ユーザーとセキュリティ DDL (ネットワークポリシー)

CREATE NETWORK POLICY

ネットワークポリシーを作成します。

注釈

ネットワークポリシーを作成できるのは、セキュリティ管理者(つまり、 SECURITYADMIN ロールを持つユーザー)以上、 または グローバル CREATE NETWORK POLICY 権限のあるロールのみです。

こちらもご参照ください。

ALTER NETWORK POLICYDESCRIBE NETWORK POLICYDROP NETWORK POLICYSHOW NETWORK POLICIES

ALTER ACCOUNT

構文

CREATE [ OR REPLACE ] NETWORK POLICY <name>
   ALLOWED_IP_LIST = ( '<ip_address>' [ , '<ip_address>' , ... ] )
   [ BLOCKED_IP_LIST = ( '<ip_address>' [ , '<ip_address>' , ... ] ) ]
   [ COMMENT = '<string_literal>' ]

必須パラメーター

名前

ネットワークポリシーの識別子。アカウントに対して一意である必要があります。

識別子の値はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

ALLOWED_IP_LIST = ('ipアドレス' [ , 'ipアドレス' , ... ] )

Snowflakeアカウントへのアクセスを許可する1つ以上の IPv4 アドレスを指定します。これは 許可リスト と呼ばれます。Snowflakeは、許可リストに含まれていないすべての IP アドレスを自動的にブロックします。

オプションのパラメーター

BLOCKED_IP_LIST = ('ipアドレス' [ , 'ipアドレス' , ... ] )

Snowflakeアカウントへのアクセスを拒否される1つ以上の IPv4 アドレスを指定します。これは ブロックリスト と呼ばれます。

このパラメーターは、 IP アドレスの範囲(ALLOWED_IP_LIST で指定される)へのアクセスを許可するが、その範囲内の1つ以上の IP アドレスへのアクセスを拒否する場合にのみ設定します。

デフォルト: 値なし(つまり、 ALLOWED_IP_LIST の IP アドレスはブロックされない)

COMMENT = '文字列リテラル'

ネットワークポリシーのコメントを指定します。

デフォルト: 値なし

使用上の注意

  • ipアドレス は、クラスレスドメイン間ルーティング(CIDR)表記を使用してアドレス範囲をカバーできます。

    ipアドレス[/任意のプレフィックスの長さ]

    例:

    192.168.1.0/24

  • ネットワークポリシーに ALLOWED_IP_LISTBLOCKED_IP_LIST の両方の値が含まれている場合、Snowflakeは最初に ブロックリスト を適用します。

  • 0.0.0.0/0BLOCKED_IP_LIST に追加 しないでください。Snowflakeはブロックされたリストを最初に適用するため、ユーザー自身のアクセスがブロックされます。さらに、選択リストを除くすべての IP アドレスをブロックするには、IP アドレスを ALLOWED_IP_LIST に追加するだけですみます。Snowflakeは、許可リストに含まれていないすべての IP アドレスを自動的にブロックします。

  • ALLOWED_IP_LIST リストの最大文字数は100,000です。この文字制限を超えると、Snowflakeはエラーメッセージを返します。

  • ネットワークポリシーを作成した後、Snowflakeがポリシーを実施する前に、それをアカウントに関連付ける必要があります。SECURITYADMIN ロール(またはそれ以上)を持つユーザーが実行する必要がある ALTER ACCOUNT コマンドを使用して、アカウントにポリシーを関連付けることができます。

    例:

    USE ROLE SECURITYADMIN;
    
    ALTER ACCOUNT SET NETWORK_POLICY = <policy_name>;
    

    詳細については、 パラメーター管理 をご参照ください。現在、 SECURITYADMIN ロールを持つユーザーが設定できるアカウントパラメータは NETWORK_POLICY のみです。

  • ネットワークポリシーをアカウントに関連付ける前に、現在の IP アドレスを ALLOWED_IP_LIST に含める必要があります。そうでない場合、 ALTER ACCOUNT コマンドはエラーを返します。また、現在の IP アドレスを BLOCKED_IP_LIST に含めることはできません。

次のプロパティを使用して、 mypolicy1 という名前のネットワークポリシーを作成します。

  • 明示的にブロックされている 192.168.1.99 を除き、 192.168.1.0 から 192.168.1.255 (CIDR 表記 192.168.1.0/24 経由)の範囲にある IP アドレスすべてを許可します。

  • 他のすべての IP アドレスを拒否します。

CREATE NETWORK POLICY mypolicy1 ALLOWED_IP_LIST=('192.168.1.0/24')
                                BLOCKED_IP_LIST=('192.168.1.99');

DESC NETWORK POLICY mypolicy1;

+-----------------+----------------+
| name            | value          |
|-----------------+----------------|
| ALLOWED_IP_LIST | 192.168.1.0/24 |
| BLOCKED_IP_LIST | 192.168.1.99   |
+-----------------+----------------+

IP アドレス 192.168.1.0 および 192.168.1.100 のみがアカウントにアクセスできるようにする、 mypolicy2 という名前のネットワークポリシーを作成します。

CREATE NETWORK POLICY mypolicy2 ALLOWED_IP_LIST=('192.168.1.0','192.168.1.100');

DESC NETWORK POLICY mypolicy2;

+-----------------+---------------------------+
| name            | value                     |
|-----------------+---------------------------|
| ALLOWED_IP_LIST | 192.168.1.0,192.168.1.100 |
+-----------------+---------------------------+