클라우드 아키텍트: ID 및 액세스 관리

참고

IDaaS(Identity as-a-service)

호스팅 환경의 리소스에 대한 액세스를 제어하는 데 도움이 되는 클라우드 기반의 ID 및 액세스 관리 솔루션이다. IDaaS의 장점은 바로 속도입니다. IT 리소스를 사용자에게 배포하기 위한 보다 간편하고 빠른 관리 툴을 제공할 수 있습니다.

클라우드 ID 액세스 관리가 필요한 이유

  1. 간단하면서도 안전한 액세스: SaaS앱이 디지털 혁신을 추구하고 있지만, 온프레미스 시스템이 기반일 경우가 많습니다. IAM 솔루션을 활용하면 둘다 지우너할 수 있습니다.
  2. 비즈니스의 속도로 앱 제공: Cloud Identity를 활용하면 중요한 애플리케이션에 대한 액세스 권한을 기존보다 50%이상 더 빠르게 확보할 수 있습니다.
  3. 속도에 맞게 혁신: 기존 투자를 활용하여 온프레미스에서 클라우드로 전환하거나, 클라우드 ID를 사용하는 전체 클라우드 접근 방식으로 모두 전환할 수 있습니다.
  4. 비용 절감: IAM-as-a-service 서비스 제공은 인프라 공간을 최소화하고 IaaS 어플라이언스 비용을 줄여줍니다.
  5. 배치시간 단축: 기본 제공 워크플로우로 비즈니스 프로세스를 표준화할 때, ㅅ장 출시 속도를 높이고 IT 관리자 오버헤드를 줄여줍니다.

클라우드 IAM 작업

MFA(다중 요소 인증)

→ An Azure AD Conditional Access Policy
→ cf. A Public Azure Load Balancer, an App Service Plan

싱글 사인온(SSO)

모든 디바이스에서 모든 애플리케이션에 대해 통합 애플리케이션 런치패드 및 싱글 사이온을 사용하여 사용자 이름과 비밀번호를 귀찮게 입력할 필요가 없습니다. 단일 로그인 신임 정보 세트를 이용하여 모든 브라우저, 모바일 및 온프레미스 애플리케이션에 대한 원클릭 액세스를 사용자에게 제공합니다.

  • 클라우드 응용 프로그램은 SSO(Single Sign-On)에 OpenID 연결, OAuth, SAML, 암호 기반, 연결 됨 또는 비활성화 된 방법을 사용합니다.
  • 온-프레미스 응용 프로그램은 SSO(Single Sign-On)에 암호 기반, 통합 Windows 인증, 헤더 기반, 연결 됨 또는 비활성화 된 방법을 사용합니다.

사용자 라이프 사이클 관리

보다 쉬운 사용자 온보딩, 오프보딩 및 셀프 서비스를 위해 애플리케이션에 대한 사용자 액세스를 요청, 승인, 프로비저닝 및 디프로비저닝합니다.

Azure의 Identity Architecture

Multi-tenancy

  • Application data is shared among the users within a tenant, but not with other tenants.
  • Each tenant has a dedicated physical instance.

1. Resource Forests

  • On-premise network: The on-premises network contains its own Active Directory forest and domains.
  • Active Directory servers: These are domain controllers implementing domain services running as VMs in the cloud. These servers host a forest containing one or more domains, separate from those located on-premises.
  • One-way trust relationship: This relationship enables on-premises users to access resources in the domain inAzure, but not the other way around.
  • Active Directory Subnet: The AD DS servers are hosted in a separate subnet. Network Security Group(NSG) rules protect the AD DS Servers and provide a firewall against traffic from unexpected sources.
  • Azure gateway: provides a connection between the on-premises network and the Azure VNet. This can be a VPN connection or Azure Express Route.

2. Azure virtual network

  • On-premises network
  • Azure Directory servers
  • Active Directory subnet
  • Azure Gateway and Active Directory synchronization: The Azure Gateway provides a connection between the on-premises network and the Azure VNet. This can be a VPN Connection or Azure ExpressRoute. This can be a VPN Connection or Azure Express Route. All Synchronization requests between the Active DS in the cloud and on-premises pass through the gateway. User-defined Routes(UDRs) handle routing for on-premises traffic that passes to Azure.

3. Extend on-premises AD FS to Azure

This reference architecture implements a secure hybrid network that extends your on-premises network to Azure and uses Active Directory Federation Services to perform federated authentication and authorization for components running in Azure.

  • AD DS subnet: The AD DS servers are contained in their own subnet with network security group(NSG) rules acting as a firewall.
  • AD DS servers: Domain controllers running as VMs in nAzure. These servers provide authentication of local identities within the domain.
  • AD FS subnet: The AD FS servers are located within their own subnet with NSG rules acting a firewall.
  • AD FS servers: The AD FS servers provide federated authorization and authentication. 1) Receiving security tokens containing claims made by a partner federation server on behalf of a partner user. The application running in Azure is the relying party. The partner federation server must issue claims that are understood by the web application. 2) Authenticating and authorizing incoming requests from external users running a web browser or device that needs access to web applications.
  • AD FS proxy subnet: The AD FS proxy servers can be contained within their own subnet, with NSG rules providing protection.
  • AD FS web application proxy (WAP) servers: These VMs act as AD FS servers for incoming requests from partner organizations and external devices.
  • Partner organization: A partner organization running a web application that requests access to a web application running in Azure.

4. Hybrid Identity

  1. tenant를 만들고
  2. User를 만들고
  3. Azure, Azure StackHub에 application resources를 deploy, manage, oprate
  4. service principle을 세우고
  5. service principle을 deploy하고
  6. Application resources 가 네트워크를 통해서 communicate 할 수 있다.

5. Integrate on-premise AD domains with Azure AD

  • Azure AD tenant
  • Web tier subnet: Azure AD can act as identity broker for this application.
  • On-premises AD DS server: An on-premises directory and identity service. The AD DS directory can be synchronized with Azure AD to enable it to authenticate on-premises users.
  • Azure AD connect sync server
  • VMs for N-tier application

6. Integrate on-premises AD with Azure

  • Use Azure AD to create an Active Directory domain in the cloud and connect it to your on-premises Active Directory domain. Azure AD Connect integrates your on-premises directories with Azure AD.
  • Extend your existing on-premises Active Directory infrastructure to Azure, by deploying a VM in Azure that runs AD DS as a Domain Controller. This architecture is more common when the on-premises network and the Azure virtual network are connected by a VPN or ExpressRoute Connection. Several variations of this architecture are possible.
    → Create a domain in Azure and join it to your on-premises AD forest.
    → Create a separate forest in Azure that is trusted by domains in your on-premises forest.
    → Replicate an Active Directory Federation Services deployment to Azure.
  • on-premises Active Directory forest
    integrate on-premise & azure → ensure that group owners are emailed monthly about the group memberships they manage: Azure AD Access Reviews

7. Azure AD management for AWS

Azure AD offers several capabilities for direct integration with AWS:

  • SSO across legacy, traditional, and modern authentication solutions.
  • MFA, including integration with several third-party solutions from Microsoft Intelligent Security Association(MISA) Partners.
  • Powerful Conditional Access features for strong authentication and strict governance.
  • Large-scale threat detection and automated response.
  • Privileged Access Management(PAM) to enable Just-In-Time(JIT) provisioning to specific resources.

1. 사용자 및 그룹 관리

워크로드로 전환하려면 서버, 웹 사이트, 데이터를 이동하는 것 이상의 작업이 필요합니다. 회사는 이 리소스를 보호하고, 권한 있는 사용자를 확인하여 사용자가 액세스한 데이터, 만든 서비스 및 수행한 작업을 허용하는 방법을 고려해야 합니다. AAD는 보다 편리하게 새 직원을 온보딩하고 이전 직원의 액세스 권한을 제거할 수 있도록 Single Sign-On 기능을 제공합니다.

중앙에서 액세스를 제어하고, 각 사용자에게 모든 서비스에 사용되는 완벽한 ID를 제공하며, 직원과 공급업체가 업무 수행에 ‘필요한 최소 액세스 권한만' 갖도록 해야 합니다. 직원이 퇴사하거나 공급업체 계약이 종료될 때 액세스 권한을 제거하는 것은 더욱 중요합니다.

Keyword: Azure AD, windows Server Active Directory, 테넌트, 구독 및 사용자, Azure AD Connect(하이브리드 ID 솔루션)

역할을 사용하여 리소스 액세스 제어

  • 소유자 / 참가자 / 읽기 권한자
  • 각 역할은 JSON 파일에 정의된 속성 집합입니다. 역할 정의에는 이름, ID 및 설명이 포함됩니다. 허용된 권한(Actions), 거부된 권한(NotActions) 및 역할의 범위도 포함됩니다.
  • 역할 정의는 사용권한 컬렉션입니다. 역할 정의에는 읽기, 쓰기, 삭제 등의 수행할 수 있는 작업이 나열됩니다.
  • ActionsNotActions 속성을 조정하여 필요한 사용 권한을 정확히 부여하고 거부할 수 있습니다. 두 속성은 항상 {Company}.{ProviderName}/{resourceType}/{action} 형식입니다. (Actions에서 Not Actions를 제외하여 허용된 작업 목록을 정의합니다.)
  • 데이터 작업은 DataActionsNotDataActions 속성에 지정됩니다. 데이터 작업은 관리 작업과 별도로 지정할 수 있습니다. 이렇게 하면 와일드카드(*)를 사용한 현재 역할 할당이 갑자기 데이터에 액세스할 수 있게 되는 경우를 방지할 수 있습니다.

PIM(Privileged Identity Management)

  • Premium P2가 필요
  • With just-in-time access, your virtual machines are only accessed based on rules that you configure. (MFA is one of the privileged Identity Management)’
  • Assign time-bound access to resources using start and end dates
  • ability to conduct access reviews ( Azure Active Directory (Azure AD) access reviews enable organizations to efficiently manage group memberships, access to enterprise applications, and role assignments. User’s access can be reviewed on a regular basis to make sure only the right people have continued access. ) Azure Active Directory (Azure AD) Privileged Identity Management (PIM) is a service that enables you to manage, control, and monitor access to important resources in your organization.
  • Allow Access Control for the sign-in risk : allow access and require multi-factor authentication

Azure Managed Identities

Managed identities for Azure resources is a feature of Azure Active Directory.

  • This also helps accessing Azure Key Vault where developers can store credentials in a secure manner. Managed identities for Azure resources solves this problem by providing Azure services with an automatically managed identity in Azure AD.
  • 예제) use secure credentials to access these services.
    → Azure Key Vault: Azure Managed Identity
    → Azure SQL: Azure Managed Identity
    → Cosmos DB: Azure Managed Identity
    Managed Identities for Azure resources is the new name for the service formerly known as Managed Service Identity.(MSI)
  • Change the pacing tier: You need 10 recommend a solution to increase the available throughput of the key vault the solution must minimize costs.
  • User-assigned managed identity can be shared. The same user-assigned managed identity can be associated with more than one Azure resource
  • System-assigned managed identity cannot be shared. It can only be associated with a single Azure resource.

Azure AD Connect

온-프레미스 Windows Server Active Directory 솔루션을 사용하는 회사는 Azure AD Connect 를 통해 기존 사용자 및 그룹과 Azure Active Directory를 통합할 수 있습니다. Azure AD Connect는 로컬 AD와 Azure 디렉터리를 동기화하기 위해 다운로드하여 설치할 수 있는 무료 도구입니다.

  • 동기화 서비스, 상태 모니터링, AD FS(AD FS를 사용하여 도메인 가입 SSO, Active Directory 로그인 정책 적용, 스마트 카드 또는 타사 다단계 인증 등의 복잡한 배포를 해결할 수 있습니다 → 페더레이션은 신뢰가 설정된 도메인의 컬렉션), 암호해시 동기화, 통과 인증
  • Password hash synchronization, Pass-through authentication, Federation integration, Synchronization, Health Monitoring Password hash synchronization is one of the sign-in methods used to accomplish hybrid identity. Azure AD Connect synchronizes a hash, of the hash, of a user’s password from an on-premises Active Directory instance to a cloud-based Azure AD instance.
    → With Password hash synchronization + Seamless SSO the authentication is in the cloud. So it is available to authenticate if the internet connection to the on-premises AD. minimize authentication prompts for the users.
  • Password Hash Sync: completely
  • Pass-through Auth + Seamless SSO: enforce native policies, single password
  • Pass-through Auth + Seamless SSO with Password Hash Sync: enforce native policies, Disaster Recovery, single password
  • Federation: Not Native, Federation Provider
  • Federation with Password Hash sync: Not Native, Federation Provider, Disaster Recovery

Seamless SSO is not applicable to Active Directory Federation Services (ADFS). Instead install and configure an Azure AD Connect server. Azure Active Directory Seamless Single Sign-On (Azure AD Seamless SSO) automatically signs users in when they are on their corporate devices connected to your corporate network. This feature provides your users easy access to your cloud-based applications without needing any additional on-premises components.

AAD Connect Health

It enables you to maintain a reliable connection to Microsoft 365 and Microsoft Online Services. This reliability is achieved by providing monitoring capabilities for your key identity components. Also, it makes the key data points about these components easily accessible.

Azure Dynamic Users

In Azure Active Directory (Azure AD), you can create complex attribute-based rules to enable dynamic memberships for groups. Dynamic group membership reduces the administrative overhead of adding and removing users.

Azure Active Directory

  • 사용자 계정: 기본 권한 세트가 부여됩니다. 사용자 계정 액세스는 사용자 유형, 역할 할당 및 개별 개체의 소유권으로 구성됩니다.
  • Azure AD 에는 다양한 형식의 사용자 계정이 있습니다. 각 형식에는 각 사용자 계정 형식으로 수행해야 하는 작업 범위에 관련된 액세스 수준이 있습니다. 관리자의 액세스 수준이 가장 높고 다음으로 높은 액세스 수준은 Azure AD 조직의 멤버 사용자 계정입니다. 게스트 사용자의 액세스 수준이 가장 제한적입니다.
  • Azure AD 역할을 사용하여 사용자, 그룹, 청구, 라이선스, 애플리케이션 등록 등과 같은 Azure AD 관련 리소스를 관리할 수 있습니다.
  • RBAC 역할을 사용하여 가상 머신, SQL 데이터베이스 또는 스토리지와 같은 Azure 리소스에 대한 액세스를 관리합니다. 예를 들어 사용자에게 RBAC 역할을 할당하여 특정 리소스 그룹 또는 구독의 SQL 데이터베이스를 관리하고 삭제할 수 있습니다.
  • 액세스 권한을 할당하는 방법: 직접 할당, 그룹 할당, 규칙 기반 할당

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

Azure Active Directory B2B

  • 외부 사용자에게 조직 리소스에 대한 임시 또는 제한된 액세스 권한이 필요한 모든 시나리오에서 외부 사용자에게 게스트 사용자 액세스 권한을 부여합니다. 해당하는 제한 사항을 적용하여 게스트 사용자 액세스 권한을 부여할 수 있습니다. 그런 다음, 작업이 완료되면 액세스 권한을 제거합니다.
  • Azure AD B2B를 사용하면 파트너의 자격 증명 및 ID를 관리하고 인증할 책임이 없습니다. 파트너는 IT 부서가 없어도 협업할 수 있습니다. 예를 들어 개인 또는 비즈니스 메일 주소만 있고 IT 부서에서 관리하는 ID 관리 솔루션이 없는 계약자와 협업할 수 있습니다.
  • 페더레이션의 경우보다 훨씬 더 쉽게 외부 사용자에게 액세스 권한을 부여할 수 있습니다. AD 관리자가 외부 사용자 계정을 만들고 관리할 필요가 없습니다. 권한 있는 사용자는 다른 사용자를 초대할 수 있습니다. 예를 들어 라인 관리자는 외부 사용자를 초대하여 팀과 협업할 수 있습니다. 협업이 더 이상 필요하지 않으면 이 외부 사용자를 쉽게 제거할 수 있습니다.

Azure Active Directory Federation Services(ADFS)

  • 페더레이션은 더 복잡합니다. 페더레이션은 리소스 세트에 대한 공유 액세스를 위해 다른 조직과 설정된 신뢰 또는 도메인 컬렉션이 있는 위치입니다. Azure AD와 신뢰가 설정되어 있는 AD FS(Active Directory Federation Services) 같은 온-프레미스 ID 공급자 및 권한 부여 서비스를 사용할 수 있습니다. 리소스에 대한 액세스 권한을 얻으려면 모든 사용자가 자격 증명을 제공하고 AD FS 서버에 대해 성공적으로 인증해야 합니다. 내부 네트워크 외부에서 인증을 시도하는 사용자가 있는 경우 웹 애플리케이션 프록시를 설정해야 합니다. 아키텍처는 다음 다이어그램과 같습니다.

Azure Active Directory에 사용자 도메인 추가

  • 도메인 소유권: Azure Portal은 DNS 공급자를 통해 추가하는 TXT 또는 MX 레코드를 제공합니다.
  • 도메인 이름은 고유하며 단일 Azure AD 조직에서만 사용할 수 있습니다.
  • 1시간 이상 기다린 후 도메인이 아직 확인되지 않은 경우, 도메인 등록 기관에 올바른 세부 정보를 입력했는지 확인합니다.

Domain Service(Domain controller as a service)

  • Custom Domain: Every new Azure AD directory comes with an initial domain name, domainname.onmicrosoft.com.
  • Azure Files supports identity-based authentication over Server Message Block (SMB) through two types of Domain Services: on-premises Active Directory Domain Services (AD DS) and Azure Active Directory Domain Services (Azure AD DS)

Azure Directory 보안 강화 요소

  • 암호 복잡성 규칙: 사용자가 추측하기 어려운 암호를 생성하도록 강제 적용합니다.
  • 암호 만료 규칙: 사용자가 주기적으로 암호를 변경하고, 이전에 사용한 암호를 사용하지 않도록 강제 적용할 수 있습니다.
  • SSPR(셀프 서비스 암호 재설정): 사용자가 암호를 잊은 경우 IT부서의 개입없이 암호를 직접 재설정 할 수 있습니다.
    → 암호 재설정을위해 요구한 개수 이상의 방법을 사용자가 등록한 경우, SSPR에 등록된 것으로 간주됩니다.
    → 용자가 로그인 할 수 없을 떄 인증 테스트를 통과하면 암호를 다시 설정할 수 있습니다.
    → Azure AD PremiumP2가 필요 / Azure Enterprise Standard 이상
  • Azure AD 암호 보호: 전역적으로 금지된 암호 목록을 통해 흔히 사용되고 손상된 암호를 차단할 수 있습니다.
  • Azure AD 스마트 잠금: 스마트 잠금은 사용자 암호를 추측하려고 하거나 무차별 암호 대입 공격을 사용하여 침입하려는 악의적인 해커를 잡급니다. 이 기능은 유효한 사용자의 로그인을 인식하여 악의적인 해커 및 알 수 없는 기타 출처의 로그인과 구별하여 취급합니다.
  • Azure AD 어플리케이션 프록시: 온-프레미스 웹 어플리케이션에 대한 보안 강화 원격 액세스를 프로비저닝 할 수 있습니다.
  • 애플리케이션에 대한 SSO(Single-Sign-On) 액세스: 수천개의 미리 통합된 SaaS 앱이 포함됩니다.
  • Azure AD Connect: 하이브리드 엔터프라이즈에서 사용자, 그룹 및 디바이스의 동기화가 유지되도록 각 사용자에 대해 단일 ID를 만들고 관리합니다.

Device ID

Azure AD(Azure Active Directory)의 디바이스 ID는 조직의 Azure AD 인스턴스에 추가하는 디바이스를 제어하고, 해당 디바이스가 액세스할 수 있는 데이터, 리소스 및 자산을 제어하는 데 도움이 됩니다.

  • Azure AD registered: 디바이스가 BYOD(Bring Your Own Device) 범주에 속합니다. 일반적으로 디바이스가 개인적으로 소유한 디바이스이거나 개인 Microsoft 계정 또는 다른 로컬 계정을 사용합니다.
  • Azure AD joined: 디바이스를 조직에서 소유하고 있습니다. 사용자는 회사 계정을 통해 클라우드 기반 Azure AD 인스턴스에 액세스합니다. 디바이스 ID는 클라우드에만 존재합니다. → 암호 해시 동기화를 사용하여 SSO(Single Sign-On)를 디바이스에 제공, 온-프레미스 Active Directory 인스턴스에서 사용자를 만드는 경우 Azure AD Connect를 사용하여 계정을 Azure AD에 동기화, MDM(모바일 디바이스 관리) 플랫폼을 사용하여 Azure AD에 연결된 디바이스를 관리합니다 → Windows OOBE(첫 실행 경험), Windows Autopilot 또는 대량 등록을 사용하는 셀프 서비스, MDM 등록 없이 Azure AD 조인이 완료됩니다. (MDM 시스템에서 관리가 안될 뿐)
  • Hybrid Azure AD joined: 이 옵션은 Azure AD joined와 유사합니다. 디바이스는 조직에서 소유하고 있으며, 해당 조직에 속한 Azure AD 계정을 사용하여 디바이스에 로그인합니다. 디바이스 ID는 클라우드 및 온-프레미스에 존재합니다. 하이브리드 옵션은 온-프레미스 액세스 및 클라우드 액세스가 필요한 조직에 더 적합합니다.

Azure AD의 조건부 액세스(첫번째 단계 인증 후에 적용)에서는 ‘신호’로 알려진 원본의 데이터를 사용하며 사용자가 정의할 수 있는 규칙 베이스에 대해 유효성을 검사하고 최상의 결과를 선택하여 조직의 보안 정책을 적용합니다. 조건부 액세스를 사용하면 디바이스 ID를 관리할 수 있지만 조건부 액세스 정책을 사용하는 것은 복잡할 수 있습니다. → Multi-Factor Authentication, 규격으로 표시된 디바이스, 하이브리드 Azure AD 조인 디바이스, 승인된 애플리케이션, 앱 보호 정책 필요 (Azure AD 회사 계정인 경우)

Azure AD Seamless Single Sign-On

Azure MFA

Azure AD MFA(Multi-Factor Authentication)는 전체 인증에 둘 이상의 요소를 요구하여 ID의 보안을 강화합니다.

  • 사용자가 알고 있는 것, 사용자가 소유하고 있는 것, 사용자의 신원 정보
  • MFA: 조건부 액세스 정책 (조건부 액세스 정책은 IF-THEN 문입니다. IF 사용자가 리소스에 액세스하려는 경우 THEN 작업을 완료해야 합니다)
    → 특정 클라우드 애플리케이션에 액세스 하는 경우, 사용자가 특정 네트워크에 액세스 하는 경우, 사용자가 특정 클라이언트 애플리케이션에 액세스 하는 경우, 사용자가 새 디바이스를 등록하는 경우
  • 본인 확인 질문은 셀프 서비스 암호 재 설정에만 사용할 수 있습니다,
  • 암호는 인증방법으로 항상 사용할 수 있으며, 사용하지 않도록 설정할 수 없습니다.

Enterprise State Roaming

Enterprise State Roaming을 사용하면 Windows 10 디바이스 사용자가 설정 및 애플리케이션 데이터를 조직의 클라우드 서비스와 동기화할 수 있습니다. 동기화를 사용하면 자동으로 동기화가 수행됩니다. 모든 적용 가능한 디바이스 사용자가 사용하도록 설정할 수도 있고 조직의 요구 사항에 따라 특정 사용자나 그룹을 선택할 수도 있습니다. Enterprise State Roaming을 사용하면 디바이스를 전환할 때 사용자 설정 및 애플리케이션 데이터가 함께 이동합니다.
→ 부실데이터: 1년
→ 회사 및 소비자 데이터 분리, 보안 강화, 관리 향상

Azure AD V 2.0 endpoint

Microsoft identity platform is an evolution of the Azure Active Directory (Azure AD) developer platform. It allows developers to build applications that sign in all Microsoft identities and get tokens to call Microsoft APIs, such as Microsoft Graph, or APIs that developers have built. OAuth 2.0 and OpenID Connect standard-compliant authentication service that enables developers to authenticate any Microsoft identity

Azure AD B2C tenant

Azure Active Directory B2C provides business-to-customer identity as a service. Azure Active Directory B2C (Azure AD B2C) integrates directly with Azure Multi-Factor Authentication so that you can add a second layer of security to sign-up and sign-in experiences in your applications.

Pass-through authentication

Azure Active Directory (Azure AD) Pass-through Authentication allows your users to sign in to both on-premises and cloud-based applications using the same passwords. (Azure Application Gateway and a Standard Load Balancer)

Identity protection

AAD protection provides all the security features for your Azure Active Directory entities.

  • Automate the detection and remediation of identity-based risks.
  • Investigate risks using data in the portal.
  • Export risk detection data to third-party utilities for further analysis.
  • Risk Policies: In response to a detected account at risk, Azure AD Identity Protection generates an email alert with Users at risk detected as subject.

Regional Compliance

Azure Resource Policy Definitions can be used which can be applied to a specific Resource Group with the App Service instances.

2. 애플리케이션 보호

  • 애플리케이션의 인증 요구 사항
  • Azure AD 테넌트를 만들고 애플리케이션에 대한 애플리케이션 등록을 구성
  • OpenID Connect 및 Azure AD를 사용하여 사용자를 인증하는 애플리케이션 배포

Azure AD [ID 공급자]

Azure AD에 애플리케이션을 등록합니다.
→ grant permissions to allow web apps to access the web APIs.

OAuth2.0

권한 부여에 대한 업계 표준 프로토콜입니다. 웹, 데스크톱 및 모바일 어플리케이션의 특정 권한 부여 흐름을 제공합니다. 사용자가 다른 애플리케이션의 데이터에 액세스 하는 권한을 애플리케이션에 부여할 수 있도록 설계되었습니다.

OpenID Connect [인증 표준]

OpenID Connect는 OAuth 2.0을 기반으로 빌드된 인증 계층입니다. OAuth 2.0에는 없는 ID 확인 방법을 포함합니다. OpenID Connect는 ID를 증명하기 위해 애플리케이션에 보낼 수 있는 액세스 토큰 및 ID 토큰을 제공합니다. ID 토큰은 JWT(JSON Web Token)이며 인증된 사용자에 대한 정보를 포함합니다. ID 공급자가 토큰에 서명하므로 해당 애플리케이션은 공급자의 공개 키를 사용하여 인증을 확인할 수 있습니다.

Application Proxy

Azure AD that enables users to access on-premises web applications from a remote client. Application Proxy includes both the Application Proxy service which runs in the cloud, and the Application Proxy connector which runs on an on-premises server.

예제) must be prevented from accessing the on-premises network, to ensure that Appl continues to function after the migration.

Application Provisioning

SCIM is a standardized definition of two endpoints: a /Users endpoint and a /Groups endpoint. Apps that offer a SCIM 2.0 REST API can reduce or eliminate the pain of working with a proprietary user management API.

Registration

You register an application using the App registrations experience in the Azure portal so that your app can be integrated with the Microsoft identity platform and call Microsoft Graph.
→ You can use azure AD to manage users of your application and authenticate access to your applications using azure active directory.
You register your application with Azure active directory tenant.

예제

design an authorization flow for the SaaS application

  • To access the back-end web API, the web app must authenticate by using OAuth 2 bearer tokens. → Access Token by Azure AD
  • The web app must authenticate by using the identities of individual users. → Authorization decisions by an web API

Azure Active Directory Admin Center

  • The app must be registered. You can register the application in the Azure Active Directory admin center.
  • The Azure AD access reviews feature has an API in the Microsoft Graph endpoint.
  • You can register an Azure AD application and set it up for permissions to call the access reviews API in Graph. delegate permissions.

3. 워크로드 보호

Azure Security Center

보안 태세를 강화하고 위협으로부터 보호

  • 워크로드에서 보안 설정을 모니터링
  • 온라인 상태로 전환되면 필요한 보안 설정을 새 리소스에 자동으로 적용
  • 구성, 리소스, 네트워크에 기반한 보안 권장사항 제공
  • 리소스를 지속적으로 모니터링하면서 자동 보안 평가를 수행하며 잠재적 취약성이 악용되기 전에 미리 식별
  • 잠재적 인바운드 공격을 탐지 및 분석하고, 발생할 수 있는 위협과 위반후 화동을 조사
  • Just-in-time 액세스 제어를 제공
  • cf. playbooks are automated procedures that you can run against alerts.

Azure Sentinel (파수꾼) — security analytics

다양한 원본에서 보안 데이터를 수집하고 사용

  • 대규모로 클라우드 데이터 수집: 온-프레미스 및 여러 클라우드에서 둘다 모든 사용자, 디바이스, 애플리케이션 및 인프라에 걸쳐 데이터를 수집
  • 이전에 탐지되지 않은 위협 탐지
  • 인공지능을 사용하여 위협 조사: 의심스러운 활동을 대규모로 검토
  • 신속하게 인시던트에 대응: 일반 작업의 제공 오케스트레이션 및 자동화를 이용

함께 이용가능한 서비스

  • Use the investigation map, drill down into the incident, and look for user entities affected by the alert. : Use entities to view users that might have been in the path of a particular threat or malicious activity.
  • Create a Log Analytics workspace, and then add that workspace to Azure Sentinel.

Azure KeyVault

암호 및 암호화 키와 같은 중요한 정보를 저장하고 이 정보에 액세스

  • Region 마다 다르게 지급 (You need to identify to where you can restore the backup: the same region only (disaster recovery, back up to the keys))
  • In order for Resource Manager templates to access Azure Key Vault, you need to enable the setting in the Advanced policy section for the key vault.
  • 비밀 관리, 암호화 키 관리, SSL/TLS 인증서 관리, HSM(하드웨어 보안 모듈)에서 지원되는 비밀 저장
  • 애플리케이션 비밀 중앙 집중화, 안전하게 비밀 및 키 저장, 액세스 모니터링 및 액세스 제어, 애플리케이션의 비밀의 관리의 간소화, 다른 Azure 서비스와 통합
  • failover → a server in the same paired region , and key-vault is in read-only mode. so, delete is impossible.
  • The applications use Azure Key Vault to store several authentication, storage account, and data encryption keys. Several departments have the following requests to support the applications:
    → Security: Azure AD Privileged Identity Management
    → Development: Azure AD managed Service Identity
    → Quality Assurance: Azure AD privileged Identity Management
  • Client Library: The client libraries for Azure Key Vault allow programmatic access to Key Vault functionality from a variety of languages, including .NET, Python, Java, and JavaScript.

예제)
The users will access the applications in Azure by using a point-to-site VPN connection. You will use certificates generated from an on-premises-based certification authority (CA).
trusted root certification authorities certificate store on each laptop : A root CA certificate that has the public key.
→ Azure VPN gate way: A root CA certificate that has the public key.
→ the users’ personal store on each laptop: a user certificate that has the public key.
<< The new root certificate uses a stronger key length and hashing algorithm which ensures we remain consistent with industry-wide security best practices. >>

Azure Dedicated Host

Windows 및 Linux용 Azure VM 을 호스트하는 전용 물리적 서버를 관리

Azure에서 VM(가상 머신)은 Microsoft가 관리하는 공유 하드웨어에서 실행됩니다. 기본 하드웨어는 공유되지만 VM 워크로드는 다른 Azure 고객이 실행하는 워크로드에서 격리됩니다.

일부 조직은 해당 가상 머신을 호스트하는 물리적 머신을 사용하는 유일한 고객이 되도록 요구하는 규정 준수를 수행해야 합니다. Azure Dedicated Host는 Windows 및 Linux용 Azure VM을 호스트하는 전용 물리적 서버를 제공합니다.

  • Azure VM을 실행하는 서버 인프라에 대한 가시성 및 제어를 제공
  • 격리된 서버에 워크로드를 배포하여 규정 준수 요구 사항을 해결하도록 지원
  • 동일한 호스트 내에서 프로세서 수, 서버 기능, VM 시리즈 및 VM 크기를 선택할 수 있도록 합니다.

4. 리소스 보호

리소스 잠금

구독, 리소스 그룹 또는 개별 리소스에 잠금을 적용할 수 있습니다. 잠금 수준을 CanNotDelete 또는 ReadOnly 로 설정할 수 있습니다.

Tag

  • 리소스 관리 — 특정 워크로드, 환경, 사업부 및 소유자와 연결된 리소스를 찾고 작업할 수 있습니다.
  • 비용 관리 및 최적화 — 태그를 사용하면 리소스를 그룹화하여 비용을 보고하고, 내부 비용 센터를 할당하고, 예산을 추적하고, 예상 비용을 예측할 수 있습니다.
  • 운영 관리 — 태그를 사용하면 비즈니스에 대한 가용성의 중요도에 따라 리소스를 그룹화할 수 있습니다. 이렇게 그룹화하면 SLA(서비스 수준 계약)를 작성하는 데 도움이 됩니다. SLA는 여러분과 사용자 간의 작동 시간 또는 성능 보장입니다.
  • 보안 — 태그를 사용하면 보안 수준(예: 퍼블릭 또는 기밀)을 기준으로 데이터를 분류할 수 있습니다.
  • 거버넌스 및 규정 준수 — 태그는 표준 적용 작업의 일부일 수도 있습니다. 예를 들어 모든 리소스에 소유자 또는 부서 이름으로 태그를 지정해야 할 수 있습니다.
  • 워크로드 최적화 및 자동화 — 태그를 통해 복잡한 배포에 참여하는 모든 리소스를 시각화할 수 있습니다. 예를 들어 연결된 워크로드 또는 애플리케이션 이름으로 리소스에 태그를 지정하고 Azure DevOps와 같은 소프트웨어를 사용하여 해당 리소스에서 자동화된 작업을 수행할 수 있습니다.
  • Not all resources support tags, so you will want to confirm that your resource type supports them.
  • Tags are not inherited. Tags need to be applied to every supported resource that you want tagged.
  • cf. when a department reaches its spending limit, the compute resources of the department shut down automatically.
    → Azure Logic Apps, Cost Management budgets

Azure Policy

  • Azure Policy는 리소스를 제어하거나 감사하는 정책을 만들고, 할당하고, 관리할 수 있는 Azure의 서비스입니다. 해당 정책은 관련 구성이 회사 표준을 준수하는 상태를 유지하도록 리소스 구성에 대해 다양한 규칙과 효과를 적용합니다. Azure Policy에는 스토리지, 네트워킹, 컴퓨팅, Security Center 및 모니터링과 같은 범주에서 사용할 수 있는 다양한 기본 정책과 이니셔티브 정의가 제공됩니다.
  • 정책 정의 → 리소스에 정의 할당 → 평가 결과 검토
  • Azure Policy 이니셔티브는 관련 정책을 하나의 세트로 그룹화하는 방법입니다. 이니셔티브 정의는 더 큰 목표에 대한 규정 준수 상태를 추적하는 데 도움이 되는 모든 정책 정의를 포함합니다.

Azure BluePrint

  • 보호 프로세스를 보다 강력하게 만들기 위해 Azure Blueprints와 리소스 잠금을 결합할 수 있습니다. Azure Blueprints를 사용하면 조직에 필요한 표준 Azure 리소스 세트를 정의할 수 있습니다.
  • 새 구독마다 Azure Policy 같은 기능을 구성하는 대신 Azure Blueprints를 사용하면 조직에 필요한 거버넌스 도구 및 표준 Azure 리소스의 반복 가능한 세트를 정의할 수 있습니다. 이 방법으로 개발 팀에서는 개발 및 배포 단계를 가속화하는 기본 제공 구성 요소 세트를 사용하여 조직의 규정을 준수하면서 빌드하는 지식이 포함된 새 환경을 빠르게 빌드하고 배포할 수 있습니다.
  • 다양한 리소스 템플릿 및 기타 아티팩트의 배포를 오케스트레이션 합니다.
    → 역할 할당, 정책 할당, Azure Resource Manager 템플릿, 리소스 그룹

5. 스토리지 보호

You need to design a solution for securing access to the historical transaction data.
→ The Azure Cosmos DB account uses: create users and generate resource tokens
a resource token and an Access Control(IAM) role assignment
→ The .NET web service will be used to: Request resource tokens and perform authentication

Key vault

The key is auto-generated and serves as a password, rather than an as a cryptographic key. Key Vault manages storage account keys by periodically regenerating them in storage account and provides shared access signature tokens for delegated access to resources in your storage account.

Shared Access Signature

solution to enable access to the blobs during the certain terms.

Private Endpoints

Encrypting data at rest for the database

  • Transparent data encryption: encrypting data at rest for the database
    Azure Storage uses server-side encryption (SSE) to automatically encrypt your data when it is persisted to the cloud. Azure Storage encryption protects your data and to help you to meet your organizational security and compliance commitments.
  • Always Encrypted: the data is always stored ‘encrypted’.
    Always Encrypted is a data encryption technology that helps protect sensitive data at rest on the server, during movement between client and server, and while the data is in use. Always Encrypted ensures that sensitive data never appears as plaintext inside the database system. After you configure data encryption, only client applications or app servers that have access to the keys can access plaintext data. For detailed information, see Always Encrypted (Database Engine).
    Always Encrypted with deterministic encryption → protecting the content of the payment processing system.
  • Dynamic Data Masking: Dynamic data masking helps prevent unauthorized access to sensitive data by enabling customers to designate how much of the sensitive data to reveal with minimal impact on the application layer. It’s a policy-based security feature that hides the sensitive data in the result set of a query over designated database fields, while the data in the database is not changed.
  • Azure Disk encryption
    All data on the operating and data disks for the virtual machine are encrypted at rest.
    Disks are encrypted by using cryptographic keys that are secured in an Azure Key Vault. You control these cryptographic keys and can audit their use.
    Azure Disk Encryption helps protect and safeguard your data to meet your organizational security and compliance commitments. It uses the BitLocker feature of Windows to provide volume encryption for the OS and data disks of Azure virtual machines (VMs), and is integrated with Azure Key Vault to help you control and manage the disk encryption keys and secrets.
    * The use of encryption keys is audited.
    * All the data is encrypted at rest always.
    * You manage the encryption keys, not Microsoft

SQL 접근

  • SSL certificates: authentication of the server and not for encryption of data.
  • SQL Database Dynamic data masking: It limits sensitive data exposure by masking it to non-privileged users. It helps prevent unauthorized access to sensitive data by enabling customers to designate how much of the sensitive data to reveal with minimal impact on the application layer. It’s a policy-based security feature that hides the sensitive data in the result set of a query over designated database fields, while the data in the database is not changed.
  • Pass-through Authentication: The feature is an alternative to Azure AD Password Hash Synchronization, which provides the same benefit of cloud authentication to organizations. However, certain organizations wanting to enforce their on-premise Active Directory security and password policies, can choose to use Pass-through Authentication instead.
  • Restricts user access to each database
    → ConfigureUser Access: Transact SQL
    → Configure database-level firewall rules: Azure Power Shell
  • Assessment tool → Compute and Storage costs
    → An Assessment includes information about whether the on-premises VMs are compatible for Azure, what would be the right VM size for running the VM in Azure and the estimates monthly Azure costs.

--

--

--

Data Engineer interested in constructing Data-Driven Architecture with Cloud Service

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Reverse Tab-nabbing — Links and Its Security loops

It’s only 10:27am and my mind is already feeling like its on overload.

R makes the music out of you noisy data

Movie Store — Building a modern web application on AWS — Part (2 )- Search Service

Low-Code Projects — A Project Manager’s Perspective

From the hearing room to VSCode: Why I took up software development.

Building Responsive Layouts with Jetpack Compose

What Is Linux?

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
SoniaComp

SoniaComp

Data Engineer interested in constructing Data-Driven Architecture with Cloud Service

More from Medium

5 Microsoft Products and Services Announcements at Microsoft Build 2022

Weeknotes s02e02

Retry patterns i

Monitor Virtual machine changes by Azure Event Grid and Logic Apps