20212021. 11. 12. 11:01

sp_set_database_firewall_rule 프로시저를 사용하면 데이터베이스 수준에서 Azure SQL database 에 접근하는 방화벽 규칙을 만들 수 있습니다. 간단한 사용 예제로 아래 쿼리를 통해 10.0.0.1 - 10.0.0.50 대역의 IP Address 에서 접근하는 연결을 허용하고 나머지는 거부하게 됩니다. 
EXECUTE sp_set_database_firewall_rule N'My Setting 1', '10.0.0.1', '10.0.0.50';  

/* 설정된 규칙 확인과 규칙 삭제 쿼리도 알고 있어야겠죠? 
sys.database_firewall_rules
sp_delete_database_firewall_rule
*/ 

하지만 Database-Level firewall rules 동작 방식을 보면 해당 방화벽 규칙에 포함되어 있지 않더라도 Server-Level firewall rules 에 의해 접근할 수 있는 IP 대역을 가지고 있다면 접근이 허용됩니다. 흔히 VNET 을 추가한 경우가 되겠지요. sp_set_database_firewall_rule 설정된 IP Address 가 아님에도 불구하고 서버 연결이 된다고 당황하지 않기로 해요.

How the firewall works
https://docs.microsoft.com/en-us/azure/azure-sql/database/firewall-configure#how-the-firewall-works



작성자: Lai Go / 작성일자: 2021.11.12

Posted by Lai Go