> ## Documentation Index
> Fetch the complete documentation index at: https://docs.iru.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 인증 정책

> 모든 로그인 시 평가되는 인증 정책 규칙을 사용하여 Iru Identity에서 각 애플리케이션에 로그인할 수 있는 사람과 증명해야 하는 요소를 결정합니다.

**인증 정책**은 누군가 애플리케이션에 로그인할 때마다 Iru가 적용하는 규칙집입니다.
로그인을 살펴보고, 정의한 일련의 조건을 평가하여, 단일 **결정**(허용 또는 거부)을
내립니다. 정책은 대시보드의 **Policies → Authentication policies**에서 관리합니다.

정책을 사용하면 *"관리되고 암호화된 기기에서만 로그인 허용"* 또는 \*"최신 macOS
버전만 허용"\*과 같은 요구 사항을 표현하고, 모든 사용자와 모든 로그인에 일관되게
적용할 수 있습니다.

<Note>
  정책은 **하나 이상의 애플리케이션에 할당**되어야만 적용됩니다. 애플리케이션의
  정책은 해당 애플리케이션에 대한 로그인을 관리합니다.
  [애플리케이션에 정책 할당](#assign-a-policy-to-applications)을 참조하세요.
</Note>

## 정책 구조

정책은 **조건** 트리로 배열된 **규칙** 세트입니다. Iru는 정책을 평가할 때마다
트리를 위에서부터 탐색합니다.

* **분기 조건**은 컨텍스트에 따라 로그인을 다른 경로로 보냅니다. 예를 들어 정책이
  로그인하는 기기 종류에 따라 분기하므로, macOS 기기는 macOS 요구 사항에 대해,
  Windows 컴퓨터는 Windows 요구 사항에 대해 검사됩니다.
* **요구 사항 조건**은 무언가가 참인지 확인합니다. 예를 들어 기기의 디스크가
  암호화되어 있는지 또는 관리되고 있는지 확인합니다. 충족되지 않은 각 요구 사항은
  **위반**으로 기록됩니다.

탐색이 끝나면 정책은 통과(위반 없음) 또는 실패(하나 이상의 위반) 상태가 됩니다.

```mermaid theme={null}
flowchart TD
  start["할당된 앱에 로그인"] --> branch{"어떤 종류의<br/>기기인가?"}
  branch -->|"macOS"| mac["macOS<br/>요구 사항 확인"]
  branch -->|"Windows"| win["Windows<br/>요구 사항 확인"]
  branch -->|"모바일"| ios["모바일<br/>요구 사항 확인"]
  mac --> decision{"모든 요구 사항<br/>충족?"}
  win --> decision
  ios --> decision
  decision -->|"예"| allow["허용: 로그인 발급"]
  decision -->|"아니요"| deny["거부: 위반 기록"]
```

<Frame caption="정책 빌더: Trigger가 Enforce Device Health로 이어지고 플랫폼별로 분기됩니다. 각 플랫폼에는 Enabled, Disabled 또는 Ignored로 설정된 자체 기기 상태 요구 사항이 있습니다.">
  <img src="https://mintcdn.com/iru/Pd7a0-sHKi0jGjE6/assets/media/images/auth-policy-builder.webp?fit=max&auto=format&n=Pd7a0-sHKi0jGjE6&q=85&s=8fdcb1f60222dd7aa5438914bc18ff5e" alt="인증 정책 편집기: Trigger 노드가 macOS, Windows, iOS, Android 열로 분기되는 Enforce Device Health 노드에 연결되어 있습니다. 각 플랫폼에는 FileVault, BitLocker, Jailbroken, Passcode Set, OS Version 등의 기기 상태 검사가 나열되며 각각 Enabled, Disabled 또는 Ignored로 설정됩니다." width="2000" height="1046" data-path="assets/media/images/auth-policy-builder.webp" />
</Frame>

## 로그인 시 정책 평가 방식

```mermaid theme={null}
sequenceDiagram
  participant U as 사용자
  participant A as 애플리케이션
  participant I as Iru Identity

  U->>A: 앱 열기
  A->>I: Iru에 인증 요청
  I->>I: 사용자 신원 확인
  I->>I: 할당된 정책 평가
  alt 정책 통과
    I-->>A: Single Sign-On 발급
    A-->>U: 액세스 허용
  else 정책 실패
    I-->>U: 거부 및 누락된 항목 설명
  end
```

애플리케이션에 대한 모든 로그인은 결정을 생성하며, Iru는 위반을 포함하여 해당
결정을 기록하므로 나중에 [활동 로그](/ko/identity/administration/activity-log)에서
발생한 일을 검토할 수 있습니다.

<Info>
  정책은 로그인이 허용되는지 **여부**와 이를 위해 **참이어야 하는 조건**을
  결정합니다. 사용자에게 애플리케이션이 *할당*되었는지 여부는 별도의 검사입니다.
  누군가 앱에 접근하려면 둘 다 성공해야 합니다.
  [액세스 할당](/ko/identity/applications/assigning-access)을 참조하세요.
</Info>

## 정책이 요구할 수 있는 항목

로그인에는 패스키 또는 Iru Access 인증기가 **항상 필요**합니다. 이는 모든 사람에게
기본 제공되며 정책으로 켜는 것이 아닙니다. 정책이 그 위에 추가하는 것은 **기기
신뢰**로, 어떤 기기가 로그인할 수 있고 어떤 상태여야 하는지를 정합니다.

<CardGroup cols={2}>
  <Card title="신뢰할 수 있는 기기" icon="laptop">
    알려지고 정상이며 관리되는 기기(예: 디스크 암호화가 켜진 기기)에서의 로그인을
    요구합니다. [기기 신뢰](/ko/identity/authentication/device-trust)를 참조하세요.
  </Card>

  <Card title="특정 플랫폼" icon="display">
    선택한 기기 플랫폼에서만 로그인을 허용하고 나머지는 거부합니다.
  </Card>

  <Card title="기기 상태 태세" icon="laptop-medical">
    디스크 암호화, 방화벽 또는 최소 OS 버전과 같은 플랫폼별 신호를 요구합니다.
    [기기 신뢰](/ko/identity/authentication/device-trust)를 참조하세요.
  </Card>
</CardGroup>

## 정책이 실패할 때 발생하는 일

로그인이 정책의 요구 사항을 충족하지 않으면 Iru는 이를 **거부**하고 그 이유를
하나 이상의 **위반**으로 기록합니다. 각 위반에는 충족되지 않은 요구 사항, 정책이
기대한 값, 실제로 확인된 값이 기록됩니다. 예를 들어 디스크 암호화가 *활성화*되어야
하는데 *비활성화*된 것으로 확인된 경우입니다.

<Warning>
  어떤 경로도 성공할 수 없도록 정책이 구성된 경우(예: 허용된 기기 플랫폼이 없는
  경우), 해당 정책이 관리하는 애플리케이션에 대한 모든 로그인이 거부됩니다. 광범위하게
  할당하기 전에 정책의 허용 플랫폼을 검토하세요.
</Warning>

## 정책 구성

<Steps>
  <Step title="정책 생성">
    **Policies → Authentication policies**에서 **Add policy**를 선택하고 명확한 이름과
    설명을 지정합니다. 이름은 애플리케이션에 할당할 때 정책을 식별하는 방법입니다.
  </Step>

  <Step title="각 로그인이 충족해야 하는 조건 선택">
    로그인이 충족해야 하는 조건을 추가합니다. 특정 기기 플랫폼에서만 로그인을 허용하고,
    각 플랫폼에 대해 디스크 암호화가 켜져 있거나 기기가 관리되고 있는 등의 기기 상태
    신호를 요구할 수 있습니다. 사용 가능한 전체 신호는
    [기기 신뢰](/ko/identity/authentication/device-trust)를 참조하세요.
  </Step>

  <Step title="애플리케이션에 정책 할당">
    정책이 관리해야 하는 애플리케이션에 정책을 연결합니다. 그 시점부터 해당 앱에 대한
    모든 로그인이 이 정책에 따라 평가됩니다.
  </Step>

  <Step title="경험 확인">
    테스트 사용자로 할당된 앱에 로그인하여 결과를 확인합니다. 예기치 않게 액세스가
    거부되면 [활동 로그](/ko/identity/administration/activity-log)에서 기록된 위반을
    검토하세요.
  </Step>
</Steps>

## 애플리케이션에 정책 할당

정책은 애플리케이션에 연결될 때까지 아무 작업도 하지 않습니다. 각 정책은 **범위가
지정된** 애플리케이션 목록을 유지하며, 대시보드의 정책 페이지에서 애플리케이션을
연결하거나 분리합니다. 애플리케이션에 할당된 정책은 누군가 해당 애플리케이션에
로그인할 때마다 Iru가 평가하는 정책입니다.

<Tip>
  보안 요구 사항이 동일한 애플리케이션을 공유 정책으로 묶으세요. 요구 사항이 변경되면
  모든 앱을 편집하는 대신 하나의 정책만 업데이트하면 됩니다.
</Tip>

## 다음 단계

<CardGroup cols={2}>
  <Card title="인증기" icon="key" href="/ko/identity/authentication/authenticators">
    사용자가 모든 로그인에서 본인임을 증명하는 데 사용하는 자격 증명.
  </Card>

  <Card title="기기 신뢰" icon="laptop" href="/ko/identity/authentication/device-trust">
    알려지고 정상이며 관리되는 기기를 액세스 조건으로 요구합니다.
  </Card>

  <Card title="위험 및 적응형 액세스" icon="gauge-high" href="/ko/identity/authentication/risk-based-access">
    로그인의 신뢰도에 따라 액세스가 조정되도록 합니다.
  </Card>

  <Card title="로그인 경험" icon="right-to-bracket" href="/ko/identity/authentication/sign-in-experience">
    사용자 측에서 평가가 어떻게 보이는지 확인합니다.
  </Card>
</CardGroup>
