프라이빗 링크 구성

프라이빗 링크를 사용하면 가상 네트워크의 개인 IP 주소를 사용하여 개인 및 안전하게 연결하는 네트워크 인터페이스인 프라이빗 엔드포인트를 통해 Azure API for FHIR에 액세스할 수 있습니다. 프라이빗 링크를 사용하면 DNS(공용 도메인 이름 시스템)를 거치지 않고도 자사 서비스로 VNet에서 안전하게 서비스에 액세스할 수 있습니다. 이 문서에서는 Azure API for FHIR에 대한 프라이빗 엔드포인트를 만들고, 테스트하고, 관리하는 방법을 설명합니다.

참고

Private Link 사용하도록 설정되면 Private Link 또는 Azure API for FHIR을 한 리소스 그룹 또는 구독에서 다른 리소스 그룹으로 이동할 수 없습니다. 이동하려면 먼저 Private Link 삭제한 다음 Azure API for FHIR을 이동합니다. 이동이 완료되면 새 Private Link 만듭니다. Private Link 삭제하기 전에 잠재적인 보안 파급 효과를 평가합니다.

Azure API for FHIR에 대해 감사 로그 및 메트릭 내보내기를 사용하도록 설정한 경우 포털에서 진단 설정을 통해 내보내기 설정을 업데이트합니다.

사전 요구 사항

프라이빗 엔드포인트를 만들기 전에 먼저 만들어야 하는 몇 가지 Azure 리소스가 있습니다.

  • 리소스 그룹 – 가상 네트워크 및 프라이빗 엔드포인트를 포함할 Azure 리소스 그룹입니다.
  • Azure API for FHIR – 프라이빗 엔드포인트 뒤에 배치하려는 FHIR 리소스입니다.
  • Virtual Network – 클라이언트 서비스와 프라이빗 엔드포인트가 연결될 VNet입니다.

자세한 내용은 Private Link 설명서를 참조하세요.

프라이빗 엔드포인트 만들기

프라이빗 엔드포인트를 만들기 위해 FHIR 리소스에 대한 RBAC(역할 기반 액세스 제어) 권한이 있는 개발자는 Azure Portal, Azure PowerShell 또는 Azure CLI를 사용할 수 있습니다. 이 문서에서는 Azure Portal 사용하는 단계를 안내합니다. 프라이빗 DNS 영역의 생성 및 구성을 자동화하기 때문에 Azure Portal 사용하는 것이 좋습니다. 자세한 내용은 Private Link 빠른 시작 가이드를 참조하세요.

프라이빗 엔드포인트를 만드는 방법에는 두 가지가 있습니다. 자동 승인 흐름을 사용하면 FHIR 리소스에 대한 RBAC 권한이 있는 사용자가 승인 없이 프라이빗 엔드포인트를 만들 수 있습니다. 수동 승인 흐름을 사용하면 FHIR 리소스에 대한 권한이 없는 사용자가 FHIR 리소스의 소유자가 승인할 프라이빗 엔드포인트를 요청할 수 있습니다.

참고

Azure API for FHIR에 대해 승인된 프라이빗 엔드포인트를 만들면 해당 엔드포인트에 대한 공용 트래픽이 자동으로 비활성화됩니다.

자동 승인

새 프라이빗 엔드포인트의 지역이 가상 네트워크의 지역과 동일한지 확인합니다. FHIR 리소스의 지역은 다를 수 있습니다.

Azure Portal 기본 사항 탭

리소스 종류에 대해 Microsoft.HealthcareApis/services를 검색하여 선택합니다. 리소스에 대해 FHIR 리소스를 선택합니다. 대상 하위 리소스의 경우 FHIR을 선택합니다.

Azure Portal 리소스 탭

기존 프라이빗 DNS 영역이 설정되지 않은 경우 (새로 만들기)privatelink.azurehealthcareapis.com 선택합니다. 프라이빗 DNS 영역을 이미 구성한 경우 목록에서 선택할 수 있습니다. privatelink.azurehealthcareapis.com 형식이어야 합니다.

Azure Portal 구성 탭

배포가 완료되면 프라이빗 엔드포인트 연결 탭으로 돌아가서 승인됨 을 연결 상태로 확인할 수 있습니다.

수동 승인

수동 승인을 위해 리소스 아래의 두 번째 옵션인 "리소스 ID 또는 별칭으로 Azure 리소스에 연결"을 선택합니다. 대상 하위 리소스의 경우 자동 승인과 같이 "fhir"을 입력합니다.

수동 승인

배포가 완료되면 연결을 승인, 거부 또는 제거할 수 있는 "프라이빗 엔드포인트 연결" 탭으로 돌아갈 수 있습니다.

옵션

VNet 피어링

Private Link 구성하면 동일한 VNet 또는 FHIR 서버용 VNet에 피어링된 다른 VNet의 FHIR 서버에 액세스할 수 있습니다. 아래 단계에 따라 VNet 피어링을 구성하고 DNS 영역 구성을 Private Link.

VNet 피어링 구성

포털에서 또는 PowerShell, CLI 스크립트 및 ARM(Azure Resource Manager) 템플릿을 사용하여 VNet 피어링을 구성할 수 있습니다. 두 번째 VNet은 동일하거나 다른 구독과 동일하거나 다른 지역에 있을 수 있습니다. 네트워크 기여자 역할을 부여해야 합니다. VNet 피어링에 대한 자세한 내용은 가상 네트워크 피어링 만들기를 참조하세요.

Azure Portal FHIR 서버의 리소스 그룹을 선택합니다. privatelink.azurehealthcareapis.com 프라이빗 DNS 영역을 선택하고 엽니다. 설정 섹션에서 가상 네트워크 링크를 선택합니다. 추가 단추를 선택하여 프라이빗 DNS 영역에 두 번째 VNet을 추가합니다. 선택한 링크 이름을 입력하고, 만든 구독 및 VNet을 선택합니다. 필요에 따라 두 번째 VNet의 리소스 ID를 입력할 수 있습니다. 자동 등록 사용을 선택하면 두 번째 VNet에 연결된 VM에 대한 DNS 레코드가 자동으로 추가됩니다. VNet 링크를 삭제하면 VM에 대한 DNS 레코드도 삭제됩니다.

프라이빗 링크 DNS 영역이 프라이빗 엔드포인트 IP 주소를 FHIR 서버와 같은 리소스의 FQDN(정규화된 도메인 이름)으로 확인하는 방법에 대한 자세한 내용은 Azure 프라이빗 엔드포인트 DNS 구성을 참조하세요.

VNet 링크를 추가합니다.

필요한 경우 VNet 링크를 더 추가하고 포털에서 추가한 모든 VNet 링크를 볼 수 있습니다.

VNet 링크를 Private Link.

개요 블레이드에서 피어링된 가상 네트워크에 연결된 VM 및 FHIR 서버의 개인 IP 주소를 볼 수 있습니다.

FHIR 및 VM 개인 IP 주소를 Private Link.

프라이빗 엔드포인트 관리

보기

프라이빗 엔드포인트 및 연결된 NIC(네트워크 인터페이스 컨트롤러)는 생성된 리소스 그룹의 Azure Portal 표시됩니다.

리소스에서 보기

삭제

프라이빗 엔드포인트는 개요 블레이드의 Azure Portal 또는 네트워킹 프라이빗 엔드포인트 연결 탭에서 제거 옵션을 선택하여 삭제할 수 있습니다. 제거를 선택하면 프라이빗 엔드포인트와 연결된 NIC가 삭제됩니다. FHIR 리소스 및 공용 네트워크에 대한 모든 프라이빗 엔드포인트를 삭제하면 액세스가 비활성화되고 FHIR 서버에 대한 요청이 없습니다.

프라이빗 엔드포인트 삭제

공용 네트워크 액세스를 사용하지 않도록 설정하면 FHIR 서버가 공용 트래픽을 수신하지 않도록 하려면 컴퓨터에서 서버에 대한 /metadata 엔드포인트를 선택합니다. 403 사용할 수 없음을 받아야 합니다.

참고

공용 트래픽이 차단되기 전에 공용 네트워크 액세스 플래그를 업데이트한 후 최대 5분이 걸릴 수 있습니다.

VM 만들기 및 사용

프라이빗 엔드포인트가 서버로 트래픽을 보낼 수 있도록 하려면 다음을 수행합니다.

  1. 프라이빗 엔드포인트가 구성된 가상 네트워크 및 서브넷에 연결된 VM(가상 머신)을 만듭니다. VM의 트래픽이 프라이빗 네트워크만 사용하고 있는지 확인하려면 NSG(네트워크 보안 그룹) 규칙을 사용하여 아웃바운드 인터넷 트래픽을 사용하지 않도록 설정합니다.
  2. VM에 RDP를 입력합니다.
  3. VM에서 FHIR 서버의 /metadata 엔드포인트에 액세스합니다. 응답으로 capability 문을 받아야 합니다.

nslookup 사용

nslookup 도구를 사용하여 연결을 확인할 수 있습니다. 프라이빗 링크가 제대로 구성된 경우 아래와 같이 FHIR 서버 URL이 유효한 개인 IP 주소로 확인되는 것을 볼 수 있습니다. IP 주소 168.63.129.16 은 Azure에서 사용되는 가상 공용 IP 주소입니다. 자세한 내용은 IP 주소 168.63.129.16이란?을 참조하세요.

C:\Users\testuser>nslookup fhirserverxxx.azurehealthcareapis.com
Server:  UnKnown
Address:  168.63.129.16

Non-authoritative answer:
Name:    fhirserverxxx.privatelink.azurehealthcareapis.com
Address:  172.21.0.4
Aliases:  fhirserverxxx.azurehealthcareapis.com

프라이빗 링크가 제대로 구성되지 않은 경우 공용 IP 주소와 Traffic Manager 엔드포인트를 포함한 몇 가지 별칭이 대신 표시 될 수 있습니다. 이는 프라이빗 링크 DNS 영역이 FHIR 서버의 유효한 개인 IP 주소로 resolve 수 없다는 것을 나타냅니다. VNet 피어링이 구성된 경우 한 가지 가능한 이유는 두 번째 피어링된 VNet이 프라이빗 링크 DNS 영역에 추가되지 않았기 때문입니다. 결과적으로 FHIR 서버의 /metadata 엔드포인트에 액세스하려고 할 때 HTTP 오류 403,"xxx에 대한 액세스가 거부되었습니다."가 표시됩니다.

C:\Users\testuser>nslookup fhirserverxxx.azurehealthcareapis.com
Server:  UnKnown
Address:  168.63.129.16

Non-authoritative answer:
Name:    xxx.cloudapp.azure.com
Address:  52.xxx.xxx.xxx
Aliases:  fhirserverxxx.azurehealthcareapis.com
          fhirserverxxx.privatelink.azurehealthcareapis.com
          xxx.trafficmanager.net

자세한 내용은 Azure Private Link 연결 문제 해결을 참조하세요.

다음 단계

이 문서에서는 프라이빗 링크 및 VNet 피어링을 구성하는 방법을 알아보았습니다. 프라이빗 링크 및 VNet 구성 문제를 해결하는 방법도 알아보았습니다.

프라이빗 링크 설정 및 애플리케이션 등록에 대한 자세한 내용은

FHIR®은 HL7의 등록 상표이며 HL7 의 권한으로 사용됩니다.