다음을 통해 공유


다중 테넌트 솔루션의 거버넌스 및 규정 준수를 위한 아키텍처 접근 방식

Azure 사용이 완성되면 클라우드 리소스의 거버넌스를 고려하는 것이 중요합니다. 거버넌스에는 테넌트의 데이터를 저장하고 관리하는 방법과 Azure 리소스를 구성하는 방법이 포함됩니다. 또한 규정, 법률 또는 계약상 위임된 표준을 따라야 할 수도 있습니다. 이 문서에서는 다중 테넌트 솔루션에서 거버넌스 및 규정 준수를 고려하는 방법에 대한 정보를 제공합니다. 또한 이러한 문제를 지원하는 주요 Azure 플랫폼 기능 중 일부를 제안합니다.

주요 고려 사항 및 요구 사항

리소스 격리

테넌트의 격리 요구 사항을 충족하도록 Azure 리소스를 구성해야 합니다. Azure 리소스 격리에 대한 지침은 다중 테넌트 솔루션의 Azure 리소스 조직을 참조하세요.

데이터 관리

테넌트 대신 데이터를 저장하는 경우 충족해야 하는 요구 사항 또는 의무가 있을 수 있습니다. 테넌트의 관점에서 볼 때 데이터의 소유권과 제어를 기대하는 경우가 많습니다. 테넌트의 데이터를 격리, 저장, 액세스, 집계하는 방법을 고려합니다. 솔루션 작동 방식에 영향을 줄 수 있는 테넌트의 기대치 및 요구 사항을 파악합니다.

격리

다중 테넌트 솔루션의 스토리지 및 데이터에 대한 아키텍처 접근 방식을 검토하여 테넌트의 데이터를 격리하는 방법을 이해합니다. 테넌트에 자체 데이터 암호화 키를 사용해야 하는 요구 사항이 있는지 여부를 고려합니다.

구현하는 격리 방법 중 어느 것이든 테넌트가 데이터에 대한 감사를 요청할 수 있도록 준비해야 합니다. 테넌트의 데이터를 보관할 수 있는 모든 데이터 저장소를 문서화하는 것이 좋습니다. 일반적인 데이터 원본에는 다음이 포함됩니다.

  • 솔루션의 일부로 배포된 데이터베이스 및 스토리지 계정.
  • 테넌트 간에 자주 공유되는 ID 시스템.
  • 로그.
  • 데이터 웨어하우스.

주권

테넌트의 데이터를 저장하거나 처리할 실제 위치에 대한 제한이 있는지 여부를 이해합니다. 테넌트는 특정 지리적 위치에 데이터를 저장해야 할 수 있습니다. 또한 특정 위치에 데이터를 저장하지 않도록 요구할 수도 있습니다. 이러한 요구 사항은 일반적으로 법률을 기반으로 하지만 문화적 가치와 규범을 기반으로 할 수도 있습니다.

데이터 보존 및 주권에 대한 자세한 내용은 Microsoft Azure 지역에서 데이터 보존 및 데이터 보호 활성화 백서를 참조하세요.

저장하는 데이터에 대한 테넌트의 액세스 권한

테넌트는 때때로 사용자를 대신하여 저장하는 데이터에 대한 직접 액세스를 요청합니다. 예를 들어 데이터를 자체 데이터 레이크로 수집하려고 할 수 있습니다.

이러한 요청에 응답하는 방법을 계획합니다. 테넌트의 데이터가 공유 데이터 저장소에 보관되는지 여부를 고려합니다. 이 경우 테넌트가 다른 테넌트의 데이터에 액세스하지 않도록 방지하는 방법을 계획합니다.

발레 키 패턴을 사용하는 것과 같이 이 요구 사항을 위해 설계하지 않는 한 데이터베이스 또는 스토리지 계정에 직접 액세스하지 않도록 합니다. 통합을 위해 API 또는 자동화된 데이터 내보내기 프로세스를 만드는 것이 좋습니다.

테넌트 시스템 및 외부 시스템과의 통합에 대한 자세한 내용은 테넌트 통합 및 데이터 액세스에 대한 아키텍처 접근 방식을 참조하세요.

테넌트 데이터에 대한 액세스 권한

테넌트의 요구 사항이 데이터 또는 리소스로 작업할 수 있는 직원을 제한하는지 여부를 고려합니다. 예를 들어 다양한 고객이 사용하는 SaaS 솔루션을 빌드한다고 가정해 보겠습니다. 정부 기관은 해당 국가/지역의 시민만 솔루션에 대한 인프라 및 데이터에 액세스할 수 있도록 요구할 수 있습니다. 중요한 고객 워크로드에 대해 별도의 Azure 리소스 그룹, 구독 또는 관리 그룹을 사용하여 이 요구 사항을 충족할 수 있습니다. 특정 사용자 그룹에 대해 엄격한 범위의 Azure RBAC(역할 기반 액세스 제어) 역할 할당을 적용하여 이러한 리소스로 작업할 수 있습니다.

여러 테넌트에서 데이터 집계

여러 테넌트에서 데이터를 결합하거나 집계해야 하는지를 고려합니다. 예를 들어 집계된 데이터를 분석하거나 다른 테넌트에 적용할 수 있는 기계 학습 모델을 학습하나요? 테넌트가 데이터를 사용하는 방법을 이해하도록 합니다. 집계되거나 익명화된 데이터의 사용을 포함합니다.

규정 준수 요구 사항

규정 준수 표준을 충족해야 하는지 여부를 이해하는 것이 중요합니다. 규정 준수 요구 사항은 다음을 비롯한 여러 상황에서 도입될 수 있습니다.

  • 사용자 또는 테넌트 중 어느 것이든 특정 산업 내에서 작업합니다. 예를 들어 테넌트 중 하나라도 의료 업계에서 작업하는 경우 HIPAA 표준을 준수해야 할 수 있습니다.
  • 사용자 또는 테넌트는 현지 법률을 준수해야 하는 지리적 또는 지정학적 지역에 있습니다. 예를 들어 테넌트가 유럽에 있는 경우 GDPR(일반 데이터 보호 규정)을 준수해야 할 수 있습니다.
  • 사이버 보안 정책을 구매하여 위반 위험을 완화합니다. 사이버 보험 공급자는 해당 표준을 따르고 정책이 유효하도록 특정 제어를 적용해야 할 수 있습니다.

Important

규정 준수는 Microsoft, 사용자, 테넌트 간의 공동 책임입니다.

Microsoft는 서비스가 특정 규정 준수 표준 집합을 충족하는지 확인하고 리소스가 해당 표준에 따라 구성되었는지 확인하는 데 도움이 되는 클라우드용 Microsoft Defender와 같은 도구를 제공합니다.

그러나 궁극적으로 솔루션에 적용되는 규정 준수 요구 사항과 해당 표준에 따라 Azure 리소스를 구성하는 방법을 완전히 이해해야 합니다. 자세한 내용은 Azure 규정 준수 제품을 참조하세요.

이 문서에서는 특정 표준을 준수하는 방법에 대한 구체적인 지침을 제공하지 않습니다. 대신 다중 테넌트 솔루션에서 규정 준수 및 거버넌스를 고려하는 방법에 대한 몇 가지 일반적인 지침을 제공합니다.

다른 테넌트가 서로 다른 규정 준수 표준을 따라야 하는 경우 전체 환경에서 가장 엄격한 표준을 준수하도록 계획합니다. 서로 다른 테넌트에 대해 서로 다른 표준을 따르는 것보다 하나의 엄격한 표준을 일관되게 따르는 것이 더 쉽습니다.

고려해야 할 접근 방식 및 패턴

리소스 태그

리소스 태그를 사용하여 테넌트별 리소스에 대한 테넌트 식별자 또는 배포 스탬프 패턴을 사용하여 스케일링할 때 스탬프 식별자를 추적합니다. 리소스 태그를 사용하면 특정 테넌트 또는 스탬프와 연결된 리소스를 빠르게 식별할 수 있습니다.

Access Control

Azure RBAC를 사용하여 다중 테넌트 솔루션을 구성하는 Azure 리소스에 대한 액세스를 제한합니다. 사용자 대신 그룹에 역할 할당을 적용하는 것과 같은 RBAC 모범 사례를 따릅니다. 필요한 최소 권한을 제공하도록 역할 할당 범위를 지정합니다. Just-In-Time 액세스 및 Microsoft Entra ID Privileged Access Management와 같은 기능을 사용하여 리소스에 대한 장기 액세스를 방지합니다.

Azure Resource Graph

Azure Resource Graph를 사용하면 Azure 리소스 메타데이터로 작업할 수 있습니다. Resource Graph를 사용하면 여러 구독에 분산되어 있더라도 많은 수의 Azure 리소스를 쿼리할 수 있습니다. Resource Graph는 특정 형식의 리소스를 쿼리하거나 특정 방식으로 구성된 리소스를 식별할 수 있습니다. 리소스 구성 기록을 추적하는 데 사용할 수도 있습니다.

Resource Graph는 대규모 Azure 자산을 관리하는 데 도움이 될 수 있습니다. 예를 들어 여러 Azure 구독에 테넌트별 Azure 리소스를 배포한다고 가정합니다. 리소스에 태그를 적용하여 Resource Graph API를 사용하여 특정 테넌트 또는 배포 스탬프에서 사용되는 리소스를 찾을 수 있습니다.

Microsoft Purview

Microsoft Purview를 사용하여 저장하는 데이터를 추적하고 분류하는 것이 좋습니다. 테넌트가 데이터에 대한 액세스를 요청하는 경우 포함해야 하는 데이터 원본을 쉽게 확인할 수 있습니다.

표준 준수 확인

Azure Policy, 클라우드용 Microsoft Defender의 규정 준수 포털, Azure Advisor와 같은 도구를 사용합니다. 이러한 도구를 사용하면 규정 준수 요구 사항을 충족하고 권장 모범 사례를 따르도록 Azure 리소스를 구성할 수 있습니다.

규정 준수 설명서 생성

테넌트는 특정 표준 준수를 입증해야 할 수 있습니다. 서비스 신뢰 포털을 사용하여 테넌트 또는 타사 감사자에게 제공할 수 있는 규정 준수 설명서를 생성합니다.

일부 다중 테넌트 솔루션은 Microsoft 365를 통합하고 Microsoft OneDrive, Microsoft SharePoint, Microsoft Exchange Online 같은 서비스를 사용합니다. Microsoft Purview 규정 준수 포털은 이러한 서비스가 규정 표준을 준수하는 방법을 이해하는 데 도움이 됩니다.

배포 스탬프 패턴

테넌트별 요구 사항을 준수해야 하는 경우 배포 스탬프 패턴을 따르는 것이 좋습니다.

예를 들어 솔루션 스탬프를 여러 Azure 지역에 배포할 수 있습니다. 그런 다음, 데이터를 배치해야 하는 지역에 따라 스탬프에 새 테넌트 할당을 수행할 수 있습니다.

마찬가지로 새 테넌트는 기존 솔루션 구성 요소 내에서 충족할 수 없는 엄격한 규정 준수 요구 사항을 도입할 수 있습니다. 해당 테넌트에 대한 전용 스탬프를 배포한 다음, 요구 사항에 따라 구성할 수 있습니다.

피해야 할 안티패턴

  • 테넌트의 규정 준수 요구 사항을 이해하지 않습니다. 테넌트가 부과할 수 있는 규정 준수 요구 사항을 가정하지 않는 것이 중요합니다. 솔루션을 새로운 시장으로 확장하려는 경우 테넌트가 운영될 수 있는 규제 환경을 염두에 두어야 합니다.
  • 모범 사례를 무시합니다. 규정 준수 표준을 즉시 준수할 필요가 없는 경우 Azure 리소스를 배포할 때 모범 사례를 따라야 합니다. 예를 들어 리소스를 격리하고, 정책을 적용하여 리소스 구성을 확인하고, 사용자 대신 그룹에 역할 할당을 적용합니다. 모범 사례를 따르면, 결국 그렇게 해야 할 때 규정 준수 표준을 더 간단하게 따를 수 있습니다.
  • 규정 준수 요구 사항이 없다고 가정합니다. 다중 테넌트 솔루션을 처음 시작할 때 규정 준수 요구 사항을 인식하지 못하거나 준수 요구 사항을 따르지 않아도 될 수 있습니다. 성장함에 따라 다양한 표준을 준수한다는 증거를 제공해야 할 수 있습니다. 명시적 요구 사항이 있기 전에도 클라우드용 Microsoft Defender 사용하여 CIS Microsoft Foundations Benchmark와 같은 일반적인 기준선에 대해 규정 준수 상태를 모니터링합니다.
  • 관리를 계획하지 않습니다. Azure 리소스를 배포할 때 해당 리소스를 관리하는 방법을 고려합니다. 리소스를 대량 업데이트해야 하는 경우 Azure CLI, Azure PowerShell, Azure Resource Graph, Azure Resource Manager API와 같은 자동화 도구를 이해해야 합니다.
  • 관리 그룹을 사용하지 않습니다. 각 범위에서 액세스 제어 및 Azure Policy 리소스를 포함하여 구독 및 관리 그룹 계층 구조를 계획합니다. 리소스가 프로덕션 환경에서 사용될 때 이러한 요소를 도입하거나 변경하는 것은 어렵고 방해가 될 수 있습니다.
  • 액세스 제어 전략을 계획하지 못했습니다. Azure RBAC는 리소스에 대한 액세스를 관리하는 방법에 대한 높은 수준의 제어 및 유연성을 제공합니다. 개별 사용자에게 사용 권한을 할당하지 않도록 Microsoft Entra 그룹을 사용해야 합니다. 보안과 유연성 간의 적절한 균형을 제공하는 범위에서 역할을 할당합니다. 가능한 경우 기본 제공 역할 정의를 사용하고 필요한 최소 권한을 제공하는 역할을 할당합니다.
  • Azure Policy를 사용하지 않습니다. Azure Policy를 사용하여 Azure 환경을 관리하는 것이 중요합니다. 정책을 계획하고 배포한 후에는 정책 준수를 모니터링하고 위반 또는 예외를 신중하게 검토해야 합니다.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

  • John Downs | 주요 소프트웨어 엔지니어

기타 기여자:

비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인하세요.

다음 단계

비용 관리 및 할당 방식을 검토합니다.