다음을 통해 공유


Azure의 Citrix에 대한 보안 거버넌스 및 규정 준수

Azure에서 Citrix DaaS를 배포하려면 적절한 보안 거버넌스와 규정 준수가 필요합니다. 운영 우수성과 성공을 달성하려면 적절한 정책을 사용해 Citrix DaaS 환경을 디자인합니다.

디자인 고려 사항 및 권장 사항

Azure Policy는 Azure 배포에서 Citrix에 관한 중요한 도구입니다. 정책은 클라우드 플랫폼 팀이 설정하는 보안 표준을 준수하는 것에 도움이 될 수 있습니다. 지속적인 규정 준수를 지원하기 위하여 정책은 자동으로 규정을 적용하고 보고서를 제공할 수 있습니다.

Azure 거버넌스 지침에 따라 플랫폼 팀과 함께 정책 기준을 검토합니다. 상속된 범위에서 정의를 할당할 수 있게 최상위 루트 관리 그룹에서 정책 정의를 적용합니다.

이 문서에서는 ID, 네트워킹, 바이러스 백신 권장 사항에 중점을 둡니다.

  • ID 섹션에서는 Citrix DaaS 서비스 ID 및 해당 요구 사항에 대해 설명합니다.

  • 네트워킹 섹션에서는 NSG(네트워크 보안 그룹) 요구 사항을 설명합니다.

  • 바이러스 백신 섹션은 DaaS 환경에서 바이러스 백신 보호를 구성하는 모범 사례에 대한 링크를 제공합니다.

서비스 주체 역할과 ID

다음 섹션에서는 Citrix DaaS 서비스 주체의 생성, 역할, 요구 사항에 대해 설명합니다.

앱 등록

앱 등록은 Citrix Cloud가 Azure를 신뢰할 수 있도록 Citrix Cloud 계정 및 Azure 간에 단방향 트러스트 관계를 만드는 프로세스입니다. 앱 등록 프로세스는 Citrix Cloud가 호스팅 연결을 통하여 모든 Azure 작업에 사용할 수 있는 Azure 서비스 주체 계정을 만듭니다. Citrix Cloud 콘솔에 설정된 호스팅 연결은 클라우드 커넥터를 통하여 Citrix Cloud를 Azure의 리소스 위치에 연결합니다.

Citrix 리소스를 포함하는 리소스 그룹에 관한 액세스 권한을 서비스 주체에게 부여해야 합니다. 조직의 보안 태세에 따라 기여자 수준에서 구독 액세스를 제공하거나 서비스 주체에 대한 사용자 지정 역할을 만들 수 있습니다.

Microsoft Entra ID에서 서비스 주체를 만들 때, 다음 값을 설정합니다.

  • 리디렉션 URI를 추가하고 값이 https://citrix.cloud.com으로 설정합니다.

  • API 사용 권한의 경우 조직에서 사용하는 API에서 Azure Services Management API를 추가하고 위임된 user_impersonation 권한을 선택합니다.

  • 인증서 & 암호의 경우, 권장 만료 기간이 1년인 새 클라이언트 암호를 만듭니다. 보안 키 회전 일정의 일부로 이 암호를 정기적으로 업데이트해야 합니다.

Citrix Cloud 내에서 호스팅 연결 설정을 구성하려면 애플리케이션(클라이언트) ID와 앱 등록의 클라이언트 암호 이 모두 필요합니다.

엔터프라이즈 애플리케이션

Citrix Cloud 및 Microsoft Entra 구성에 따라 하나 이상의 Citrix Cloud 엔터프라이즈 애플리케이션을 Microsoft Entra 테넌트에 추가할 수 있습니다. 이러한 애플리케이션은 Citrix Cloud 액세스 권한을 Microsoft Entra 테넌트에 저장된 데이터에 부여합니다. 다음 표에서는 Microsoft Entra ID에서 Citrix Cloud 엔터프라이즈 애플리케이션의 애플리케이션 ID와 함수를 나열합니다.

엔터프라이즈 애플리케이션 ID 목적
f9c0e999-22e7-409f-bb5e-956986abdf02 Microsoft Entra ID 및 Citrix Cloud 간의 기본 연결
1b32f261-b20c-4399-8368-c8f0092b4470 관리자 초대와 로그인
e95c4605-aeab-48d9-9c36-1a262ef8048e 작업 영역 구독자 로그인
5c913119-2257-4316-9994-5e8f3832265b Citrix 엔드포인트 관리를 사용하는 Microsoft Entra ID 및 Citrix Cloud 간의 기본 연결
e067934c-b52d-4e92-b1ca-70700bd1124e Citrix 엔드포인트 관리를 사용하는 Microsoft Entra ID 및 Citrix Cloud 간의 레거시 연결

각 엔터프라이즈 애플리케이션은 Microsoft Graph API 혹은 Microsoft Entra API에 Citrix Cloud 관련 권한을 부여합니다. 예를 들어, 작업 영역 구독자 로그인 애플리케이션은 사용자가 로그인하고 프로필을 읽을 수 있도록 두 API에 User.Read 권한을 부여합니다. 자세한 내용은 Citrix Cloud에 대한 Microsoft Entra 권한을 참조하세요 .

기본 제공 역할

서비스 주체를 만든 후에 구독 수준에서 기여자 역할을 부여합니다. 구독 수준에서 기여자 권한을 부여하기 위해선 적어도 Azure 역할 기반 액세스 제어 관리자 역할이 필요합니다. Azure는 Citrix Cloud에서 Microsoft Entra ID로 초기 연결 도중에 필요한 권한을 묻는 메시지를 표시합니다.

호스트 연결을 만들 때 인증에 사용하는 모든 계정도 구독에서 기여자 이상이어야 합니다. 이 수준의 사용 권한을 통하여 Citrix Cloud는 제한 없이 필요한 개체를 만들 수 있습니다. 일반적으로 전체 구독에 Citrix 리소스만 있는 경우, 이 방법을 사용합니다.

일부 환경에서는 서비스 주체가 구독 수준에서 기여자 권한을 가질 수 있도록 허용하지 않습니다. Citrix는 범위가 좁은 서비스 주체라는 대체 솔루션을 제공합니다. 범위가 좁은 서비스 주체의 경우, 클라우드 애플리케이션 관리자가 애플리케이션 등록을 수동으로 완료한 다음 구독 관리자가 서비스 주체 계정에 적절한 권한을 수동으로 부여합니다.

범위가 좁은 서비스 주체에는 전체 구독에 관한 기여자 권한이 없습니다. 머신 카탈로그를 만들고 관리하는 데 필요한 리소스 그룹, 네트워크, 이미지에 대한 권한만 있습니다. 다음 역할이 범위가 좁은 서비스 주체에 필요합니다.

  • 미리 생성된 리소스 그룹에는 Virtual Machine 기여자, 스토리지 계정 기여자, 디스크 스냅샷 기여자가 필요합니다.

  • 가상 네트워크에는 Virtual Machine 기여자가 필요합니다.

  • 스토리지 계정에는 Virtual Machine 기여자가 필요합니다.

사용자 지정 역할

범위가 좁은 서비스 주체에는 보안에 민감한 환경에 적합하지 않을 수도 있는 광범위한 기여자 권한이 있습니다. 보다 세부적인 접근 방식을 제공하기 위하여 두 개의 사용자 지정 역할을 사용해 서비스 주체에 필요한 권한을 제공할 수 있습니다. Citrix_Hosting_Connection 역할은 호스팅 연결을 만들기 위한 액세스 권한을 부여하며 Citrix_Machine_Catalog 역할은 Citrix 워크로드를 만들기 위한 액세스 권한을 부여합니다.

Citrix_Hosting_Connection 역할

Citrix_Hosting_Connection 역할에 대한 다음 JSON 설명에는 호스팅 연결을 만드는 데 필요한 최소 권한이 있습니다. 스냅샷만 사용하거나 컴퓨터 카탈로그 골든 이미지에 디스크만 사용하는 경우 actions 목록에서 사용하지 않는 권한을 제거할 수 있습니다.

{
    "id": "",
    "properties": {
        "roleName": "Citrix_Hosting_Connection",
        "description": "Minimum permissions to create a hosting connection. Assign to resource groups that contain Citrix infrastructure such as cloud connectors, golden images, or virtual network resources.",
        "assignableScopes": [
            "/"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Resources/subscriptions/resourceGroups/read",
                    "Microsoft.Compute/snapshots/read",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Network/virtualNetworks/read",
                    "Microsoft.Network/virtualNetworks/subnets/join/action"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

클라우드 커넥터, 골든 이미지 또는 가상 네트워크 리소스가 있는 Citrix_Infrastructure 리소스 그룹에 Citrix_Hosting_Connection 사용자 지정 역할을 할당합니다. 이 JSON 역할 설명을 복사해 사용자 지정 Microsoft Entra 역할 정의에 직접 붙여넣을 수 있습니다.

Citrix_Machine_Catalog 역할

Citrix_Machine_Catalog 역할에 대한 다음 JSON 설명에는 Citrix Machine Catalog 마법사가 Azure 내에서 필요한 리소스를 만드는 데 필요한 최소 권한이 있습니다.

{
    "id": "",
    "properties": {
    "roleName": "Citrix_Machine_Catalog",
    "description": "The minimum permissions to create a machine catalog. Assign to resource groups that contain Citrix workload servers that run the Virtual Delivery Agent.",
    "assignableScopes": [
    "/"
    ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Resources/subscriptions/resourceGroups/read",
                    "Microsoft.Storage/storageAccounts/listkeys/action",
                    "Microsoft.Storage/storageAccounts/read",
                    "Microsoft.Storage/storageAccounts/write",
                    "Microsoft.Network/networkSecurityGroups/write",
                    "Microsoft.Compute/virtualMachines/write",
                    "Microsoft.Compute/virtualMachines/start/action",
                    "Microsoft.Compute/virtualMachines/restart/action",
                    "Microsoft.Compute/virtualMachines/read",
                    "Microsoft.Compute/virtualMachines/powerOff/action",
                    "Microsoft.Compute/virtualMachines/performMaintenance/action",
                    "Microsoft.Compute/virtualMachines/deallocate/action",
                    "Microsoft.Compute/virtualMachines/delete",
                    "Microsoft.Compute/virtualMachines/convertToManagedDisks/action",
                    "Microsoft.Compute/virtualMachines/capture/action",
                    "Microsoft.Compute/snapshots/endGetAccess/action",
                    "Microsoft.Compute/snapshots/beginGetAccess/action",
                    "Microsoft.Compute/snapshots/delete",
                    "Microsoft.Compute/snapshots/write",
                    "Microsoft.Compute/snapshots/read",
                    "Microsoft.Compute/disks/endGetAccess/action",
                    "Microsoft.Compute/disks/delete",
                    "Microsoft.Compute/disks/beginGetAccess/action",
                    "Microsoft.Compute/disks/write",
                    "Microsoft.Network/networkSecurityGroups/read",
                    "Microsoft.Network/networkInterfaces/delete",
                    "Microsoft.Network/networkInterfaces/join/action",
                    "Microsoft.Network/networkInterfaces/write",
                    "Microsoft.Network/networkInterfaces/read",
                    "Microsoft.Storage/storageAccounts/listServiceSas/action",
                    "Microsoft.Storage/storageAccounts/listAccountSas/action",
                    "Microsoft.Storage/storageAccounts/delete",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Resources/subscriptions/resourceGroups/delete",
                    "Microsoft.Resources/subscriptions/resourceGroups/write",
                    "Microsoft.Network/virtualNetworks/subnets/join/action",
                    "Microsoft.Network/virtualNetworks/subnets/read",
                    "Microsoft.Network/virtualNetworks/read",
                    "Microsoft.Network/networkSecurityGroups/join/action"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

Citrix_Machine_Catalog 사용자 지정 역할을 Citrix VDA(가상 배달 에이전트) VM(가상 머신)이 있는 Citrix_MachineCatalog 리소스 그룹에 할당합니다. 이 JSON 역할 설명을 복사해 사용자 지정 Microsoft Entra 역할 정의에 직접 붙여넣을 수 있습니다.

네트워킹

NSG는 상태 저장이므로 VM, 서브넷 혹은 둘 다에 적용할 수 있는 반환 트래픽을 허용합니다. 서브넷과 VM NSG가 모두 있는 경우, 서브넷 NSG는 먼저 인바운드 트래픽에 적용되고 VM NSG는 아웃바운드 트래픽에 먼저 적용됩니다. 기본적으로 가상 네트워크는 호스트 간의 모든 트래픽 및 부하 분산 장치의 모든 인바운드 트래픽을 허용합니다. 기본적으로 가상 네트워크는 아웃바운드 인터넷 트래픽만 허용하며 다른 모든 아웃바운드 트래픽을 거부합니다.

잠재적인 공격 벡터를 제한하고 배포 보안을 강화하려면 NSG를 사용해 Citrix Cloud 환경에서 예상되는 트래픽만 허용합니다. 다음 표에서는 Citrix 배포에서 허용해야 하는 필수 네트워킹 포트와 프로토콜을 나열합니다. 이 목록에는 Citrix 인프라에서 사용하는 포트만 포함되고 애플리케이션에서 사용하는 포트는 포함되지 않습니다. VM을 보호하는 NSG에서 모든 포트를 정의해야만 합니다.

원본 대상 프로토콜 포트 목적
클라우드 커넥터 *.digicert.com HTTP 80 인증서 해지 확인
클라우드 커넥터 *.digicert.com HTTPS 443 인증서 해지 확인
클라우드 커넥터 dl.cacerts.digicert.com/DigiCertAssuredIDRootCA.crt HTTPS 443 인증서 해지 확인
클라우드 커넥터 dl.cacerts.digicert.com/DigiCertSHA2AssuredIDCodeSigningCA.crt HTTPS 443 인증서 해지 확인
클라우드 커넥터 클라우드 커넥터 TCP(Transmission Control Protocol) 80 컨트롤러 간의 통신
클라우드 커넥터 클라우드 커넥터 TCP 89 로컬 호스트 캐시
클라우드 커넥터 클라우드 커넥터 TCP 9095 오케스트레이션 서비스
클라우드 커넥터 VDA TCP, UDP(User Datagram Protocol) 1494 ICA/HDX 프로토콜

UDP가 EDT(인식 데이터 전송)에 필요합니다.
클라우드 커넥터 VDA TCP, UDP 2,598 세션 안정성

UDP를 필요로 하는 UDT
클라우드 커넥터 VDA TCP 80(양방향) 애플리케이션과 성능 검색
VDA 게이트웨이 서비스 TCP 443 랑데부 프로토콜
VDA 게이트웨이 서비스 UDP 443 게이트웨이 서비스로 443 이상 EDT와 UDP
VDA *.nssvc.net

*.c.nssv.net

*.g.nssv.net
TCP, UDP 443 게이트웨이 서비스 도메인과 하위 도메인
Citrix Provisioning Services 클라우드 커넥터 HTTPS 443 Citrix Cloud Studio 통합
Citrix 라이선스 서버 Citrix Cloud HTTPS 443 Citrix Cloud 라이선싱 통합
CVAD 원격 PowerShell SDK Citrix Cloud HTTPS 443 SDK를 통하여 원격 PowerShell 스크립트를 실행하는 모든 시스템
WEM(작업 영역 환경 관리) 에이전트 WEM 서비스 HTTPS 443 에이전트 대 서비스 통신
WEM 에이전트 클라우드 커넥터 TCP 443 등록 트래픽

Citrix 애플리케이션 배달 관리에 대한 네트워크 및 포트 요구 사항에 대한 자세한 내용은 시스템 요구 사항을 참조하세요.

바이러스 백신

사용자 환경 보호에 바이러스 백신 소프트웨어는 중요한 요소입니다. 원활한 작업을 보장하려면 바이러스 백신을 Citrix DaaS 환경에서 적절하게 구성합니다. 잘못된 바이러스 백신 구성으로 인해 성능 문제, 고객 환경 저하 혹은 다양한 구성 요소의 시간 제한 및 실패가 발생할 수 있습니다. Citrix DaaS 환경에서 바이러스 백신을 구성하는 방법에 대한 자세한 내용은 엔드포인트 보안, 바이러스 백신 및 맬웨어 방지 모범 사례를 참조하세요.

다음 단계

Azure에서 Citrix 배포와 관련된 비즈니스 연속성과 재해 복구에 대한 중요한 디자인 고려 사항 및 권장 사항을 검토합니다.