다음을 통해 공유


Azure Active Directory B2C에 관한 권장 사항 및 모범 사례

다음 모범 사례 및 권장 사항은 Azure AD(Azure Active Directory) B2C를 기존 또는 새 애플리케이션 환경에 통합하는 기본적인 몇 가지 측면을 다룹니다.

기본 사항

모범 사례 설명
대부분의 시나리오에서 사용자 흐름 선택 Azure AD B2C의 Identity Experience Framework는 서비스의 핵심 강점입니다. 정책은 가입, 로그인 또는 프로필 편집과 같은 ID 환경을 완벽하게 설명합니다. 가장 일반적인 ID 작업을 설정하는 데 도움을 주기 위해 Azure AD B2C 포털은 사용자 흐름이라는 미리 정의되고 구성 가능한 정책을 포함합니다. 사용자 흐름을 사용하면 몇 번의 클릭만으로 몇 분 내에 훌륭한 사용자 환경을 만들 수 있습니다. 사용자 흐름을 사용해야 하는 경우와 사용자 지정 정책을 사용해야 하는 경우를 알아보세요.
앱 등록 보안이 설정된 모든 애플리케이션(웹, 네이티브) 및 API는 Azure AD B2C에 등록되어야 합니다. 앱에 iOS 및 Android의 웹 버전과 네이티브 버전이 모두 있는 경우 동일한 클라이언트 ID를 사용하여 Azure AD B2C에서 하나의 애플리케이션으로 등록할 수 있습니다. OIDC, SAML, 웹 및 네이티브 앱을 등록하는 방법을 알아보세요. Azure AD B2C에서 사용할 수 있는 애플리케이션 유형에대해 자세히 알아보세요.
월간 활성 사용자 청구로 이동 Azure AD B2C가 월간 활성 인증에서 MAU(월간 활성 사용자) 청구로 이동했습니다. 대부분의 고객은 이 모델이 비용 효율적이라고 생각할 것입니다. 월간 활성 사용자 청구에 대해 자세히 알아보세요.

계획 및 설계

애플리케이션 및 서비스 아키텍처를 정의하고, 현재 시스템을 인벤토리하고, Azure AD B2C로의 마이그레이션을 계획합니다.

모범 사례 설명
엔드투엔드 솔루션 설계 Azure AD B2C 통합을 계획할 때 모든 애플리케이션의 종속성을 포함합니다. 현재 환경에 있거나 솔루션에 추가해야 할 수 있는 전체 서비스 및 제품(예: Azure Functions, CRM(고객 관계 관리) 시스템, Azure API Management 게이트웨이 및 스토리지 서비스)을 고려합니다. 모든 서비스에 대한 보안 및 확장성을 고려합니다.
사용자 환경 문서화 고객이 애플리케이션에서 경험할 수 있는 모든 사용자 경험에 대해 자세히 설명합니다. 애플리케이션의 ID 및 프로필 측면과 상호 작용할 때 발생할 수 있는 모든 화면 및 분기 흐름을 포함합니다. 계획에 유용성, 접근성 및 지역화를 포함합니다.
올바른 인증 프로토콜 선택 다양한 애플리케이션 시나리오 및 권장 인증 흐름을 분석하려면 시나리오 및 지원되는 인증 흐름을 참조하세요.
POC(개념 증명) 엔드투엔드 사용자 환경 파일럿 Microsoft 코드 샘플커뮤니티 샘플로 시작합니다.
마이그레이션 계획 만들기 미리 계획하면 마이그레이션이 더욱 원활하게 진행될 수 있습니다. 사용자 마이그레이션에 대해 자세히 알아보세요.
유용성 및 보안 솔루션은 애플리케이션 유용성과 조직의 허용 가능한 위험 수준 사이에서 적절한 균형을 이루어야 합니다.
온-프레미스 종속성을 클라우드로 이동 복원력 있는 솔루션을 보장하려면 기존 애플리케이션 종속성을 클라우드로 이동하는 것을 고려합니다.
기존 앱을 b2clogin.com으로 마이그레이션 login.microsoftonline.com은 2020년 12월 4일부터 모든 Azure AD B2C 테넌트에서 사용이 중단됩니다. 자세히 알아보기.
ID 보호 및 조건부 액세스 사용 이러한 기능을 사용하면 위험한 인증 및 액세스 정책을 훨씬 효과적으로 제어할 수 있습니다. Azure AD B2C Premium P2가 필요합니다. 자세히 알아보기.
테넌트 규모 Azure AD B2C 테넌트 크기를 염두에 두고 계획해야 합니다. 기본적으로 Azure AD B2C 테넌트는 125만 개의 개체(사용자 계정 및 애플리케이션)를 수용할 수 있습니다. 테넌트에 사용자 지정 도메인을 추가하고 확인하면 이 제한을 개체 525만 개로 늘릴 수 있습니다. 더 큰 테넌트 크기가 필요한 경우 지원팀에 문의해야 합니다.

구현

구현 단계에서 다음 권장 사항을 고려합니다.

모범 사례 설명
Visual Studio Code의 Azure AD B2C 확장으로 사용자 지정 정책 편집 Visual Studio Code Marketplace에서 Visual Studio Code 및 이 커뮤니티에서 빌드된 확장을 다운로드합니다. 공식 Microsoft 제품은 아니지만 Visual Studio Code의 Azure AD B2C 확장에는 사용자 지정 정책 작업을 용이하게 할 수 있는 여러 기능이 포함되어 있습니다.
Azure AD B2C 문제를 해결하는 방법 알아보기 개발하는 동안 사용자 지정 정책의 문제를 해결하는 방법을 알아봅니다. 정상적인 인증 흐름이 어떻게 표시되는지 알아보고 이상 문제 및 오류를 발견하기 위한 도구를 사용합니다. 예를 들어 Application Insights를 사용하여 사용자 경험의 출력 로그를 검토할 수 있습니다.
입증된 사용자 지정 정책 패턴의 라이브러리 활용 향상된 Azure AD B2C CIAM(고객 ID 및 액세스 관리) 사용자 경험에 대한 샘플을 찾아보세요.

테스팅

Azure AD B2C 구현을 테스트하고 자동화합니다.

모범 사례 설명
글로벌 트래픽 계정 다른 글로벌 주소의 트래픽 원본을 사용하여 성능 및 지역화 요구 사항을 테스트합니다. 모든 HTML, CSS 및 종속성이 성능 요구를 충족할 수 있는지 확인합니다.
기능 및 UI 테스트 엔드투엔드 사용자 흐름을 테스트합니다. Selenium, VS 웹 테스트 등을 사용하여 몇 분마다 가상 테스트를 추가합니다.
펜 테스트 솔루션과 함께 사용하기 전에 침투 테스트 연습을 수행하여 타사 종속성을 비롯한 모든 구성 요소가 안전한지 확인합니다. 액세스 토큰을 사용하여 API를 보호하고 애플리케이션 시나리오에 올바른 인증 프로토콜을 사용했는지 확인합니다. 침투 테스트Microsoft Cloud 통합 침투 테스트 시행 규칙에 대해 자세히 알아보세요.
A/B 테스트 전체 모집단에 공개하기 전에 임의의 소수 사용자 집합과 함께 새로운 기능을 사용해 봅니다. Azure AD B2C에서 JavaScript를 사용하도록 설정하면 Optimizely, Clarity 등과 같은 A/B 테스트 도구와 통합할 수 있습니다.
부하 테스트 Azure AD B2C를 확장할 수 있지만 애플리케이션은 모든 종속성이 확장될 수 있는 경우에만 확장할 수 있습니다. API 및 CDN을 부하 테스트합니다. 개발자 모범 사례를 통한 복원력에 대해 자세히 알아봅니다.
제한 Azure AD B2C는 단기간에 동일한 원본에서 너무 많은 요청을 보내는 경우 트래픽을 제한합니다. 부하 테스트 중에 여러 트래픽 원본을 사용하고 애플리케이션에서 AADB2C90229 오류 코드를 정상적으로 처리합니다.
자동화 CI/CD(연속 통합 및 지속적인 업데이트) 파이프라인을 사용하여 Azure DevOps와 같은 테스트 및 배포를 자동화합니다.

작업

Azure AD B2C 환경을 관리합니다.

모범 사례 설명
여러 환경 만들기 작업 및 배포 공개가 용이하도록 개발, 테스트, 사전 프로덕션 및 프로덕션을 위한 별도의 환경을 만듭니다. 각각에 대해 Azure AD B2C 테넌트를 만듭니다.
사용자 지정 정책에 대한 버전 제어 사용 Azure AD B2C 사용자 지정 정책에 GitHub, Azure Repos 또는 다른 클라우드 기반 버전 제어 시스템을 사용하는 것을 고려합니다.
Microsoft Graph API를 사용하여 B2C 테넌트의 관리 자동화 Microsoft Graph API:
Identity Experience Framework 관리(사용자 지정 정책)
Keys
사용자 흐름
Azure DevOps와 통합 CI/CD 파이프라인을 사용하면 서로 다른 환경 간에 코드를 쉽게 이동할 수 있으며 항상 프로덕션 준비 상태가 보장됩니다.
사용자 지정 정책 배포 Azure AD B2C는 캐싱을 사용하여 최종 사용자에게 성능을 제공합니다. 어떤 방법을 사용하여 사용자 지정 정책을 배포하는 경우 사용자가 변경 내용을 확인하는 데 최대 30분이 걸릴 수 있습니다. 이러한 동작으로 인해 사용자 지정 정책을 배포할 때 다음 사례를 고려합니다.
- 개발 환경에 배포하는 경우 사용자 지정 정책 파일의 <TrustFrameworkPolicy> 요소에서 DeploymentMode 특성을 Development로 설정합니다.
- 앱의 트래픽이 적을 때 업데이트된 정책 파일을 프로덕션 환경에 배포합니다.
- 기존 정책 파일을 업데이트하기 위해 프로덕션 환경에 배포하는 경우 새 이름으로 업데이트된 파일을 업로드한 다음 앱 참조를 새 이름으로 업데이트합니다. 그런 다음 나중에 이전 정책 파일을 제거할 수 있습니다.
- 캐싱 동작을 무시하려면 프로덕션 환경에서 DeploymentModeDevelopment로 설정할 수 있습니다. 그러나 이 방법은 권장되지 않습니다. Application Insights를 사용하여 Azure AD B2C 로그를 수집하는 경우 ID 공급자와 주고받는 모든 클레임이 수집되며 이는 보안 및 성능 위험을 초래합니다.
앱 등록 업데이트 배포 애플리케이션의 리디렉션 URI 업데이트와 같이 Azure AD B2C 테넌트에서 애플리케이션 등록을 수정하는 경우 변경 내용이 프로덕션 환경에 적용되는 데 최대 2시간(3600초)이 지연될 수 있습니다. 앱의 트래픽이 적을 때 프로덕션 환경에서 애플리케이션 등록을 수정하는 것이 좋습니다.
Azure Monitor와 통합 감사 로그 이벤트는 7일 동안만 유지됩니다. Azure Monitor와 통합하면 로그를 장기간 사용하도록 보존할 수 있고, 타사 SIEM(보안 정보 및 이벤트 관리) 도구와 통합하여 환경에 대한 인사이트를 얻을 수도 있습니다.
활성 경고 및 모니터링 설정 Application Insights를 사용하여 Azure AD B2C에서 사용자 동작을 추적합니다.

지원 및 상태 업데이트

서비스의 상태를 최신으로 유지하고 지원 옵션을 찾아봅니다.

모범 사례 설명
서비스 업데이트 Azure AD B2C 제품 업데이트 및 공지를 최신으로 유지합니다.
Microsoft 지원 Azure AD B2C 기술 문제에 대한 지원 요청을 제출합니다. 청구 및 구독 관리 지원은 무료로 제공됩니다.
Azure 상태 모든 Azure 서비스의 현재 상태를 봅니다.