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

# Microsoft Entra ID 연동 설정

> Microsoft Entra ID를 Living Security에 연결하여 ID, 로그인, 위험, 디바이스 및 공격 시뮬레이션 활동을 수집합니다.

export const EgressIpAllowlistBothSets = ({system}) => <Warning>
    <strong>{system}에는 하나가 아닌 두 세트의 주소가 필요합니다.</strong> Living Security는 자체 인프라에서 이 연동의 액세스 토큰을 발급하고 지속적으로 갱신하므로, 설정 트래픽과 동기화 트래픽은 서로 다른 네트워크에서 발생합니다. {system}에서 두 세트를 모두 허용 목록에 추가하고 계속 유지하십시오. 이는 설정 시에만 필요한 요구 사항이 아닙니다.
    <br />
    <br />
    <strong>연동 동기화 트래픽</strong> — 모든 리전에서 동일합니다.
    <br />
    <code>52.34.139.153/32</code>, <code>54.69.127.183/32</code>, <code>44.247.133.183/32</code>,{' '}
    <code>52.26.211.56/32</code>
    <br />
    <br />
    <strong>플랫폼 트래픽</strong> — 조직이 호스팅되는 리전의 행만 사용하십시오.
    <br />
    미국: <code>98.91.60.249/32</code>, <code>13.216.91.102/32</code>
    <br />
    유럽 연합: <code>34.246.236.210/32</code>, <code>52.31.102.238/32</code>
    <br />
    <br />
    동기화 세트만 허용 목록에 추가하면 설정이 완료되지 않습니다. 플랫폼 세트만 허용 목록에 추가하면 설정은 성공하지만 모든 동기화가 실패합니다. 두 가지 실패 유형과 변경 정책은{' '}
    <a href="/ko/integrations/managing/egress-ip-addresses">
      연동 송신 IP 주소 구성
    </a>{' '}
    문서를 참조하십시오.
  </Warning>;

export const PublicIntegrationNextSteps = () => <>
    <hr />
    <h2>관련 자료</h2>
    <ul>
      <li>
        <a href="/ko/signals/data-sources">연동 데이터가 Human Risk Management 신호로 변환되는 방식 알아보기</a>
      </li>
      <li>
        <a href="https://www.livingsecurity.com/integrations">Living Security 연동 살펴보기</a>
      </li>
      <li>
        <a href="https://app.livingsecurity.ai/">Living Security Platform 열기</a>
      </li>
      <li>
        <a href="https://www.livingsecurity.com/request-demo/">Living Security 데모 요청하기</a>
      </li>
    </ul>
  </>;

export const HandoffPaths = () => <Tabs>
    <Tab title="위임 설정(비밀 정보에 권장)">
      시스템 관리자를 제한된 권한으로 플랫폼에 초대합니다. 관리자가 자격 증명을 직접
      입력하므로 사용자는 비밀 정보를 다룰 필요가 없습니다.
    </Tab>
    <Tab title="자격 증명 전달">
      관리자에게 공급자 페이지를 보냅니다. 관리자가 자격 증명을 프로비저닝하여 사용자에게
      전달하면, 사용자가 Connect 대화 상자에 해당 자격 증명을 입력합니다.
    </Tab>
  </Tabs>;

export const ConnectInPlatform = ({tile, children}) => <Step title="Living Security Platform에 자격 증명 입력">
    <p>
      Living Security 액세스 권한을 보유한 담당자(프로그램 소유자 또는 초대된 경우 시스템
      관리자(위임된 설정))가 완료합니다.
    </p>
    <ol>
      <li>
        <strong>설정 → 통합 → 카탈로그</strong>로 이동하여{' '}
        <strong>{tile}</strong> 타일을 찾은 다음 <strong>연결</strong>을 클릭합니다.
      </li>
      <li>
        아래 필드를 입력한 다음 <strong>연결</strong>을 클릭합니다.
      </li>
    </ol>
    {children}
  </Step>;

export const SystemAdminBanner = ({system, recommendDelegated}) => <Note>
    <p>
      <strong>이 가이드는 {system} 관리자를 위한 문서입니다.</strong> {system} 내에서 API
      자격 증명을 생성하는 방법을 다루며, 이 작업에는 Living Security Platform이 아닌 {system}에 대한
      관리자 권한이 필요합니다.
    </p>
    <p>
      Living Security <strong>프로그램 소유자</strong>이면서 {system}을(를) 관리하지 않는 경우,
      이 페이지를 {system}을(를) 관리하는 담당자에게 전달하십시오. 담당자가 A부를 완료한 후 자격 증명을 귀하에게 전달하거나
      (플랫폼에 초대한 경우에는 담당자가 직접 입력할 수도 있습니다).
      {recommendDelegated && <>
          {' '}설정 과정에서 민감한 키 정보가 생성되므로, 시크릿이 귀하에게 전달되지 않도록{' '}
          <strong>위임 설정</strong> 방식을 권장합니다.
        </>}
    </p>
  </Note>;

<SystemAdminBanner system="Microsoft Entra ID" />

<HandoffPaths />

## 이 연동이 제공하는 데이터

Microsoft Entra ID는 정규화된 ID, 로그인, 위험, 디바이스 및 공격 시뮬레이션 활동을 제공할 수 있습니다. 검토된 예시는 다음과 같습니다.

* `account.compromised` — 침해된 것으로 표시된 계정
* `auth.login.unusual` — 비정상적인 환경에서 로그인
* `phishing.simulation.clicked` — 시뮬레이션을 클릭하고 신고하지 않음

이는 대표적인 예시이며, 모든 이벤트를 모든 테넌트에서 사용할 수 있음을 보장하는 것은 아닙니다. [연동 데이터가 신호가 되는 방식](/ko/signals/data-sources)을 참조하십시오.

## Living Security에 필요한 정보

| 자격 증명 | 설명 |
| - | - |
| **테넌트 ID** | Microsoft Entra 관리 센터의 디렉터리(테넌트) UUID |
| **클라이언트 ID** | 앱을 등록할 때 할당되는 애플리케이션(클라이언트) UUID |
| **클라이언트 비밀번호** | 앱 등록에서 생성한 비밀 자격 증명 — 연결 대화 상자에서는 이 필드가 **API 키**로 표시됩니다 |
| **Graph API host** | Microsoft Graph 호스트 이름(상용: `graph.microsoft.com`) |
| **Authority host** | Microsoft Entra 인증 기관 호스트 이름(상용: `login.microsoftonline.com`) |

**범위(애플리케이션 권한):**

| 권한 | 용도 |
| - | - |
| `User.Read.All` | 사용자 디렉터리 |
| `SecurityAlert.Read.All` | 보안 경고 |
| `AuditLog.Read.All` | 로그인 로그 및 MFA 등록 세부 정보 |
| `Policy.Read.ConditionalAccess` | 각 로그인에 대한 조건부 액세스 세부 정보 — 적용된 정책과 해당 정책이 시행한 권한 부여 제어. MFA 감지는 이 권한에 따라 달라집니다 |
| `AttackSimulation.Read.All` | Attack Simulation Training 결과 |
| `Device.Read.All` | Intune에서 관리하지 않는 디바이스를 포함한 Entra ID 디바이스 개체 |
| `DeviceManagementManagedDevices.Read.All` | Intune 관리 디바이스 |
| `IdentityRiskEvent.Read.All` | 유출된 자격 증명을 포함한 Identity Protection 위험 감지 |
| `GroupMember.ReadWrite.All` | **선택 사항.** 그룹 멤버십 조치 — 플레이북에서 사용자를 Microsoft Entra ID 그룹에 추가하거나 그룹에서 제거할 수 있습니다 |

### 이 연결이 수행할 수 있는 작업은 사용자가 결정합니다

이 연결은 데이터를 읽습니다. 허용하도록 선택한 경우에 한하여 디렉터리에서 *조치를 수행*할 수도 있습니다.

마지막 권한을 제외한 위의 모든 권한은 읽기 전용입니다. 해당 권한만 부여하면 이 연결은 테넌트의 어떤 항목도 수정할 수 없으며, 플랫폼이 이를 감지하여 그룹 조치를 아예 제공하지 않습니다.

`GroupMember.ReadWrite.All`을(를) 추가하면 플레이북에서 그룹 멤버십 조치를 사용할 수 있게 됩니다. 어떤 작업도 자동으로 시작되지 않습니다. 플랫폼이 변경할 수 있는 그룹을 직접 선택하고(아래 참조) 해당 조치를 사용하는 플레이북을 직접 작성해야 합니다.

언제든지 결정을 변경할 수 있습니다. Microsoft Entra ID에서 권한을 추가하거나 제거하고 관리자 동의를 다시 부여하면 됩니다. 플랫폼에서 자격 증명을 다시 입력할 필요가 없으며 데이터 동기화도 계속 실행됩니다. 변경 사항은 약 1시간 이내에 적용됩니다.

<Note>
  **그룹 멤버십 조치는 사용자가 지정한 그룹으로 추가 제한됩니다.** 연결한 후 관리자가 해당 연결에서 허용할 그룹의 명시적인 허용 목록을 선택합니다. 이 목록이 만들어지기 전에는 권한이 부여되어 있어도 그룹 조치를 사용할 수 없으므로, `GroupMember.ReadWrite.All`은(는) 테넌트의 모든 그룹을 의미하지 않습니다.

  그룹은 신중하게 선택하십시오. 관리자 역할, 권한 있는 액세스 또는 라이선스 사용 권한을 부여하는 그룹은 피하십시오.
</Note>

**필수 역할:** Microsoft Entra ID의 **Application Administrator** 또는 **Global Administrator**

<Note>
  **이 권한 중 두 가지는 새로 추가되었습니다.** 이 목록에 나타나기 전에 Microsoft Entra ID를 연결한 경우, 기존 앱 등록에 해당 권한을 추가하고 **관리자 동의를 다시 부여**하십시오. Microsoft는 권한이 변경될 때마다 동의를 다시 부여하도록 요구합니다. 그동안 다른 모든 데이터 스트림은 정상적으로 계속 작동합니다.

  `Policy.Read.ConditionalAccess` — 이 권한이 없으면 Microsoft는 모든 로그인 레코드에서 조건부 액세스 세부 정보를 제거합니다. 레코드에는 조건부 액세스 정책이 충족되었다고 계속 표시되지만 정책 목록은 비어 있는 상태로 반환됩니다. 실패하거나 경고하는 항목은 없으며, 로그인 데이터는 계속 수신되고 연결 상태도 정상으로 유지됩니다. 다만 플랫폼이 어떤 로그인이 다단계 인증으로 충족되었는지 판단할 수 없으므로, 이 연결의 MFA 활동은 비어 있게 됩니다.

  `IdentityRiskEvent.Read.All` — 위험 감지를 읽으려면 **Microsoft Entra ID P1 또는 P2** 라이선스도 필요합니다. 유출된 자격 증명 감지 자체는 P1을 포함한 모든 등급에서 사용할 수 있으며, 프리미엄 감지는 P2 미만에서는 `generic`(으)로 보고됩니다.
</Note>

### 사전 요구 사항

* 애플리케이션을 등록하고 관리자 동의를 부여하려면 Microsoft Entra ID에서 **Application Administrator** 또는 **Global Administrator** 권한이 있어야 합니다.

***

## 파트 A — Microsoft Entra ID에서

*Microsoft Entra ID 관리자가 이 단계를 완료합니다.*

<Steps>
  <Step title="새 애플리케이션 등록">
    1. [Microsoft Entra admin center](https://entra.microsoft.com)에 로그인합니다.
    2. 왼쪽 탐색 메뉴에서 **Entra ID** → **App registrations**로 이동합니다.
    3. **New registration**을 클릭합니다.
    4. `Living Security Platform`와(과) 같이 알아보기 쉬운 앱 이름을 입력합니다.
    5. **Supported account types**에서 **Accounts in this organizational directory only**를 선택합니다.
    6. **Redirect URI**는 비워 둡니다. 이 연동은 클라이언트 자격 증명 흐름을 사용합니다.
    7. **Register**를 클릭합니다.

    등록이 완료되면 **개요** 페이지에서 다음 값을 기록합니다.

    * **Application (client) ID**
    * **Directory (tenant) ID**
  </Step>

  <Step title="Microsoft Graph 애플리케이션 권한 추가">
    1. 앱의 **개요** 페이지에서 왼쪽 메뉴의 **API permissions**를 클릭합니다.
    2. **Add a permission**을 클릭합니다.
    3. **Microsoft Graph**를 선택합니다.
    4. **Application permissions**를 선택합니다.
    5. 아래의 각 권한을 검색하여 선택한 다음 **Add permissions**를 클릭합니다.
       * `User.Read.All`
       * `SecurityAlert.Read.All`
       * `AuditLog.Read.All`
       * `Policy.Read.ConditionalAccess`
       * `AttackSimulation.Read.All`
       * `Device.Read.All`
       * `DeviceManagementManagedDevices.Read.All`
       * `IdentityRiskEvent.Read.All`
    6. 플레이북에서 그룹 멤버십을 변경할 수 있도록 하려는 **경우에만** `GroupMember.ReadWrite.All`을(를) 추가합니다. 이 연결을 읽기 전용으로 유지하려면 추가하지 마십시오.

    <Note>
      이는 모든 데이터 스트림에 필요한 최소 권한입니다. 일부 스트림만 사용하려는 경우 사용하지 않을 스트림의 권한은 생략할 수 있습니다.
    </Note>
  </Step>

  <Step title="관리자 동의 부여">
    애플리케이션 권한에는 명시적인 관리자 동의가 필요합니다.

    1. **API permissions** 페이지에서 \*\*Grant admin consent for \<your tenant name>\*\*을 클릭합니다.
    2. 확인 대화 상자에서 **예**를 클릭합니다.
    3. **상태** 열에서 모든 권한이 **Granted**로 표시되는지 확인합니다.

    <Note>
      **Grant admin consent** 버튼이 회색으로 비활성화되어 있다면 **Privileged Role Administrator** 또는 **Global Administrator** 권한이 필요합니다. 새 권한을 추가할 때마다 관리자 동의를 다시 부여해야 합니다.
    </Note>
  </Step>

  <Step title="클라이언트 비밀번호 생성">
    1. 앱의 **개요** 페이지에서 왼쪽 메뉴의 **Certificates & secrets**를 클릭합니다.
    2. **Client secrets** 탭을 클릭한 다음 **New client secret**을 클릭합니다.
    3. 설명을 입력합니다(예: `Living Security Platform`).
    4. 교체 정책에 맞는 만료 기간을 선택합니다.
    5. **추가**를 클릭합니다.

    <Warning>
      **비밀번호 값을 즉시 복사하십시오.** Microsoft Entra ID는 전체 클라이언트 비밀번호를 한 번만 표시합니다. 복사하기 전에 다른 페이지로 이동하면 해당 비밀번호를 삭제하고 새로 만들어야 합니다.
    </Warning>

    비밀번호를 안전하게 보관하십시오. 만료되기 전에 교체하도록 캘린더 알림을 설정하십시오. 비밀번호가 만료되면 동기화가 `401 Unauthorized` 오류와 함께 실패합니다.
  </Step>

  <Step title="Graph API 및 Authority 호스트 확인">
    상용 클라우드를 사용하는 대부분의 조직에서는 기본값을 사용하십시오.

    | 필드 | 상용 클라우드 값 |
    | - | - |
    | **Graph API host** | `graph.microsoft.com` |
    | **Authority host** | `login.microsoftonline.com` |

    정부 또는 소버린 클라우드의 경우 사용 중인 환경에 맞는 엔드포인트를 사용하십시오.

    <Note>
      Graph API 호스트와 Authority 호스트는 서로 일치해야 합니다. 한 클라우드의 인증 기관에서 발급한 토큰은 다른 클라우드의 Graph 엔드포인트에서 유효하지 않습니다.
    </Note>
  </Step>
</Steps>

***

## 파트 B — Living Security Platform에서

*프로그램 소유자가 이 단계를 완료하며, 플랫폼에 초대된 경우 시스템 관리자가 완료할 수도 있습니다.*

<Steps>
  <ConnectInPlatform tile="Microsoft Entra ID (Client Credentials)">
    | 필드 | 값 |
    | - | - |
    | **API 키** | 파트 A, 4단계의 클라이언트 비밀번호 |
    | **Azure 테넌트 ID** | 파트 A, 1단계의 Directory (tenant) ID |
    | **클라이언트 ID** | 파트 A, 1단계의 Application (client) ID |
    | **Graph API host** | `graph.microsoft.com` (또는 사용 중인 클라우드의 엔드포인트) |
    | **Authority host** | `login.microsoftonline.com` (또는 사용 중인 클라우드의 엔드포인트) |

    <img src="https://mintcdn.com/livingsecurity/oVkrOMkYmNevekTI/integrations/images/microsoft-entra-id-cc/connect-dialog.png?fit=max&auto=format&n=oVkrOMkYmNevekTI&q=85&s=2a192b0a28e753ad0e0bc0b640508136" alt="Microsoft Entra ID용 Living Security 연결 대화 상자" style={{maxWidth: "450px"}} width="576" height="692" data-path="integrations/images/microsoft-entra-id-cc/connect-dialog.png" />
  </ConnectInPlatform>
</Steps>

이제 Microsoft Entra ID (Client Credentials)에 연결되었습니다.

***

## 문제 해결

<AccordionGroup>
  <Accordion title="401 Unauthorized">
    자격 증명이 유효하지 않거나 만료되었습니다. 다음을 확인하십시오.

    1. 클라이언트 비밀번호가 만료되었거나 교체되지 않았는지
    2. 테넌트 ID와 클라이언트 ID가 올바른지
    3. Authority 호스트가 사용 중인 클라우드 환경과 일치하는지
  </Accordion>

  <Accordion title="403 Forbidden">
    앱 등록에 권한이 없거나 관리자 동의가 부여되지 않았습니다. 다음을 확인하십시오.

    1. 필요한 모든 권한이 **API permissions**에 나열되어 있는지
    2. 각 권한이 **Granted** 상태(녹색 확인 표시)로 표시되는지
    3. 권한을 추가한 후 관리자 동의가 부여되었는지

    <Note>
      최초 동의 후에 새 권한을 추가한 경우 관리자 동의를 다시 부여해야 합니다.
    </Note>
  </Accordion>

  <Accordion title="특정 데이터 스트림의 결과가 비어 있음">
    앱에 해당 스트림에 필요한 권한이 없을 수 있습니다.

    * 사용자 없음 → `User.Read.All` 누락
    * 보안 경고 없음 → `SecurityAlert.Read.All` 누락
    * 로그인 로그 없음 → `AuditLog.Read.All` 누락
    * 공격 시뮬레이션 결과 없음 → `AttackSimulation.Read.All` 누락
    * Entra ID 디바이스 없음 → `Device.Read.All` 누락
    * Intune 관리 디바이스 없음 → `DeviceManagementManagedDevices.Read.All` 누락
    * 위험 감지 없음 → `IdentityRiskEvent.Read.All` 누락, 추가 후 관리자 동의를 다시 부여하지 않음, 또는 테넌트가 Microsoft Entra ID P1 라이선스 최소 요건에 미달함
  </Accordion>

  <Accordion title="토큰 요청이 invalid_client 오류와 함께 실패함">
    Graph API 호스트와 Authority 호스트가 일치하지 않을 수 있습니다. 두 호스트는 동일한 클라우드 환경(상용, 정부 등)에 해당해야 합니다.
  </Accordion>

  <Accordion title="플레이북에 그룹 조치가 표시되지 않음">
    그룹 멤버십 조치는 다음 세 가지 조건이 모두 충족될 때만 제공됩니다.

    1. 앱 등록에 `GroupMember.ReadWrite.All`이(가) 있고 관리자 동의가 부여되어 있습니다. 최근에 추가한 경우 최대 1시간까지 기다려 주십시오.
    2. 관리자가 해당 연결에서 허용할 그룹의 허용 목록을 지정했습니다.
    3. 연결이 활성 상태이며 정상입니다.

    권한을 부여했는데도 조치를 사용할 수 없다면 관리자 동의를 다시 부여하십시오. Microsoft는 권한이 변경될 때마다 이를 요구합니다.
  </Accordion>

  <Accordion title="조건부 액세스가 연결 또는 해당 조치를 차단함">
    테넌트에 IP 주소 기준으로 범위가 지정된 조건부 액세스 정책이 있는 경우, 이 연결의 자격 증명이 포함된 요청을 차단할 수 있습니다. 대부분의 테넌트는 영향을 받지 않습니다. Microsoft Graph는 기본적으로 IP 주소로 제한하지 않기 때문입니다. 서비스 주체에 대해 IP 기준 정책을 적용하는 경우, 설정과 데이터 동기화가 서로 다른 네트워크에서 발생하므로 이 연동에서는 **두 가지** 주소 집합을 허용 목록에 추가해야 합니다.

    Living Security는 이 연결의 액세스 토큰을 직접 발급하고 지속적으로 갱신하므로, 토큰 요청은 데이터 동기화에 사용되는 주소가 아니라 플랫폼 자체의 주소에서 발생합니다.

    그룹 조치는 별도입니다. 기본적으로 데이터 동기화와 동일한 경로를 사용하며 동기화 주소에서 발생합니다. 관리자가 연결을 직접 송신으로 전환한 경우에만 플랫폼 주소로 이동합니다.

    <EgressIpAllowlistBothSets system="Microsoft Entra ID" />

    조건부 액세스 정책이 신뢰하거나 제외하는 **named location**에 두 집합을 모두 추가하십시오. 토큰 요청은 `login.microsoftonline.com`에 도달하고 데이터 요청은 `graph.microsoft.com`에 도달하며, 둘 다 통과해야 합니다.

    동기화 주소만 허용 목록에 추가한 경우 토큰을 가져오는 단계에서 설정이 실패하며 연결이 생성되지 않습니다. 플랫폼 주소만 허용 목록에 추가한 경우 설정은 성공하지만 모든 동기화에서 레코드가 반환되지 않습니다.
  </Accordion>
</AccordionGroup>

<PublicIntegrationNextSteps />


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.