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.4
、 0.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';