Microsoft Entra ID는 다양한 인증 및 권한 부여 흐름을 지원하여 모든 애플리케이션 및 디바이스 유형에서 원활한 환경을 제공합니다. 일부 인증 흐름은 다른 인증 흐름보다 위험이 높습니다. 보안 상태를 보다 세세하게 제어할 수 있도록 조건부 액세스를 통해 특정 인증 흐름을 제어할 수 있습니다. 이 컨트롤은 디바이스 코드 흐름을 명시적으로 대상으로 하는 것으로 시작합니다.
디바이스 코드 흐름
디바이스 코드 흐름을 사용하면 공유 디바이스 또는 디지털 사이니지와 같은 로컬 입력 디바이스가 없는 디바이스에 로그인할 수 있습니다. 디바이스 코드 흐름은 피싱 공격의 일부이거나 관리되지 않는 디바이스의 회사 리소스에 액세스하는 데 사용할 수 있는 고위험 인증 방법입니다. 조건부 액세스 정책의 다른 컨트롤과 함께 디바이스 코드 흐름 제어를 구성합니다. 예를 들어 Android 기반 회의실 디바이스에 디바이스 코드 흐름을 사용하는 경우 특정 네트워크 위치의 Android 디바이스를 제외한 모든 위치에서 디바이스 코드 흐름을 차단합니다.
필요한 경우에만 디바이스 코드 흐름을 허용합니다. Microsoft에서는 가능하면 디바이스 코드 흐름을 차단하는 것이 좋습니다.
인증 전송
인증 전송은 사용자가 인증된 상태를 한 디바이스에서 다른 디바이스로 원활하게 전송할 수 있는 흐름입니다. 예를 들어 사용자는 데스크톱 버전의 Outlook에서 모바일 장치에서 스캔할 때 인증된 상태를 모바일 디바이스로 전송하는 QR 코드를 볼 수 있습니다. 이 기능은 사용자의 마찰을 줄이는 간단하고 직관적인 환경을 제공합니다.
프로토콜 추적
지정된 인증 흐름에 조건부 액세스 정책이 정확하게 적용되도록 하기 위해 프로토콜 추적이라는 기능을 사용합니다. 이 추적은 디바이스 코드 흐름 또는 인증 전송을 사용하여 세션에 적용됩니다. 이러한 경우 세션은 프로토콜 추적으로 간주됩니다. 정책이 존재하는 경우 모든 프로토콜 추적 세션은 정책 적용의 대상이 됩니다. 프로토콜 추적 상태는 후속 새로 고침을 통해 유지되므로 비 디바이스 코드 흐름 또는 인증 전송 흐름이 인증 흐름 정책의 적용을 받을 수 있습니다.
예시:
- SharePoint를 제외한 모든 곳에서 디바이스 코드 흐름을 차단하는 정책을 구성합니다.
- 구성된 정책에서 허용하는 대로 디바이스 코드 흐름을 사용하여 SharePoint에 로그인합니다. 이 시점에서 세션은 추적된 프로토콜로 간주됩니다.
- 디바이스 코드 흐름뿐만 아니라 모든 인증 흐름을 사용하여 동일한 세션의 컨텍스트 내에서 Exchange에 로그인하려고 합니다.
- 세션의 프로토콜 추적 상태로 인해 구성된 정책에 의해 차단됩니다.
로그인 로그
디바이스 코드 흐름을 제한하거나 차단하는 정책을 구성할 때 조직에서 디바이스 코드 흐름이 사용되는지 여부와 방법을 이해해야 합니다. 보고서 전용 모드에서 조건부 액세스 정책을 만들거나 인증 프로토콜 필터를 사용하여 디바이스 코드 흐름 이벤트에 대한 로그인 로그를 필터링하면 도움이 될 수 있습니다.
프로토콜 추적 관련 오류 문제를 해결하는 데 도움을 주기 위해 조건부 액세스 로그인 로그의 작업 세부 정보 섹션에 원래 전송 방법이라는 새 속성을 추가했습니다. 이 속성은 문제가 되는 요청의 프로토콜 추적 상태를 표시합니다. 예를 들어, 이전에 디바이스 코드 흐름이 수행된 세션의 경우 원래 전송 방법이 디바이스 코드 흐름으로 설정됩니다.
디바이스 등록 서비스 리소스에 대한 인증 흐름 정책 적용
Microsoft는 2024년 9월 초부터 디바이스 등록 서비스에 인증 흐름 정책을 적용하기 시작했습니다. 이는 리소스 선택기에서 모든 리소스를 대상으로 하는 정책에만 적용됩니다. 조직에서 현재 디바이스 등록을 위해 디바이스 코드 흐름을 사용하고 있고 모든 리소스를 대상으로 하는 인증 흐름 정책이 있는 경우 영향을 피하기 위해 조건부 액세스 정책 범위에서 디바이스 등록 리소스를 제외해야 합니다. 조건부 액세스 정책 구성 환경 내에 있는 대상 리소스 옵션에서 디바이스 등록 서비스 리소스를 찾을 수 있습니다. 조건부 액세스 UX를 통해 디바이스 등록 서비스를 제외하려면 대상 리소스>제외>클라우드 앱 제외 선택>디바이스 등록 서비스로 이동해야 합니다. API의 경우 디바이스 등록 서비스에 대한 클라이언트 ID인 01cb2876-7ebd-4aa4-9cc9-d28bd4d359a9를 제외하여 정책을 업데이트해야 합니다.
조직에서 디바이스 등록 서비스에 대해 디바이스 코드 흐름을 사용하는지 확실하지 않은 경우 Microsoft Entra 로그인 로그를 활용하여 확인할 수 있습니다. 리소스 ID 필터에서 디바이스 등록 서비스 클라이언트 ID를 필터링하고 인증 프로토콜 필터 내에서 디바이스 코드 옵션을 활용하여 디바이스 코드 흐름 사용량으로 범위를 좁힐 수 있습니다.
예기치 못한 블록 문제 해결
조건부 액세스 정책에 의해 예기치 않게 차단된 로그인이 있거나 디바이스에서 예기치 않게 로그아웃된 경우 근본 원인이 인증 흐름 정책인지 확인해야 합니다. 로그인 로그로 이동하여 차단된 로그인을 클릭한 다음 작업 세부 정보: 로그인 창에서 조건부 액세스 탭으로 이동하여 확인을 수행할 수 있습니다. 적용된 정책이 인증 흐름 정책인 경우 해당 정책을 선택하여 일치하는 인증 흐름을 확인합니다.
디바이스 코드 흐름이 일치했지만 디바이스 코드 흐름이 해당 로그인에 대해 수행된 흐름이 아닌 경우 새로 고침 토큰이 프로토콜 추적되었습니다. 차단된 로그인을 클릭하고 작업 세부 정보: 로그인 창의 기본 정보 부분에서 원래 전송 방법 속성을 검색하여 이 사례를 확인할 수 있습니다. 구성된 정책이 모든 애플리케이션에 적용되는 경우 다음 오류 코드 및 메시지를 AADSTS530036: The refresh token is invalid due to authentication flow checks by Conditional Access. Additionally, since the authentication flows policy applies to all applications, the token will never be usable and should be deleted.
검색하여 프로토콜 추적 관련 오류를 확인할 수도 있습니다.
참고
프로토콜 추적 세션으로 인한 차단은 이 정책에서 예상되는 동작입니다. 가능한 영향으로는 특정 리소스에 액세스할 수 없거나 디바이스 로그아웃을 완료하지 못하는 것과 같은 문제가 발생할 수 있습니다. 정책이 enabled
상태일 때는 권장되는 수정 방법이 없습니다. 정책이 disabled
또는 report-only
로 설정된 경우, 디바이스를 다시 사용하려면 새 토큰을 받아야 할 수 있습니다.