説明
SQL Serverの remote access は、サーバー間のストアドプロシージャ実行を制御する従来の設定です。通常のクライアントのネットワーク接続を遮断する設定ではありません。不要なサーバー間の実行経路は無効にしてください。
想定される影響
不要なリモートプロシージャ実行が許可されると、接続先サーバーの権限が悪用された場合の影響範囲が広がる可能性があります。
対処方法
リンクサーバーや関連ジョブの依存関係を確認し、不要なら settings.database_flags の remote access を off に設定してください。必要な再起動を計画し、通常の接続経路は別途ネットワークポリシーで管理してください。
例
次の抜粋は、サーバー間のリモートプロシージャ実行を必要としない構成です。その他の必須インスタンス設定は省略しています。
変更前
hcl
resource "google_sql_database_instance" "sqlserver_instance" {
name = "sqlserver-instance"
database_version = "SQLSERVER_2017_STANDARD"
region = "us-central1"
settings {
database_flags {
name = "remote access"
value = "on"
}
}
}
変更後
hcl
resource "google_sql_database_instance" "sqlserver_instance" {
name = "sqlserver-instance"
database_version = "SQLSERVER_2019_STANDARD"
region = "us-central1"
settings {
database_flags {
name = "remote access"
value = "off"
}
}
}