M365Con 2027 – 무료 온라인 컨퍼런스 · 11–22 Jan 2027 · 120 sessions→ m365con.net

블로그 · Mirko Peters

지속적 액세스 평가(CAE)로 제로 트러스트 강화하기

By ·

팟캐스트와 진행 중인 아이덴티티 보안 아키텍처 심층 분석에 다시 오신 것을 환영합니다. Microsoft Entra ID에서 새롭고 견고한 조건부 액세스 정책을 배포했는데, 침해된 사용자나 정책을 벗어난 디바이스가 그 뒤로도 8시간 동안 아무 일 없다는 듯 작업을 계속하는 모습을 본 적이 있다면… 여러분만 그런 것이 아닙니다.

Automatically translated with AI from the original post. Read the English original

▶ BLOGSupercharging Zero Trustwith Continuous Access…M365.FM
Titelbild: Supercharging Zero Trust with Continuous Access Evaluation (CAE)

팟캐스트와 진행 중인 아이덴티티 보안 아키텍처 심층 분석에 다시 오신 것을 환영합니다. Microsoft Entra ID에서 새롭고 견고한 조건부 액세스 정책을 배포했는데, 침해된 사용자나 정책을 벗어난 디바이스가 그 뒤로도 8시간 동안 아무 일 없다는 듯 작업을 계속하는 모습을 본 적이 있다면, 여러분만 그런 것이 아닙니다. 아이덴티티 관리자들은 이 답답한 현실을 매일 마주합니다. Microsoft 365가 인증을 처리하는 방식의 핵심은, 보안 경계의 강도가 토큰의 강도만큼만 유지된다는 점입니다. 정책은 스스로 시행되지 않으며, 시행하는 것은 토큰입니다.

이번 블로그 글에서는 최근 팟캐스트 대화를 이어서, 지속적 액세스 평가(CAE)가 어떻게 판도를 바꾸는지 자세히 살펴보겠습니다. 고정된 토큰에서 벗어나 실시간의 이벤트 기반 취소를 활용하면 조직의 노출 기간을 크게 줄일 수 있습니다. 이러한 토큰이 내부에서 어떻게 흐르는지에 대한 기본 원리를 알고 싶다면, 함께 제공되는 에피소드 Modern Authentication and Token Lifecycle in Microsoft 365도 꼭 들어 보시기 바랍니다.

TL;DR (핵심 아이디어)

  • 정책은 스스로 시행되지 않습니다. 토큰이 시행합니다. 조건부 액세스는 토큰이 발급되거나 새로 고침될 때 평가됩니다. 기존 토큰은 재평가를 강제로 수행하기 전까지 어제의 신뢰 상태를 그대로 유지합니다.
  • MSAL은 새로 고침 토큰을 사용해 액세스 토큰을 조용히 교체하며, CAE는 위험이나 컨텍스트가 바뀌면 사용 중인 토큰도 무효화할 수 있습니다.
  • 변경 사항이 "지금 바로 적용되도록" 하려면 토큰 수명 주기(로그인 빈도, 새로 고침 토큰 취소, CAE, 세션 제어)를 대상으로 해야 합니다.

쉽게 이해하는 사고 모델

지속적 액세스 평가가 왜 그토록 큰 변화인지 이해하려면, 먼저 최신 인증에 관여하는 구성 요소를 살펴볼 필요가 있습니다. 인증 아키텍처를 배타적인 클럽에 비유해 보겠습니다.

  • 액세스 토큰(AT): 특정 공간에 들어갈 수 있게 해 주는, 수명이 짧은 손님용 출입증입니다(보통 약 1시간).
  • 새로 고침 토큰(RT): 매번 보안 검사를 거치지 않고도 안내 데스크에서 새 출입증을 요청할 수 있게 해 주는, 수명이 더 긴 팔찌입니다(며칠 또는 몇 주).
  • MSAL: 뒤에서 새로 고침 토큰을 새 액세스 토큰으로 조용히 교환하는 내부 실행기입니다.
  • 조건부 액세스(CA): AT/RT 발급 순간(그리고 CAE 이벤트 중)에 자격 증명과 컨텍스트를 엄격하게 확인하는 경비원 같은 정책 엔진입니다.
  • CAE(지속적 액세스 평가): 위험이 급증하거나, 디바이스가 규정 준수 상태에서 벗어나거나, 사용자 위치가 부적절하게 바뀌거나, 사용자 계정이 비활성화되면 Azure AD가 세션 중에 액세스를 적극적으로 회수할 수 있게 해 주는 최신 프로토콜 업그레이드입니다.

새 정책이 오늘 바로 적용되지 않은 이유

보안 정책을 업데이트한 뒤 가장 흔한 헬프데스크 문의 중 하나는 이것입니다. "방금 레거시 국가를 차단했는데, 사용자 X가 여전히 관리되지 않는 네트워크에서 파일을 다운로드하고 있습니다!" 왜 이런 일이 생길까요? 그 답은 토큰 캐싱에 있습니다.

  • 사용자는 이미 유효한 AT를 가지고 있으며, 해당 토큰이 자연스럽게 만료되기 전까지는 재평가가 이루어지지 않습니다.
  • RT는 변경 이전에 발급된 경우에도 다음 시점까지 문제없이 계속 동작합니다:
    • 일반적인 자동 새로 고침 과정에서 RT가 다시 제시되는 경우
    • 세션과 새로 고침 토큰을 직접 취소하는 경우
    • CAE가 강제 재확인을 트리거하는 경우
  • Microsoft Teams, Outlook, OneDrive 같은 모바일 및 데스크톱 애플리케이션은 토큰을 적극적으로 캐싱하고 자동으로 새로 고치기 때문에, 의도치 않게 "이전 정책" 적용 기간이 늘어납니다.

제어 수단(우선순위 순)

  1. 지원되는 리소스 공급자(Exchange Online, SharePoint Online, Microsoft Graph, Teams)에 대해 CAE를 켭니다.
    • 효과: 정책 및 위험 변경 사항이 즉시 세션 중인 토큰을 무효화할 수 있습니다.
  2. 로그인 빈도 설정(앱별 CA 세션 제어를 통해 구성)
    • 예시: 일반 생산성 앱은 8~12시간, 보안 수준이 높은 관리 포털은 1~4시간입니다.
  3. 컨텍스트가 변경되면 재인증 요구.
    • 적용할 CA 조건: 로그인 위험 ≥ 중간, 사용자 위험 ≥ 높음, 기기 규정 준수 필요, 또는 하이브리드/AADJ 전용.
  4. 관리되지 않거나 위험한 세션에는 Conditional Access App Control(Microsoft Defender for Cloud Apps 세션 프록시)을 사용합니다.
    • 레거시 토큰이 단계적으로 폐지되는 동안 피해 범위를 줄이려면 다운로드/인쇄/동기화 금지와 같은 엄격한 정책을 적용합니다.
  5. 활성 배포 중이거나 보안 사고가 발생하면 필요할 때 토큰 취소를 수행합니다.
    • 대상 접근 방식: 영향을 받는 특정 사용자나 그룹에 대해 새로 고침 토큰 무효화.
    • 광범위한 접근 방식: 긴급 보안 태세 조정을 위해 테넌트 전체에서 강제 로그아웃하고 토큰을 취소합니다.
  6. 최신 인증 세션 설정.
    • 대부분의 최신 워크로드에서 지원이 중단된 레거시 토큰 수명 정책보다 항상 CA 세션 제어를 우선 사용하십시오.

바로 사용할 수 있는 정책(최소 구성으로도 효과적)

  1. 사용자 위험이 높음일 때 차단
  • 할당: 모든 사용자(비상 접근 계정 2개 제외) + 모든 클라우드 앱
  • 조건: 사용자 위험 = 높음
  • 권한 부여: 차단
  • 세션: CAE 사용(테넌트 설정)
  1. 로그인 위험에 따른 단계별 인증 강화
  • 할당: 모든 사용자; 앱: Exchange, SharePoint, 관리 포털
  • 조건: 로그인 위험 ≥ 중간
  • 권한 부여: MFA 필요; 규정 준수 기기 필요(관리 포털에 한함)
  1. 관리자를 위한 짧은 로그인 빈도
  • 할당: 디렉터리 역할 = 특권
  • 세션: 로그인 빈도 = 1~4시간, 영구 브라우저 세션 = 안 함
  1. 관리되지 않는 기기 격리
  • 할당: 모든 사용자; 앱: SharePoint, OneDrive, Teams
  • 기기 필터: 관리되지 않음
  • 세션: Conditional Access App Control 사용(다운로드/인쇄 차단)

운영 플레이북

플레이북 A — "새 CA 규칙을 지금 바로 안정적으로 적용"

  • 범위: "Sensitive-Apps-Users" 그룹
  • 단계:
    1. 대상 애플리케이션에 대해 로그인 빈도를 설정하고 조정합니다.
    2. 대상 보안 그룹의 새로 고침 토큰을 무효화합니다.
    3. 오늘 추가 인증 요청이 나타날 수 있는 이유를 설명하는 사용자 공지를 게시합니다.
    4. 새로 발생하는 CA 인증 요구를 SignInLogs에서 모니터링하고 헬프데스크 티켓 양도 주시합니다.

플레이북 B — "위험 급증/침해 격리"

  • 트리거: 심각도가 높은 ID 경고(위험 사용자, 불가능한 이동, 또는 Defender for Identity의 측면 이동 등)
  • 작업(Azure Logic Apps로 자동화):
    1. 사용자 침해 확인(사용자 위험 = 높음으로 설정).
    2. 새로 고침 토큰 취소 + 로그인 세션 취소.
    3. 사용자를 72시간 동안 App Control 정책으로 전환합니다.
    4. 비밀번호 재설정 & 기기 상태 검사를 요구합니다.
    5. Teams 적응형 카드를 통해 SOC와 사용자의 관리자에게 알립니다.

관리자 명령 및 엔드포인트(복사/붙여넣기용)

  • Microsoft Graph(권장):
    • 세션 취소(사용자): POST /users/{id}/revokeSignInSessions
    • 모든 새로 고침 토큰 무효화(사용자): POST /users/{id}/invalidateAllRefreshTokens
    • 위험 사용자 침해 확인: POST /identityProtection/riskyUsers/{id}/confirmCompromised
    • 오탐 해제: POST /identityProtection/riskyUsers/{id}/dismiss
  • PowerShell(Entra / AzureAD)
    • (레거시): Revoke-AzureADUserAllRefreshToken -ObjectId <UserId>
    • MSGraph PowerShell: Invoke-MgGraphRequest -Method POST -Uri "/users/$id/revokeSignInSessions"

팁: 향후 자동화를 안정적으로 유지하려면 항상 Microsoft Graph를 우선 사용하십시오. UPN 목록을 입력받아 내장된 백오프 로직과 함께 이 호출을 반복하는 런북을 작성하십시오.


헌팅 및 모니터링(KQL)

조건부 액세스 변경 후에도 이전 토큰을 계속 사용한 사용자는 누구인가?

SigninLogs
| where TimeGenerated >= ago(24h)
| extend ATIssue = parse_json(AuthenticationDetails)[0].Succeeded
| extend CAResult = tostring(Status)
| project TimeGenerated, UserPrincipalName, AppDisplayName, RiskDetail, ConditionalAccessStatus, CAResult, ATIssue
| where ConditionalAccessStatus in ("notApplied","success") and RiskDetail == "none"

스크립트 기반 새로 고침 토큰 남용이 의심되는 무음 RT 순환 급증

SigninLogs
| where AuthenticationRequirement == "singleFactorAuthentication"
| where TokenIssuerType == "AzureAD" and ResultType == 0
| summarize count() by UserPrincipalName, bin(TimeGenerated, 30m)
| where count_ > 50

중요한 지표

  • 적용 소요 시간(Time-to-enforce)(정책 변경 → 첫 CA 챌린지 발생) ↓
  • 토큰 취소 지연 시간(조치 → 사용자 강제 재인증) ↓
  • 차단된 위험 세션(주당) ↑, 오탐 ↓
  • 변경 후에도 사용자 1,000명당 헬프데스크 인증 티켓 수가 안정적으로 유지됨
  • 위험 급증과 연관된 CAE 무효화(세션 중 실시간 대응 입증)
  • 특권 로그인 빈도 준수율(오래된 세션이 남지 않도록 보장) ↑

30/60/90일 실행 계획

0~30일 – 기반 구축

  • CAE를 활성화하고 지원되는 애플리케이션을 문서화합니다.
  • 사용자 위험 차단 및 로그인 위험 단계별 인증 강화 CA 정책을 구현합니다.
  • 생산성 앱은 로그인 빈도를 8~12시간으로, 관리 도구는 1~4시간으로 설정합니다.
  • 관리되지 않는 엔드포인트를 대상으로 App Control을 파일럿 적용합니다.

31~60일 – 토큰 관리 원칙

  • 보안 그룹 단위로 새로 고침 토큰을 일괄 무효화하는 Graph 런북을 구축하십시오.
  • Playbook B를 Microsoft Defender 경고와 직접 연결합니다(위험 사용자 → 자동 취소 및 격리).
  • 지속 세션을 줄이고 레거시 토큰 수명 정책을 비활성화합니다.

61~90일 – 제로 트러스트 조정

  • CAE 적용 범위를 확대하고, 세션 중 추가 확인 요구가 의도대로 원활하게 작동하는지 검증합니다.
  • 사용자 또는 로그인 위험이 낮음/중간 이상이면 권한 상승을 차단하도록 PIM 가드레일을 추가합니다.
  • 위에서 정리한 지표를 활용해 Identity Session Health 통합 문서를 구축합니다.
  • 토큰 취소 속도와 CA 적용 메커니즘을 검증하기 위해 퍼플 팀 훈련을 실시합니다.

흔한 함정(및 더 안전한 기본값)

  • 정책에만 의존 → 항상 토큰을 직접 관리하세요(CAE + 취소 + 로그인 빈도).
  • 전역 단일 로그인 빈도 → 정책을 관리자 워크로드와 일반 작업자 앱으로 나누세요.
  • 정오에 테넌트 전체 취소 → 대규모 운영 중단을 피하도록 그룹과 시간대별로 단계적으로 배포하세요.
  • 모바일 백그라운드 새로 고침 무시 → 추가 프롬프트가 나타날 수 있으므로 모바일 사용자에게 변경 사항을 미리 안내하세요.
  • 비상 액세스 계정 제외 누락 → 항상 모니터링되고 철저히 테스트된 두 개의 비상 액세스(break-glass) 계정을 유지하세요.

CAB 한 줄 요약(경영진 친화형)

정책을 토큰 수명 주기에 직접 연결했습니다. 지속적 액세스 평가(Continuous Access Evaluation)와 대상 지정 취소를 통해 위험이나 정책 변경이 이제 즉시 적용되어, 일상 업무를 멈추지 않으면서도 노출 기간을 줄였습니다.

Entities in this article

Conditional Access Continuous access evaluation (CAE) Zero Trust Microsoft Entra ID Access token Exchange Online Microsoft Graph SharePoint Microsoft 365 Caching

Related articles

RSS