Azure Spring Apps 랜딩 존 가속기를 위한 ID 및 액세스 관리

이 문서에서는 Azure Spring Apps에서 사용자를 인증하고 사용자에게 워크로드 리소스에 필요한 수준의 액세스 권한을 부여하기 위한 디자인 고려 사항 및 권장 사항을 설명합니다.

중앙 집중식 플랫폼 팀과 애플리케이션 팀은 다음을 잘 이해해야 합니다.

  • 애플리케이션 랜딩 존에 배포된 Azure Spring 앱 워크로드에 액세스해야 하는 팀입니다.
  • 사용자 및 액세스가 필요한 사용자의 역할 및 책임입니다.
  • 이러한 책임을 수행하는 데 필요한 최소 권한 수준입니다.

플랫폼 디자인에 대한 자세한 내용은 Azure ID 및 액세스 관리 디자인 영역을 참조 하세요.

워크로드 소유자는 이러한 모범 사례를 따라 애플리케이션 리소스가 조직의 보안 또는 거버넌스 경계를 위반하지 않도록 합니다. 목표는 배포된 Azure Spring 앱 및 워크로드의 관련 리소스가 안전하고 권한 있는 사용자만 액세스할 수 있도록 하는 것입니다. 이러한 사례를 따르면 중요한 데이터를 보호하고 앱 및 해당 리소스의 오용을 방지합니다.

디자인 고려 사항

  • 애플리케이션에서 다른 서비스로 액세스합니다. 애플리케이션은 워크로드의 일부인 백 엔드 서비스에 연결할 때 자체 인증해야 합니다. 이 인증은 무단 액세스로부터 서비스를 보호합니다. Microsoft Entra ID의 기능을 사용하여 자격 증명을 저장하고 관리하는 오버헤드를 방지하는 것이 좋습니다.

  • 애플리케이션에 대한 액세스. 사용자는 공용 인터넷을 통해 애플리케이션에 요청을 보낼 수 있습니다. 또는 프라이빗 또는 온-프레미스 네트워크에서 요청이 발생할 수 있습니다. 두 경우 모두 클라이언트 인증서 또는 Microsoft Entra ID를 통해 액세스를 인증해야 합니다.

    앱 간의 호출을 호출하는 서비스 검색 메커니즘에 대한 기술 옵션을 고려합니다. 옵션은 Azure Spring Apps 계층에 따라 달라집니다.

  • 리소스에 대한 운영자 액세스 책임이 다른 팀 구성원이 워크로드에 액세스할 수 있습니다. 예를 들어 다음 액세스 권한을 부여해야 할 수 있습니다.

    • 운영 액세스가 필요한 플랫폼 팀 구성원입니다.
    • 애플리케이션을 개발하는 애플리케이션 팀 구성원입니다.
    • IaC(Infrastructure as Code)를 사용하여 워크로드를 배포하고 구성하는 파이프라인을 빌드하고 릴리스하는 DevOps 엔지니어입니다.
    • 문제 해결을 위한 사이트 안정성 엔지니어입니다.

    액세스 목적에 따라 사용자에게 제공하려는 제어 수준을 결정합니다. 최소 권한의 원칙으로 시작합니다. RBAC 역할 할당은 사용자가 자신의 책임에 대해 올바른 권한 집합을 가지도록 하고 경계를 기본 수 있습니다. 사용자 지정 역할을 만들기 전에 기본 제공 RBAC 역할을 고려합니다.

  • 구성 데이터 액세스. Azure Spring Apps(기본/표준 또는 엔터프라이즈)에 대해 선택한 계층에 따라 구성 서버 옵션을 결정해야 합니다.

    기본의 경우 서버 및 클라이언트 쪽에 대한 지원을 고려합니다. 구성 서버 파일을 저장하려면 Azure DevOps, GitHub, GitLab 또는 Bitbucket과 같은 분산 시스템에서 외부화된 구성을 선택합니다.

    공용 또는 프라이빗 리포지토리를 사용하고 해당 인증 메커니즘을 선택할 수 있습니다. Azure Spring Apps는 기본 암호 또는 토큰 기반 인증 및 SSH를 지원합니다.

    엔터프라이즈의 경우 하나 이상의 Git 리포지토리에 정의된 속성으로 채워진 Kubernetes 네이티브 ConfigMap 리소스를 관리할 수 있도록 하는 VMware Tanzu용 Application Configuration Service를 사용하는 것이 좋습니다.

디자인 권장 사항

관리 ID

Microsoft Entra ID를 통해 인증되도록 애플리케이션에 대한 관리 ID를 사용합니다. 모든 서비스가 Microsoft Entra ID의 이 기능을 지원하는 것은 아닙니다. 자세한 내용은 Microsoft Entra 인증을 지원하는 Azure 서비스를 참조하세요.

사용 사례에 적합한 관리 ID 유형을 결정합니다. 관리의 용이성과 절충을 고려하십시오. 예를 들어 애플리케이션이 여러 리소스에 액세스해야 하는 경우 사용자 할당 관리 ID를 사용하는 것이 좋습니다. 그러나 애플리케이션 수명 주기에 연결된 사용 권한을 원하는 경우 시스템 관리 ID가 더 적합할 수 있습니다.

자세한 내용은 시스템 또는 사용자 할당 관리 ID 선택을 참조 하세요.

기본 제공 Azure RBAC 역할을 사용하여 관리 ID에 필요한 권한의 관리를 간소화합니다.

  • Azure Spring Apps에 고유한 관리 ID를 사용합니다.
  • 시스템 할당 및 사용자 할당 관리 ID를 별도로 사용합니다. 자세한 내용은 관리 ID를 사용하는 경우 모범 사례를 참조 하세요.
  • Microsoft Entra ID에서 Privileged Identity Management를 사용합니다.

인터넷 통신 보안

  • 인증 기관에서 발급한 인증서, 확장 유효성 검사 인증서 또는 wild카드 인증서를 사용합니다.
  • 사전 프로덕션 환경에 대해서만 자체 서명된 인증서를 사용합니다.
  • Azure Key Vault에서 인증서를 안전하게 로드합니다.

RBAC(역할 기반 액세스 제어)

  • 사용자 지정 역할을 만드는 것이 좋습니다. 기본 역할에서 기존 사용 권한을 수정해야 하는 경우 최소 권한 원칙을 따릅니다.
  • 키, 비밀, 인증서 및 애플리케이션 구성에 대한 향상된 보안 스토리지를 선택합니다.
  • 자동화된 배포를 위해 CI/CD 파이프라인에서 배포하는 데 필요한 최소 권한이 있는 서비스 주체를 설정합니다.
  • 애플리케이션 콘솔, 시스템 로그, 수신 로그, 빌드 로그 및 컨테이너 이벤트 로그에 대한 진단 로깅을 사용하도록 설정합니다. 이 자세한 로그를 사용하여 앱 문제를 진단하고 액세스 요청을 모니터링할 수 있습니다. 이러한 로그를 사용하도록 설정하면 Azure Monitor 활동 로그를 통해 구독 수준 이벤트에 대한 인사이트를 얻을 수 있습니다.

다음 단계

네트워크 토폴로지 및 연결