설명
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"
}
}
}