Azure Database for PostgreSQL 보안에 대해 설명

완료됨

Azure Database for PostgreSQL은 여러 보안 계층을 사용하여 데이터를 보호합니다. 이러한 계층에는 다음이 포함됩니다.

  • 데이터 암호화
  • 네트워크 보안
  • 액세스 관리

데이터 암호화

Azure Database for PostgreSQL은 전송 중 및 미사용 데이터를 암호화합니다. 이 항목은 단원 5에서 토론됩니다.

네트워크 보안

Azure Database for PostgreSQL 유연한 서버는 두 가지 네트워킹 옵션을 제공합니다.

  • 프라이빗 액세스. 개인 네트워크 통신 및 개인 IP 주소를 사용하여 Azure 가상 네트워크에서 서버를 만듭니다. 네트워크 보안 그룹의 보안 규칙을 사용하면 가상 네트워크 서브넷 및 네트워크 인터페이스 내외부로 이동할 수 있는 네트워크 트래픽 유형을 필터링할 수 있습니다.
  • 퍼블릭 액세스. 공개적으로 확인 가능한 DNS(Domain Name System) 주소를 사용하여 공용 엔드포인트를 통해 서버에 액세스할 수 있습니다. 방화벽은 기본적으로 모든 액세스를 차단합니다. 각 요청의 기존 IP 주소를 기준으로 하여 데이터베이스 액세스 권한을 부여하는 IP 방화벽 규칙을 만들 수 있습니다.

참고

Azure Database for PostgreSQL 유연한 서버를 만들 때 프라이빗 액세스 또는 퍼블릭 액세스를 선택합니다. 서버를 만든 후에는 네트워크 옵션을 변경할 수 없습니다.

두 옵션 모두 데이터베이스 수준 또는 테이블 수준이 아닌 서버 수준에서 액세스를 제어합니다. PostgreSQL 역할을 사용하여 데이터베이스, 테이블 및 기타 개체에 대한 액세스 권한을 부여하거나 거부합니다.

또한 알려진 IP 주소 범위만 연결을 허용하는 방화벽 규칙을 만들어 서버에 대한 액세스를 관리합니다.

액세스 관리

Azure Database for PostgreSQL 서버를 만들 때 관리자 계정도 만듭니다. 이 관리자 계정은 추가 PostgreSQL 역할을 만드는 데 사용할 수 있습니다. 역할은 데이터베이스 사용자 또는 사용자 그룹입니다. Azure Database for PostgreSQL 서버에 대한 액세스는 사용자 이름, 암호 및 역할에 부여 또는 거부된 권한으로 인증됩니다.

SCRAM 인증

Azure Database for PostgreSQL 서버에 대한 액세스는 대부분 암호를 사용합니다. 그러나 서버에 사용자의 일반 텍스트 암호를 공개하지 않고 클라이언트를 인증할 수 있는 보안 암호 인증 프로토콜인 SCRAM 인증을 사용할 수 있습니다. SCRAM(Salted Challenge Response Authentication Mechanism)은 중간자(man-in-the-middle) 공격을 더 어렵게 만들도록 설계되었습니다. SCRAM 인증을 사용하려면

  1. Azure Portal에서 Azure Database for PostgreSQL 유연한 서버로 이동하고 설정 아래에서 서버 매개 변수를 선택합니다.

  2. 검색 창에 password_encryption을 입력합니다. 나열된 두 매개 변수는 모두 기본값이 MD5입니다. SCRAM을 사용하려면 두 매개 변수를 모두 SCRAM-SHA-256으로 변경합니다.

    1. password_encryption
    2. azure.accepted_password_auth_method

    그런 다음 변경 내용을 저장해야 합니다.