適用対象: 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';