Share via


조건부 액세스: 디바이스에 대한 필터

조건부 액세스 정책을 만들 때 관리자가 환경에서 특정 장치를 대상으로 지정하거나 제외하는 기능을 요청했습니다. 디바이스에 대한 필터 조건은 관리자에게 이 기능을 제공합니다. 이제 디바이스 필터에 대해 지원되는 연산자 및 속성을 사용하여 특정 디바이스를 대상으로 지정할 수 있으며, 조건부 액세스 정책에서 사용 가능한 기타 할당 조건을 지정할 수 있습니다.

조건부 액세스 정책 조건에서 디바이스에 대한 필터 만들기

일반적인 시나리오

이제 조직에서 디바이스에 대한 필터 조건을 사용하여 여러 시나리오를 사용하도록 설정할 수 있습니다. 다음 시나리오에서는 이 새 조건을 사용하는 방법의 예를 제공합니다.

  • 권한 있는 리소스에 대한 액세스 제한. 이 예제에서는 권한 있는 역할이 할당된 사용자로부터 Windows Azure 서비스 관리 API에 대한 액세스를 허용하고, 권한 있는 관리자 워크스테이션 또는 보안 관리자 워크스테이을 충족하고, 규정 준수로 증명된 디바이스에서 다단계 인증 및 액세스를 충족한다고 가정해 보겠습니다. 이 시나리오에서 조직은 두 가지 조건부 액세스 정책을 만듭니다.
    • 정책 1: 관리자 역할이 있는 모든 사용자, Windows Azure 서비스 관리 API 클라우드 앱에 액세스 및 액세스 제어의 경우 액세스 권한을 부여하지만 다단계 인증이 필요하고 디바이스를 규격으로 표시해야 합니다.
    • 정책 2: 규칙 식 device.extensionAttribute1을 사용하는 디바이스에 대한 필터를 제외하고 Windows Azure 서비스 관리 API 클라우드 앱에 액세스하는 관리자가 있는 모든 사용자는 SAW 및 액세스 제어의 경우 차단입니다. Microsoft Entra 디바이스 개체에서 ExtensionAttributes를 업데이트하는 방법을 알아봅니다.
  • 지원되지 않는 운영 체제 버전을 실행하는 디바이스에서 조직 리소스에 대한 액세스를 차단합니다. 이 예제에서는 Windows 10 이전의 Windows OS 버전에서 리소스에 대한 액세스를 차단한다고 가정해 보겠습니다. 이 시나리오에서 조직은 다음과 같은 조건부 액세스 정책을 만듭니다.
    • 모든 사용자는 모든 클라우드 앱에 액세스하고, 규칙 식 device.operatingSystem equals Windows 및 device.operatingSystemVersion startsWith "10.0"을 사용하여 디바이스에 대한 필터를 제외하고, 액세스 제어, 차단이 가능합니다.
  • 특정 디바이스에서 측정 계정에 대한 다단계 인증을 요구하지 않습니다. 이 예제에서는 Teams 휴대폰 또는 Surface Hub 디바이스와 같은 특정 디바이스에서 서비스 계정을 사용할 때 다단계 인증을 요구하지 않도록 할 수 있습니다. 이 시나리오에서 조직은 다음과 같은 두 가지 조건부 액세스 정책을 만듭니다.
    • 정책 1: 서비스 계정을 제외한 모든 사용자는 모든 클라우드 앱에 액세스하고, 액세스 제어, 액세스 권한 부여가 가능하지만 다단계 인증이 필요합니다.
    • 정책 2: 일부 사용자 및 그룹과 서비스 계정만을 포함하는 포함 그룹은 모든 클라우드 앱에 액세스하고, 규칙 식 device.extensionAttribute2 not equals TeamsPhoneDevice를 사용하여 디바이스에 대한 필터를 제외하고, 액세스 제어, 차단이 가능합니다.

참고 항목

Microsoft Entra ID는 디바이스 인증을 사용하여 디바이스 필터 규칙을 평가합니다. Microsoft Entra ID에 등록되지 않은 디바이스의 경우 모든 디바이스 속성은 null 값으로 간주되며 해당 디바이스가 디렉터리에 존재하지 않으므로 디바이스 특성을 확인할 수 없습니다. 등록되지 않은 디바이스에 대한 정책을 대상으로 지정하는 가장 좋은 방법은 구성된 필터 규칙이 적용되므로 음수 연산자를 사용하는 것입니다. 양수 연산자를 사용하는 경우 필터 규칙은 디바이스가 디렉터리에 있고 구성된 규칙이 디바이스의 특성과 일치하는 경우에만 적용됩니다.

조건부 액세스 정책 만들기

디바이스용 필터는 조건부 액세스 정책을 만들 때 선택적으로 사용할 수 있는 컨트롤입니다.

다음 단계는 일반적인 시나리오에서 첫 번째 시나리오를 지원하는 두 가지 조건부 액세스 정책을 만드는 데 도움이 됩니다.

정책 1: 관리자 역할이 있는 모든 사용자, Windows Azure 서비스 관리 API 클라우드 앱에 액세스 및 액세스 제어의 경우 액세스 권한을 부여하지만 다단계 인증이 필요하고 디바이스를 규격으로 표시해야 합니다.

  1. 최소한 조건부 액세스 관리자Microsoft Entra 관리 센터에 로그인합니다.
  2. 보호>조건부 액세스로 이동합니다.
  3. 새 정책 만들기를 선택합니다.
  4. 정책에 이름을 지정합니다. 조직에서 정책 이름에 의미 있는 표준을 만드는 것이 좋습니다.
  5. 할당 아래에서 사용자 또는 워크로드 ID를 선택합니다.
    1. 포함에서 디렉터리 역할을 선택한 다음, 이름에 관리자가 있는 모든 역할을 선택합니다.

      Warning

      조건부 액세스 정책은 기본 제공 역할을 지원합니다. 조건부 액세스 정책은 관리 단위 범위 또는 사용자 지정 역할을 비롯한 다른 역할 형식에는 적용되지 않습니다.

    2. 제외에서 사용자 및 그룹을 선택하고 조직의 응급 액세스 또는 비상 계정을 선택합니다.

    3. 완료를 선택합니다.

  6. 대상 리소스>에서 클라우드 앱>에는>앱 선택, Windows Azure 서비스 관리 API를 선택하고 선택을 선택합니다.
  7. 액세스 제어>권한 부여에서 액세스 권한 부여, 다단계 인증 필요, 디바이스를 규정 준수 상태로 표시해야 함을 선택한 다음, 선택을 선택합니다.
  8. 설정을 확인하고 정책 사용켜기로 설정합니다.
  9. 만들기를 선택하여 정책을 만들어 사용하도록 설정합니다.

정책 2: 규칙 식 device.extensionAttribute1을 사용하는 디바이스에 대한 필터를 제외하고 Windows Azure 서비스 관리 API 클라우드 앱에 액세스하는 관리자 역할이 있는 모든 사용자는 SAW 및 액세스 제어인 Block과 같습니다.

  1. 새 정책 만들기를 선택합니다.
  2. 정책에 이름을 지정합니다. 조직에서 정책 이름에 의미 있는 표준을 만드는 것이 좋습니다.
  3. 할당 아래에서 사용자 또는 워크로드 ID를 선택합니다.
    1. 포함에서 디렉터리 역할을 선택한 다음, 이름에 관리자가 있는 모든 역할을 선택합니다.

      Warning

      조건부 액세스 정책은 기본 제공 역할을 지원합니다. 조건부 액세스 정책은 관리 단위 범위 또는 사용자 지정 역할을 비롯한 다른 역할 형식에는 적용되지 않습니다.

    2. 제외에서 사용자 및 그룹을 선택하고 조직의 응급 액세스 또는 비상 계정을 선택합니다.

    3. 완료를 선택합니다.

  4. 대상 리소스>에서 클라우드 앱>에는>앱 선택, Windows Azure 서비스 관리 API를 선택하고 선택을 선택합니다.
  5. 조건, 디바이스에 대한 필터.
    1. 구성로 전환합니다.
    2. 규칙과 일치하는 디바이스정책에서 필터링된 디바이스 제외로 설정합니다.
    3. 속성을 ExtensionAttribute1, 연산자를 Equals, 값을 SAW로 설정합니다.
    4. 완료를 선택합니다.
  6. 액세스 제어>권한 부여에서 액세스 차단을 선택하고 선택을 선택합니다.
  7. 설정을 확인하고 정책 사용켜기로 설정합니다.
  8. 만들기를 선택하여 정책을 만들어 사용하도록 설정합니다.

Warning

규정 준수 디바이스를 필요로 하는 정책은 디바이스 규정 준수가 적용되지 않는 경우에도 정책 평가 중에 사용자에게 Mac, iOS, Android에서 디바이스 인증서를 선택하라는 메시지를 표시할 수 있습니다. 해당 메시지는 디바이스가 규정을 준수할 때까지 반복적으로 표시될 수도 있습니다.

특성 값 설정

확장 특성은 Graph API를 통해 설정할 수 있습니다. 디바이스 특성을 설정하는 방법에 대한 자세한 내용은 디바이스 업데이트 문서를 참조하세요.

디바이스에 대한 필터 Graph API

디바이스에 대한 필터 API는 Microsoft Graph v1.0 엔드포인트에서 사용할 수 있으며 엔드포인트 https://graph.microsoft.com/v1.0/identity/conditionalaccess/policies/를 사용하여 액세스할 수 있습니다. 새 조건부 액세스 정책을 만들 때 디바이스에 대한 필터를 구성하거나 기존 정책을 업데이트하여 디바이스에 대한 필터 조건을 구성할 수 있습니다. 기존 정책을 업데이트하려면 기존 정책의 정책 ID를 추가하고 다음 요청 본문을 실행하여 Microsoft Graph v1.0 엔드포인트에 대한 패치 호출을 수행할 수 있습니다. 이 예에서는 SAW 디바이스로 표시되지 않은 디바이스를 제외하는 디바이스에 대한 필터 조건 구성을 보여 줍니다. 규칙 구문은 둘 이상의 단일 식으로 구성될 수 있습니다. 구문에 대해 자세히 알아보려면 Microsoft Entra ID의 그룹에 대한 동적 멤버 관리 규칙을 참조하세요.

{
    "conditions": {
        "devices": {
            "deviceFilter": {
                "mode": "exclude",
                "rule": "device.extensionAttribute1 -ne \"SAW\""
            }
        }
    }
}

필터에 대한 지원되는 연산자 및 디바이스 속성

조건부 액세스에서 디바이스에 대한 필터 조건에 다음과 같은 디바이스 특성을 사용할 수 있습니다.

참고 항목

Microsoft Entra ID는 디바이스 인증을 사용하여 디바이스 필터 규칙을 평가합니다. Microsoft Entra ID에 등록되지 않은 디바이스의 경우 모든 디바이스 속성은 null 값으로 간주되며 해당 디바이스가 디렉터리에 존재하지 않으므로 디바이스 특성을 확인할 수 없습니다. 등록되지 않은 디바이스에 대한 정책을 대상으로 지정하는 가장 좋은 방법은 구성된 필터 규칙이 적용되므로 음수 연산자를 사용하는 것입니다. 양수 연산자를 사용하는 경우 필터 규칙은 디바이스가 디렉터리에 있고 구성된 규칙이 디바이스의 특성과 일치하는 경우에만 적용됩니다.

지원되는 디바이스 특성 지원되는 연산자 지원되는 값 예시
deviceId Equals, NotEquals, In, NotIn GUID인 유효한 deviceId (device.deviceid -eq "498c4de7-1aee-4ded-8d5d-000000000000")
displayName Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn 모든 문자열 (device.displayName -contains "ABC")
deviceOwnership Equals, NotEquals 지원되는 값은 개인 디바이스 가져오기의 경우 "개인"이고 회사 소유 디바이스의 경우 "회사"입니다. (device.deviceOwnership -eq "Company")
isCompliant Equals, NotEquals 지원되는 값은 호환 디바이스의 경우 "True"이고 비호환 디바이스의 경우 "False"입니다. (device.isCompliant -eq "True")
제조업체 Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn 모든 문자열 (device.manufacturer -startsWith “Microsoft”)
mdmAppId Equals, NotEquals, In, NotIn 유효한 MDM 애플리케이션 ID (device.mdmAppId -in ["0000000a-0000-0000-c000-000000000000"]
model Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn 모든 문자열 (device.model -notContains "Surface")
operatingSystem Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn 유효한 운영 체제(예: Windows, iOS 또는 Android) (device.operatingSystem -eq "Windows")
operatingSystemVersion Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn 유효한 운영 체제 버전(예: Windows 7의 경우 6.1, Windows 8의 경우 6.2 또는 Windows 10 및 Windows 11의 경우 10.0) (device.operatingSystemVersion -in ["10.0.18363", "10.0.19041", "10.0.19042", "10.0.22000"])
physicalIds Contains, NotContains 예를 들어 모든 Windows Autopilot 디바이스는 디바이스 physicalIds 속성에 ZTDId(가져온 모든 Windows Autopilot 디바이스에 할당된 고유 값)를 저장합니다. (device.physicalIds -contains "[ZTDId]:value")
profileType Equals, NotEquals 디바이스에 대해 설정된 유효한 프로필 형식 집합입니다. 지원되는 값은 RegisteredDevice(기본값), SecureVM(Microsoft Entra 로그인으로 활성화된 Windows VM에 사용), Printer(프린터에 사용), Shared(공유 디바이스에 사용), IoT(IoT 디바이스에 사용)입니다. (device.profileType -eq "Printer")
systemLabels Contains, NotContains 시스템에서 디바이스에 적용한 레이블 목록입니다. 지원되는 값 중 일부는 AzureResource(Microsoft Entra 로그인으로 활성화된 Windows VM에 사용), M365Managed(Microsoft Managed Desktop을 사용하여 관리되는 디바이스에 사용), MultiUser(공유 디바이스에 사용)입니다. (device.systemLabels -contains "M365Managed")
trustType Equals, NotEquals 디바이스에 대해 유효한 등록된 상태입니다. 지원되는 값은 AzureAD(Microsoft Entra 조인 디바이스에 사용), ServerAD(Microsoft Entra 하이브리드 조인 디바이스에 사용), Workplace(Microsoft Entra 등록 디바이스에 사용)입니다. (device.trustType -eq "ServerAD")
extensionAttribute1-15 Equals, NotEquals, StartsWith, NotStartsWith, EndsWith, NotEndsWith, Contains, NotContains, In, NotIn extensionAttributes1-15는 고객이 디바이스 개체에 사용할 수 있는 특성입니다. 고객은 사용자 지정 값을 사용하여 extensionAttributes1부터 15 중에서 업데이트하고 이를 조건부 액세스의 디바이스에 대한 필터 조건에 사용할 수 있습니다. 모든 문자열 값을 사용할 수 있습니다. (device.extensionAttribute1 -eq "SAW")

참고 항목

복잡한 규칙을 빌드하거나 디바이스 ID에 deviceid와 같은 너무 많은 개별 식별자를 사용하는 경우 "필터 규칙의 최대 길이는 3072자"라는 점에 유의하세요.

참고 항목

ContainsNotContains 연산자는 특성 유형에 따라 다르게 작동합니다. operatingSystemmodel와 같은 문자열 특성의 경우 Contains 연산자는 지정된 substring이 특성 내에서 발생하는지 여부를 나타냅니다. physicalIdssystemLabels와 같은 문자열 컬렉션 특성의 경우 Contains 연산자는 지정된 문자열이 컬렉션의 전체 문자열 중 하나와 일치하는지 여부를 나타냅니다.

Warning

조건부 액세스 정책 평가 시 extensionAttributes1-15에서 값을 사용할 수 있도록 디바이스는 Microsoft Intune 관리, 규격 또는 Microsoft Entra 하이브리드 조인되어야 합니다.

디바이스에 대한 필터를 사용하는 정책 동작

조건부 액세스의 디바이스에 대한 필터 조건은 Microsoft Entra ID에 등록된 디바이스의 디바이스 특성에 따라 정책을 평가하므로 정책이 적용되거나 적용되지 않는 상황을 이해하는 것이 중요합니다. 다음 표에서는 디바이스에 대한 필터 조건을 구성할 때의 동작을 보여 줍니다.

디바이스에 대한 필터 조건 디바이스 등록 상태 적용된 디바이스 필터
양수 연산자(Equals, StartsWith, EndsWith, Contains, In)와 모든 특성 사용을 포함하는 포함/제외 모드 등록되지 않은 디바이스 아니요
양수 연산자(Equals, StartsWith, EndsWith, Contains, In)와 extensionAttributes1-15를 제외한 특성 사용을 포함하는 포함/제외 모드 등록된 디바이스 예, 조건이 충족되는 경우
양수 연산자(Equals, StartsWith, EndsWith, Contains, In)와 extensionAttributes1-15를 포함한 특성 사용을 포함하는 포함/제외 모드 Intune에서 관리하는 등록된 디바이스 예, 조건이 충족되는 경우
양수 연산자(Equals, StartsWith, EndsWith, Contains, In)와 extensionAttributes1-15를 포함한 특성 사용을 포함하는 포함/제외 모드 Intune에서 관리하지 않는 등록된 디바이스 예, 조건이 충족되는 경우. extensionAttributes1-15를 사용하는 경우 디바이스가 규정을 준수하거나 Microsoft Entra 하이브리드에 조인된 경우 정책이 적용됩니다.
음수 연산자(NotEquals, NotStartsWith, NotEndsWith, NotContains, NotIn)와 모든 특성 사용을 포함하는 포함/제외 모드 등록되지 않은 디바이스
음수 연산자(NotEquals, NotStartsWith, NotEndsWith, NotContains, NotIn)와 extensionAttributes1-15를 제외한 모든 특성 사용을 포함하는 포함/제외 모드 등록된 디바이스 예, 조건이 충족되는 경우
음수 연산자(NotEquals, NotStartsWith, NotEndsWith, NotContains, NotIn)와 extensionAttributes1-15를 포함한 모든 특성 사용을 포함하는 포함/제외 모드 Intune에서 관리하는 등록된 디바이스 예, 조건이 충족되는 경우
음수 연산자(NotEquals, NotStartsWith, NotEndsWith, NotContains, NotIn)와 extensionAttributes1-15를 포함한 모든 특성 사용을 포함하는 포함/제외 모드 Intune에서 관리하지 않는 등록된 디바이스 예, 조건이 충족되는 경우. extensionAttributes1-15를 사용하는 경우 디바이스가 규정을 준수하거나 Microsoft Entra 하이브리드에 조인된 경우 정책이 적용됩니다.

다음 단계