sp_set_database_firewall_rule (Azure SQL Database)

適用対象: Azure SQL Database

Azure SQL Database のデータベース レベルのファイアウォール規則を作成または更新します。 master データベースと SQL Database のユーザー データベースにデータベース ファイアウォール規則を構成できます。 データベース ファイアウォール規則は、包含データベース ユーザーを使用する場合に役立ちます。 詳細については、「 包含データベースを使用してデータベースを移植可能にする」を参照してください。

構文

sp_set_database_firewall_rule
    [ @name = ] N'name'
    , [ @start_ip_address = ] 'start_ip_address'
    , [ @end_ip_address = ] 'end_ip_address'
[ ; ]

引数

[ @name = ] N'name'

データベース レベルのファイアウォール設定を説明し、区別するために使用される名前。 @name は既定値なしで nvarchar(128) です。

[ @start_ip_address = ] 'start_ip_address'

データベース レベルのファイアウォール設定の範囲内で最も低い IP アドレス。 この値以上の IP アドレスは、SQL Database インスタンスへの接続を試みることができます。 設定できる最下位の IP アドレスは 0.0.0.0 です。 @start_ip_address は既定値なしで varchar(50) です。

[ @end_ip_address = ] 'end_ip_address'

データベース レベルのファイアウォール設定の範囲内で最も高い IP アドレス。 この値以下の IP アドレスは、SQL Database インスタンスへの接続を試みることができます。 設定できる最上位の IP アドレスは 255.255.255.255 です。 @end_ip_address は既定値なしで varchar(50) です。

次の表は、SQL Database でサポートされている引数とオプションを示しています。

Note

このフィールドと @start_ip_address フィールドの両方が 0.0.0.0の場合、Azure 接続の試行が許可されます。

解説

データベースのデータベース レベルのファイアウォール設定の名前は一意である必要があります。 ストアド プロシージャに指定されたデータベース レベルのファイアウォール設定の名前がデータベース レベルのファイアウォール設定テーブルに既に存在する場合は、開始 IP アドレスと終了 IP アドレスが更新されます。 それ以外の場合は、新しいデータベース レベルのファイアウォール設定が作成されます。

開始 IP アドレスと終了 IP アドレスが 0.0.0.0と等しいデータベース レベルのファイアウォール設定を追加すると、任意の Azure リソースから SQL Database サーバー内のデータベースへのアクセスが有効になります。 ファイアウォール設定の内容を覚えておくのに役立つ値を @name パラメーターに指定します。

アクセス許可

データベースに対する CONTROL 権限が必要です。

次のコードでは、Azure からデータベースにアクセスできるようにする Allow Azure と呼ばれるデータベース レベルのファイアウォール設定を作成します。

EXECUTE sp_set_database_firewall_rule N'Allow Azure', '0.0.0.0', '0.0.0.0';

次のコードでは、IP アドレス0.0.0.4に対してのみ、Example DB Setting 1と呼ばれるデータベース レベルのファイアウォール設定を作成します。 その後、sp_set_database firewall_rule ストアド プロシージャが再度呼び出され、そのファイアウォール設定で終了 IP アドレスを 0.0.0.6 に更新します。 この例では、IP アドレスの 0.0.0.40.0.0.5、および 0.0.0.6 がデータベースにアクセスできるようにする範囲を作成します。

  • IP 0.0.0.4 のみのデータベース レベルのファイアウォール設定を作成します。

    EXECUTE sp_set_database_firewall_rule N'Example DB Setting 1', '0.0.0.4', '0.0.0.4';
    
  • データベース レベルのファイアウォール設定を更新して、許可される IP アドレスの範囲を作成します。

    EXECUTE sp_set_database_firewall_rule N'Example DB Setting 1', '0.0.0.4', '0.0.0.6';