Copilot Studio 에이전트
Copilot Studio(New experience)에서 만든 에이전트를 안전하게 운영하기 위한 기본 보안 설정을 처음부터 끝까지 안내합니다. 에이전트 생성 → 승인·배포 → 인벤토리 → 차단 → 기본 접근제어 → 리스크 탐지 → 리스크 기반 접근제어 → 런타임 보호 → 트래픽 모니터링까지, 각 단계에서 어떤 포털에 들어가 무엇을 설정하는지 스크린샷과 함께 순서대로 짚어 드립니다.
이 가이드는 하나의 실습 환경에서 만든 데모 에이전트(Agent365-Guide-Demo)를 대상으로, 관리자·보안 담당자가 실제로 수행하는 구성 흐름을 재현합니다. 왼쪽 구성 단계(0–8) 목차에서 각 장으로 이동하고, 아래 표의 역할 행을 클릭하면 해당 단계로 바로 이동합니다.
이 가이드의 범위 · Copilot Studio 참고
본 가이드는 Microsoft Agent 365의 관리·보안 기능을 메인으로 다룹니다. 따라서 아래 0. 에이전트 생성 장은 실습에 필요한 최소한의 Copilot Studio 에이전트 생성 흐름만 담고 있습니다.
지침 설계, 지식·도구(MCP) 심화 구성, 오케스트레이션, 채널·게시 등 Copilot Studio 자체에 대한 더 자세한 내용은 아래 문서를 참고하세요.
New Copilot Studio 핸즈온 가이드 바로가기 ↗주요 진입 포털
각 단계에서 사용하는 관리 포털입니다. 링크를 누르면 새 탭에서 해당 포털이 열립니다. 실제 접근에는 아래 필요한 역할이 선행되어야 합니다.
| 포털 | 이 가이드에서의 용도 | 바로가기 |
|---|---|---|
| Copilot Studio | 에이전트 생성 · 지침/지식/도구 구성 · 게시 | copilotstudio.microsoft.com ↗ |
| Microsoft 365 관리 센터 (MAC) | 에이전트 승인 · 전사 배포 · 인벤토리(레지스트리) | admin.microsoft.com ↗ |
| Microsoft Entra 관리 센터 | 역할 할당 · 조건부 액세스 · 로그인 로그 · Gen AI 인사이트 | entra.microsoft.com ↗ |
| Power Platform 관리 센터 (PPAC) | 환경 보안 · 위협 탐지 · 에이전트용 전역 보안 액세스(GSA) | admin.powerplatform.microsoft.com ↗ |
| Microsoft Defender 포털 | AI 보안 커넥터 · Copilot Studio 런타임 보호 정책 | security.microsoft.com ↗ |
| Microsoft Purview 포털 | 내부 위험 관리(IRM) · 감사 · 에이전트 리스크 경고 | purview.microsoft.com ↗ |
단계별 필요한 역할 한눈에
각 단계를 수행하기 전에 아래 역할을 미리 할당해 두세요. 대부분 Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가에서 부여하며, 5장은 Purview 역할 그룹, 7·9장 일부는 Power Platform 역할 지정이 필요합니다. 행을 클릭하면 해당 단계로 이동합니다.
| # | 단계 | 필요한 역할 | 할당 위치 |
|---|---|---|---|
| 0 | 에이전트 생성 | 환경 제작자(Maker) 이상 | Power Platform 관리 센터 > 환경 > 역할 |
| 1 | 승인 및 전사 배포 | AI 관리자 | Entra > 사용자 > 할당된 역할 |
| 2 | 인벤토리 확인 | AI 읽기 권한자 | Entra > 사용자 > 할당된 역할 |
| 3 | 에이전트 차단 | AI 관리자 · 에이전트 ID 관리자 | Entra > 사용자 > 할당된 역할 |
| 4 | 기본 접근제어 | 조건부 액세스 관리자 | Entra > 사용자 > 할당된 역할 |
| 5 | 리스크 탐지 | 내부자 위험 관리 분석가 또는 조사자 | Purview > 역할 및 범위 > 역할 그룹 |
| 6 | 리스크 기반 접근제어 | 조건부 액세스 관리자 | Entra > 사용자 > 할당된 역할 |
| 7 | 런타임 보호 | 애플리케이션 관리자 · 보안 관리자 · Power Platform 관리자 | Entra > 역할 / Power Platform 관리 센터 |
| 8 | 트래픽 모니터링 | 전역 보안 액세스 관리자 | Entra > 사용자 > 할당된 역할 |
| 9 | 에이전트 폐기 | 환경 시스템 관리자(삭제) · 에이전트 ID 관리자(신원 정리) · 감사 관리자·eDiscovery 관리자(기록 보존) | Power Platform 관리 센터 > 환경 > 역할 / Entra > 사용자 > 할당된 역할 / Purview 역할 그룹 |
0단계를 건너뛰고 바로 시작하기 · 에이전트 Import
0. 에이전트 생성을 건너뛰고 준비된 실습용 에이전트로 시작하려면, 아래 앱 패키지를 Microsoft 365 관리 센터(MAC)에 직접 업로드합니다. 업로드 이후에는 1. 에이전트 승인 및 전사 배포 절차를 그대로 이어서 진행해 전사에 게시한 뒤, 2장부터 관리·보안 기능을 실습합니다.
⬇ 실습용 에이전트 패키지 내려받기 (Agent365-Guide-Demo.zip)
Agent365-Guide-Demo.zip(매니페스트 패키지)을 업로드하고 유효성 검사를 통과시킵니다. 파일 선택 이후에는 1. 에이전트 승인 및 전사 배포 절차와 동일하게 대상 지정·권한 검토·게시를 진행하면 전사에 배포됩니다.0. 에이전트 생성
Copilot Studio(New experience)에서 실습용 에이전트를 만들고, 지침·지식·도구를 구성한 뒤 Teams / Microsoft 365 Copilot 채널로 게시하고 관리자 승인까지 제출하는 단계입니다. 이후 1~8장의 모든 관리·보안 시나리오는 여기서 만든 에이전트를 대상으로 진행합니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Power Platform 관리 센터 > 환경 > 역할 | 대상 환경에 환경 제작자(Maker) 이상 역할 확보 · 실습 환경 고정(7·8장과 동일 환경) |
| 1 | 환경 준비 | New Copilot Studio > 환경 선택기 | 실습에 사용할 Power Platform 환경을 고정 |
| 2 | 빈 에이전트 생성 | Agents > New agent > 이름·지침 입력 > Save | 템플릿이 아닌 빈 에이전트로 생성 · 식별 가능한 이름 지정 |
| 3 | 지침·오케스트레이션 | Build > Instructions · Model / Settings > AI & behavior | 새 UI의 모델·행동 설정 확인(기존 생성형 토글과 구분) |
| 4 | 지식 추가 | Settings > Safety & access / Build > Add knowledge | SharePoint·OneDrive·Dataverse 등 필요한 지식 연결 |
| 5 | 도구 구성 | Build > Add tool > Model Context Protocol (MCP) 등 | 필요한 도구(MCP 등) 연결 |
| 6 | 테스트 | Preview(테스트) 패널 | 한국어 프롬프트로 지식 인용·도구 호출 확인 |
| 7 | 게시·채널 연결 | 게시 > 채널 > Teams 및 Microsoft 365 Copilot | 에이전트 게시 및 채널 추가 |
| 8 | 관리자 승인 제출 | 채널 > 가용성 옵션 > 내 조직의 모든 사람에게 표시 | 관리자 승인 제출 > 예 > 새로 고침으로 요청 상태 확인 |
1단계 · 환경 준비
⚠️ Notice — 본 Agent 365 관련 데모는 기본 환경(Default Environment)에서도 따라 하실 수는 있으나, 실 운영 환경에서는 반드시 테스트를 위한 별도의 환경을 구성하시어 진행하셔야 합니다. 환경 개념·생성 방법은 Power Platform 환경 개요(공식 문서)를 참고하세요.
2단계 · 빈 에이전트 생성
Agent365-Guide-Demo라는 이름을 사용합니다.3단계 · 지침·오케스트레이션
Settings > AI & behavior에서 확인해야 하며, 기존의 '생성형 AI' 토글과는 구분됩니다. 지침은 1장의 관리자 승인 심사에서 업무 목적을 판단하는 근거가 되므로 구체적으로 작성합니다.4단계 · 지식 추가
Build > Add knowledge에서 SharePoint·OneDrive·Dataverse 등 지식 원본을 연결합니다. 여기서 붙인 지식은 1장의 관리자 승인 화면과 2장의 인벤토리 데이터 & 도구 탭에 그대로 노출되므로, 민감한 사이트를 연결할 때는 사전 검토가 필요합니다.5단계 · 도구 구성
Build > Add tool > Model Context Protocol (MCP) 카탈로그에서 필요한 도구를 연결합니다. MCP 도구는 런타임에 실제로 호출되는 지점이므로, 5장(리스크 탐지)·7장(런타임 보호)·8장(트래픽 모니터링)에서 탐지·보호·로깅의 실제 대상이 됩니다.6단계 · 테스트
7단계 · 게시·채널 연결
8단계 · 관리자 승인 제출
모든 에이전트 > 요청 목록에 보류 중 검토 상태로 나타납니다.1. 에이전트 승인 및 전사 배포
제작자가 제출한 에이전트를 AI 관리자가 검토·승인하고, 조직 카탈로그(Microsoft Store)에 게시해 전사에 배포하는 단계입니다. 승인 심사에서는 제작자·업무 목적·지식·도구·요청 권한을 함께 확인합니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 | AI 관리자 추가 |
| 1 | 관리자 승인 | AI 관리자: Microsoft 365 관리 센터 > 에이전트 > 모든 에이전트 > 요청 | 제작자·업무 목적·지식·도구·요청 권한 검토; 필요 시 제출 거부 |
| 2 | 전사 배포 | 요청 상세 > 저장소에 게시 > 대상 지정 > 권한 검토 > 게시 | 설치 가능·사전 설치 대상 구분, 요청 권한에 맞는 관리자 동의 수행 |
1단계 · 관리자 승인
Microsoft 365 관리 센터 > 에이전트 > 모든 에이전트 > 요청으로 이동해 ① 요청 목록에서 ② 대상 요청을 엽니다. 이 메뉴가 보이지 않으면 Entra에서 AI 관리자 역할이 할당되었는지 먼저 확인합니다.0장과의 연결 — 이 요청 목록에는 앞선 0장 8단계에서 제작자가 조직 카탈로그에 제출한 에이전트가 보류 중 검토(승인 대기) 상태로 올라옵니다. 즉 여기 보이는
Agent365-Guide-Demo는 0장에서 만들어 제출한 바로 그 에이전트이며, 제작자의 제출(0장)과 관리자의 승인·배포(1장)가 이 화면에서 이어집니다.
- 세부 정보제작자·소유자·업무 목적·게시 채널을 확인하고, 제작자·소유자가 식별·검증 가능한가
- 데이터 & 도구연결된 지식 원본과 MCP 도구 목록을 확인하고, 목적·지침 대비 적정한 MCP 도구만 연결되어 있는가(불필요한 광범위 도구 없음), 지식 원본이 민감 사이트·과도한 범위를 포함하지 않는가
- 사용 권한에이전트가 요청하는 API/커넥터 권한이 업무 목적에 비해 과도하지 않은가(최소 권한)
2단계 · 전사 배포
참조 — 이 화면의 Custom 섹션에 보이는 조건부 액세스 · 액세스 패키지 · 사용자 지정 보안 특성의 세부 설정이 필요한 경우(예: 에이전트를 요청·승인·만료로 통제하거나 분류 태깅), 1장 심화 · 접근 정책을 참조하세요. 특히 액세스 패키지와 사용자 지정 보안 특성은 이 화면에서는 선택만 하고, 실제 정의·할당은 Entra에서 구성합니다.
Note — Copilot Studio 에이전트는 생성 시점에 API 권한(위임/애플리케이션 권한)을 직접 부여하지 않으며, 실제 권한은 각 도구·커넥터를 사용할 때 런타임에 사용자 동의·연결 단위로 부여됩니다. 따라서 이 화면에 요청 권한이 비어 있는 것은 정상입니다. 반면 Copilot Studio 이외의 플랫폼·방법으로 생성된 에이전트는 요청 권한이 함께 넘어올 수 있으므로, 그런 경우 이 권한 검토 화면에서 요청 권한의 적정성을 확인하면 됩니다.
접근 정책 — 액세스 패키지·보안 특성
1장의 승인·배포가 '에이전트를 조직에 올리는' 과정이라면, 이 심화 문서는 그 에이전트에 접근 거버넌스 정책을 씌우는 과정입니다. 승인·배포와 함께 ① 액세스 패키지로 '누가 이 에이전트(와 에이전트가 쓰는 리소스)를 요청·사용할 수 있는가'를 통제하고, ② 사용자 지정 보안 특성으로 에이전트를 분류·태깅해 조건부 액세스 등 정책의 적용 대상을 지정합니다.
전체 순서 한눈에 보기
| # | 단계 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 역할 및 관리자 > 역할 할당 | 특성 정의 관리자·특성 할당 관리자(보안 특성) ID 거버넌스 관리자(카탈로그·액세스 패키지) 전역 관리자도 보안 특성 권한은 기본 미포함 |
| 1 | 보안 특성 정의·할당 | Entra ID > 사용자 지정 보안 특성 / 엔터프라이즈 앱 | 특성 집합·특성 정의 후 에이전트(서비스 주체)에 값 할당 → 거버넌스·정책 필터의 분류 기준 |
| 2 | 액세스 패키지 생성·할당 | Entra ID 거버넌스 > 자격 관리 > 카탈로그 / 액세스 패키지 | 카탈로그에 리소스(그룹·OAuth 권한·Entra 역할) 추가 → 액세스 패키지로 묶어 '모든 에이전트' 범위·승인·만료 설정 |
| 3 | 배포 시 정책 적용 | Microsoft 365 관리 센터 > 에이전트 게시 마법사 > Policy template | 게시(배포) 마법사의 Custom에서 1·2단계에서 만든 보안 특성·액세스 패키지(+조건부 액세스)를 선택 → 에이전트에 실제 적용 |
1단계 · 보안 특성 정의·할당
에이전트를 분류할 사용자 지정 보안 특성을 정의하고, 대상 에이전트(서비스 주체)에 값을 할당합니다. 보안 특성은 그 자체로 차단하지 않고, 조건부 액세스 등 정책의 적용 대상(필터)으로 쓰입니다.
Entra ID > 사용자 지정 보안 특성에서 ① 사용자 지정 보안 특성으로 이동해 ② 특성 집합 추가를 누르고, ③ 집합 이름(예: AgentGovernance)과 설명을 입력한 뒤 ④ 추가합니다. 특성 집합은 보안 특성들을 담는 그릇이며, 생성 후 이름 변경·삭제가 불가하므로 명명 규칙을 먼저 정합니다.
Classification)·설명·데이터 형식(String)을 지정하고 미리 정의된 값만 할당 가능=예로 둔 뒤, ② 값 추가로 ③ Public/Internal/Confidential/Restricted 같은 값을 등록하고 ④ 추가합니다.
AgentGovernance)의 활성 특성 목록에서 방금 정의한 Classification 특성(데이터 형식·미리 정의된 값)이 등록됐는지 확인합니다. 추가 분류 기준이 필요하면 특성 추가로 특성을 더 만들 수 있습니다.
엔터프라이즈 앱 > (에이전트 서비스 주체) > 사용자 지정 보안 특성 > 할당 추가에서 특성 집합·특성·값(예: Classification = Confidential)을 선택해 에이전트를 분류·태깅합니다. 에이전트 배포(게시) 시 서식 파일 적용 단계에서도 동일하게 지정할 수 있습니다. 근거: 앱에 보안 특성 할당(공식 문서).2단계 · 액세스 패키지 생성·할당
에이전트 ID가 필요로 하는 리소스 접근을 액세스 패키지로 묶어, 요청·승인·만료를 통해 "의도적이고 감사 가능하며 기한이 있는(intentional, auditable, time-bound)" 접근으로 통제합니다. 액세스 패키지는 먼저 카탈로그(리소스를 담는 그릇)에 리소스를 등록한 뒤 그 리소스를 묶어 만들므로, 카탈로그 생성 → 리소스 추가 → 액세스 패키지 생성 순서로 진행합니다.
ID Governance → ② 카탈로그로 이동해 ③ New catalog를 누르고, ④ 카탈로그 이름(예: Agent Access Catalog)·설명과 요청 허용 옵션을 지정한 뒤 ⑤ Create로 만듭니다. 카탈로그는 액세스 패키지에 넣을 리소스들을 담는 컨테이너입니다.
ID Governance → ② 액세스 패키지로 이동해 ③ New access package로 생성 마법사를 시작합니다.
Agent Access Catalog)를 선택한 뒤 ② Next: Resource roles로 진행합니다. 상단 탭이 마법사 전체 흐름(Basics→Resource roles→Requests→Lifecycle→Review + create)입니다.
Number of days = 365)를 지정하고, Extensions(연장 허용·연장 승인 필요)와 Access Reviews를 설정합니다. 만료가 임박하면 스폰서에게 알림이 가고, 스폰서가 연장 또는 만료를 결정합니다.
All agents·승인자·만료)을 확인하고 Create로 액세스 패키지를 생성합니다. 근거: 에이전트 ID 거버넌스 개요(공식 문서).3단계 · 배포 시 정책 적용
1~2단계에서 만든 사용자 지정 보안 특성과 액세스 패키지는 정의만으로 끝나지 않고, 에이전트를 전사에 배포할 때 실제로 그 에이전트에 적용됩니다. Microsoft 365 관리 센터의 에이전트 게시(배포) 마법사 Policy template 단계에서, 앞서 만든 정책을 선택해 이 에이전트에 연결합니다. (이 화면은 1장 · 전사 배포의 게시 마법사와 동일한 단계입니다.)
Agent Resource Access), ③ 사용자 지정 보안 특성(1단계에서 만든 Classification 특성과 값(예: Public))을 선택합니다. 즉 1·2단계에서 만들어 둔 정책이 실제 배포 시점에 이 화면에서 에이전트에 적용됩니다. 보안 특성은 여기서 값을 지정해 에이전트를 분류·태깅하고, 액세스 패키지는 에이전트가 요청·사용할 리소스 접근을 통제합니다. 선택 후 다음으로 진행하면 해당 정책이 연결된 상태로 배포됩니다. 근거: 에이전트 액세스 패키지(공식 문서).2. 에이전트 인벤토리 확인
테넌트에 존재하는 에이전트를 레지스트리에서 조회하고, 각 에이전트의 소유자·지식·도구·권한·채널 구성과 실제 사용량을 확인하는 단계입니다. 등록되어 있다는 것과 실제로 쓰이고 있다는 것은 다르므로 두 가지를 분리해서 봅니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 | AI 읽기 권한자 추가 |
| 1 | Registry 조회 | Microsoft 365 관리 센터 에이전트 > 모든 에이전트 > 레지스트리 | Platform = Copilot Studio로 필터링 이름·상태·채널 조회; 등록 ≠ 실제 사용 |
| 2 | 구성 확인 | 에이전트 상세 > 세부 정보 사용자 / 데이터 & 도구 / 권한 등 확인 | 소유자·지식·도구·권한·설치 대상 확인 Data & tools 변경은 Copilot Studio에서 |
| 3 | 실제 사용 확인 | 에이전트 상세 > 세부 정보 > 활성 / Copilot Studio > 모니터 조회 기간 / 활성 사용자 보기 | 게시 채널의 세션·활성 사용자 확인 테스트 패널 활동 제외, 기본 시간은 UTC 기준 |
1단계 · Registry 조회
에이전트 > 모든 에이전트 > 레지스트리로 이동해 ② Platform = Copilot Studio로 필터링합니다. 레지스트리는 테넌트에 등록된 에이전트의 단일 목록이며, 등록되어 있다는 사실이 실제로 사용 중이라는 뜻은 아닙니다.2단계 · 구성 확인
3단계 · 실제 사용 확인
3. 에이전트 차단
문제가 있는 에이전트를 즉시 사용 불가 상태로 만들고, 사용자 화면에서 실제로 차단됐는지 확인한 뒤 복구하는 단계입니다. 차단은 삭제나 Agent ID 인증 중지와는 구분되는 조치입니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 | AI 관리자, 에이전트 ID 관리자 추가 |
| 1 | 에이전트 차단 실행 | 에이전트 상세 > 차단 에이전트 차단 > 저장 | 저장 후 차단 상태 확인 삭제·ID 인증 중지와 구분 |
| 2 | 차단 결과 확인 | 일반 사용자 Teams Microsoft 365 Copilot | 기존 진입점·새 설치·새 대화 확인 채널별 실제 사용 불가 상태 기록 |
| 3 | 차단 해제·복구 | 에이전트 상세 > 차단 해제 에이전트 차단 해제 > 저장 | 설치·가용성 범위와 정상 실행 재확인 |
1단계 · 에이전트 차단 실행
Microsoft 365 관리 센터 > 에이전트 > 모든 에이전트 > 레지스트리에서 ① 대상 에이전트를 여러 개 선택한 뒤 툴바의 차단을 누릅니다. ② “N개의 에이전트 차단” 확인 창에서 선택한 개수를 확인하고, 필요 시 차단 이유(선택 사항)를 남긴 뒤 ③ 확인으로 일괄 적용합니다. 일괄 차단도 개별 차단과 동일하게 각 에이전트의 Entra Agent ID가 비활성화되어 사용자가 설치·사용할 수 없게 되며, 이미 설치된 경우 제거됩니다. 대량 선택 시 영향 범위가 크므로, 차단 전 대상 목록(소유자·게시 채널)을 한 번 더 확인하는 것이 좋습니다.2단계 · 차단 결과 확인
3단계 · 차단 해제·복구
4. 에이전트에 대한 기본 접근제어
사용자가 사외(신뢰할 수 없는 네트워크)에서 Copilot Studio 에이전트를 사용하지 못하도록 Entra 조건부 액세스 정책을 만들고, 실제 차단과 로그인 로그의 평가 결과를 확인하는 단계입니다. 접근 제어 대상이 클라우드 리소스가 아니라 에이전트 자체가 됩니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 역할 및 관리자 > 조건부 액세스 관리자 | 정책 생성 전 조건부 액세스 관리자 역할 확인 |
| 1 | 사용자 차단 정책 생성 | 조건부 액세스 > 정책 > 새 정책 (사용자 / 대상 리소스 / 네트워크 / 액세스 제어) | 모든 사용자 → Copilot Studio 에이전트, 사외(비신뢰 네트워크)에서 액세스 차단 → 정책 On |
| 2 | 실제 차단·정책 평가 확인 | Teams / M365 Copilot에서 에이전트 실행 후 Entra > 모니터링 및 상태 > 로그인 로그 | 사외에서 Copilot Studio 에이전트 실행이 실제로 차단되는지, 로그인 로그의 CA 결과를 확인 |
1단계 · 사용자 차단 정책 생성
Microsoft Copilot Studio agent identity blueprint를 지정하면 Copilot Studio로 만든 에이전트가 접근 대상이 됩니다.Note — 현재 조건부 액세스 리소스 선택기에서 개별 에이전트 ID는 '지원되지 않는 리소스'로 표시되어 단일 에이전트만 개별적으로 지정할 수는 없습니다. 대신 위 블루프린트로 Copilot Studio 에이전트 전체를, 또는 모든 에이전트 리소스로 테넌트의 모든 에이전트를 대상으로 지정합니다.
조건부 액세스 > 관리 > 명명된 위치에서 회사 IP 대역 등을 등록하고 신뢰할 수 있음 = 예로 표시해 둔 위치입니다. 본 실습 테넌트에는 회사 IP 대역(예: ME Services·Provisioning/Stockpiling/Teams Workers)이 이미 신뢰 위치로 등록되어 있어, 이 대역 밖(사외)에서 접근할 때 앞의 정책이 적용됩니다.
주의 — 모든 사용자 + 차단 조합은 광범위 영향을 줄 수 있으므로, 운영에서는 반드시 소규모 그룹으로 먼저 검증한 뒤 확대합니다.
2단계 · 실제 차단·정책 평가 확인
오류 코드: IntegratedAuthConditionalAccessBlocked 메시지가 표시되며, 이는 통합 인증이 조건부 액세스 정책에 의해 차단됐음을 명시적으로 나타냅니다.참고: 조건부 액세스는 새 토큰 요청 시 평가되므로, 정책을 켠 직후 이미 로그인된 세션에서는 토큰 캐시로 인해 즉시 차단되지 않을 수 있습니다. 토큰이 갱신되거나 새 세션·새 도구 연결로 접근할 때 차단이 적용됩니다.
Entra > 모니터링 및 상태 > 로그인 로그에서 사용자 로그인(비대화형) 탭을 열고, 조건부 액세스 열(및 로그인 상세의 조건부 액세스 탭)에서 이 정책의 평가 결과를 확인합니다. 사외에서 대상 에이전트 리소스에 접근한 로그인은 이 정책에 의해 실패(차단)로 기록됩니다.참고: 비대화형 로그인 로그는 수집·반영까지 다소 지연될 수 있어, 차단 직후에는 로그가 보이지 않을 수 있습니다.
5. 에이전트 리스크 탐지
에이전트의 상호작용에서 발생하는 위험을 탐지·수집하는 단계입니다. Purview DLP(민감 정보 유형이 포함된 프롬프트·메시지 차단), Communication Compliance(부적절·비윤리적 상호작용 및 기밀 공유 탐지)로 개별 위반을 탐지·차단하고, 내부 위험 관리(IRM)는 이 신호들을 포함한 활동을 상관분석해 에이전트/사용자별 위험 점수를 산정합니다. 실제로 High 심각도 DLP 경고 등은 IRM의 트리거·지표로 작동하므로, 하나의 에이전트 활동을 DLP·CC 경고와 IRM 위험 점수로 연결해 확인합니다. 감사 로그 수집이 켜져 있어야 지표·경고가 생성됩니다.
전체 순서 한눈에 보기
| # | 단계 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 감사 준비 | Purview 포털 > 감사 > 감사 수집 상태 (+ 각 솔루션 역할) | 감사 로그 수집 활성화(DLP·CC·IRM 경고 공통 전제), 관리자·분석가 역할 확보 |
| 1 | DLP 정책 — Copilot | Purview > 데이터 손실 방지 > 정책 (Microsoft 365 Copilot·Copilot Chat 위치) | 민감 정보 유형(SIT) 포함 프롬프트 처리 차단 |
| 2 | DLP 정책 — Teams | Purview > 데이터 손실 방지 > 정책 (Teams 채팅·채널 메시지 위치) | SIT 포함 Teams 메시지 전송 차단 → 실제 차단·경고 생성 확인 |
| 3 | 커뮤니케이션 규정 준수 정책 | Purview > 커뮤니케이션 규정 준수 > 정책 (AI 에이전트 비윤리적 상호작용 템플릿) | 에이전트 상호작용의 부적절·비윤리·기밀 공유 탐지 |
| 4 | IRM 에이전트 정책 | Purview > 내부 위험 관리 > 정책 / 에이전트 경고 | 에이전트 활동 기반 위험 점수 산정, DLP·CC 신호를 상관분석해 위험 지표·경고 확인 |
| 5 | 리스크 탐지 (DSPM) | Purview > DSPM > 검색 > 앱 및 에이전트 | 에이전트별 보호 상태·위험 수준, 위험 상호작용·부적절 사용 보고서 확인 |
0단계 · 감사 준비
Purview > 감사 > 감사 수집 상태에서 감사 로그 수집이 켜져 있는지 먼저 확인합니다. 감사 로그가 꺼져 있으면 DLP·CC·IRM 정책을 만들어도 분석할 활동 이벤트 자체가 없어 지표·경고가 생성되지 않습니다. 이 단계는 이후 세 정책 모두의 공통 전제입니다.1단계 · DLP 정책 — Microsoft 365 Copilot
Purview > 데이터 손실 방지 > 정책 > 정책 만들기를 시작하면 “어떤 정보를 보호하시겠습니까?” 화면이 나옵니다. ① 엔터프라이즈 애플리케이션 및 디바이스를 선택합니다. 이 범주에 Microsoft Copilot 환경이 포함되며, Teams / Microsoft 365 Copilot 채널에 게시된 Copilot Studio 에이전트의 상호작용도 이 위치에서 통제됩니다. 이어서 규정에서 사용자 지정 정책으로 시작합니다(Copilot 콘텐츠 보호는 사용자 지정 정책에서만 구성 가능). 이 작업에는 Purview 데이터 보안 AI 관리자 또는 규정 준수 관리자 역할이 필요합니다.
Credit Card Number를 지정하고, ② 작업으로 Copilot이 콘텐츠를 처리하지 못하도록 제한 > 프롬프트 처리 중을 선택합니다. 즉 민감정보가 포함된 프롬프트의 처리를 차단하고 관리자에게 알립니다.요약의
HasActivity: UploadText는 '프롬프트 처리 차단' 동작이 내부적으로 표현된 값으로, 별도로 추가한 조건이 아닙니다.
⚠️ Notice — M365 Copilot 위치의 프롬프트 처리 차단은 현재 미리 보기로 순차 배포 중이며, 정책 활성화 전파에 시간이 걸립니다. 또한 에이전트 자체 안전장치·모델 콘텐츠 필터가 DLP보다 먼저 응답을 막을 수 있어, DLP 차단 UX와 경고는 지연되어 나타날 수 있습니다. 관련 기능·요건은 Microsoft 365 Copilot용 DLP(공식 문서)를 참고하세요.
2단계 · DLP 정책 — Teams
Purview > 데이터 손실 방지 > 정책 > 정책 만들기에서 ① 엔터프라이즈 애플리케이션 및 디바이스를 선택하고, 규정에서 사용자 지정 정책으로 시작합니다. 이번에는 Teams 채팅·채널 메시지를 대상으로 하는 별도 정책을 만듭니다.
Credit Card Number(메시지 또는 첨부 파일 평가)를 지정하고, ② 작업으로 Microsoft 365 위치의 콘텐츠 제한 또는 암호화를 추가합니다. 이 작업은 보호 대상 SIT가 포함된 Teams 채팅·채널 메시지 전송을 차단(모든 사용자 차단)하고 관리자에게 알립니다.
Agent365-Guide-Demo)가 게시된 Teams 채팅에 Credit Card Number 패턴(테스트용 카드번호)을 보내자, 메시지가 즉시 차단되고 “조직 정책으로 인해 메시지가 차단되었습니다” 안내와 함께 위반한 SIT Credit Card Number가 표시됩니다. 에이전트에 전달되기 전에 메시지 자체가 전송 차단된 것으로, 에이전트 자체 안전거부와는 구분되는 DLP 계층의 실제 차단입니다.
Purview > 데이터 손실 방지 > 경고에 경고가 생성됩니다. 경고 상세의 정책 세부 정보에서 일치한 정책 Agent365-Guide-DLP-Teams, 감지된 중요한 정보 유형 Credit Card Number, 수행한 작업 BlockAccess, GenerateAlert를 확인할 수 있습니다. 즉 차단(BlockAccess)과 경고(GenerateAlert)가 함께 수행되어, 관리자가 실제 위반 이벤트를 사후에 추적할 수 있습니다.3단계 · 커뮤니케이션 규정 준수 정책
커뮤니케이션 규정 준수 > 정책 > 정책 만들기에서 ① AI 에이전트의 비윤리적 상호작용 탐지 템플릿을 선택합니다. 이 템플릿은 AI 에이전트가 보낸 메시지에서 모욕적·위협적 언어 등 부적절한 텍스트를 탐지합니다(단순 Copilot 채팅이 아니라 에이전트 대상).
정책 > 보류 중(Pending) 큐로 올립니다. 검토자는 항목을 열어 검색된 조건, 프롬프트·응답, 사용자 활동을 확인하고 해결·에스컬레이션·태그·알림으로 조치합니다. 이 예시 항목은 Prompt Shields 조건으로 탐지되었습니다(적대적 입력 탐지).4단계 · IRM 에이전트 정책
Purview 내부 위험 관리(IRM)에서 에이전트 정책을 만들어 활동 기반 위험 신호를 수집하고 경고를 확인합니다. DLP·CC가 개별 위반을 탐지·차단하는 계층이라면, IRM은 이 신호들을 포함한 여러 활동을 상관분석해 사용자별 위험 점수를 산정하는 계층입니다. 실제로 High 심각도 DLP 경고 등은 IRM 정책의 트리거·지표로 작동하므로, 하나의 에이전트 활동을 DLP·CC 경고와 IRM 위험 점수로 연결해 확인할 수 있습니다.
내부 위험 관리 > 정책에서 ①~④ 순으로 에이전트 정책 생성을 시작합니다. 이 작업에는 내부자 위험 관리 분석가 또는 조사자 역할이 필요합니다.
Note — 우선순위 콘텐츠 지정 여부는 위험 점수 산정에 직접 영향을 줍니다. 우선순위로 지정한 콘텐츠(예: 민감도 레이블이 높은 문서, 특정 SharePoint 사이트)에 에이전트가 접근·조작하면 더 높은 위험 가중치가 부여되어 경고 심각도가 올라가고 더 쉽게 트리거됩니다. 지정하지 않으면 모든 콘텐츠가 동일 가중치로 평가되어 중요 자산에 대한 위험 활동이 상대적으로 묻힐 수 있습니다. 따라서 조직의 핵심 자산을 우선순위로 지정해 탐지 민감도를 집중시키는 것이 좋습니다.

5단계 · 리스크 탐지 (DSPM)
앞의 DLP·CC·IRM이 개별 정책으로 위반을 탐지·차단한다면, 데이터 보안 상태 관리(DSPM)는 이 신호들을 한곳에 모아 에이전트별 보호 상태·위험 수준을 한눈에 보여줍니다. Purview DSPM의 앱 및 에이전트에서 에이전트 보고서를 열어 위험 상호작용과 부적절한 사용을 확인합니다.
Purview > DSPM > 검색 > 앱 및 에이전트에서 ① 좌측 레일의 DSPM → ② 검색 → ③ 앱 및 에이전트로 이동한 뒤 ④ 에이전트 탭을 엽니다. ⑤ 목록 위의 에이전트 보고서를 선택하고, ⑥ 오른쪽 패널에서 보고서 유형(가장 활발한 / 가장 최근 / 사용자가 가장 많은 / 위험 수준이 높은 사용자가 쓰는 에이전트)을 고른 뒤 ⑦ 보고서 보기를 누릅니다. 목록에서는 각 에이전트의 보호 상태(모니터링됨)와 위험 수준(High 등)을 바로 확인할 수 있습니다.
DSPM > 검색 > ① 활동 탐색기에서 ② AI 활동 탭을 열면 AI 상호작용(프롬프트·응답)과 중요한 정보 유형이 포함된 활동을 시계열로 검토할 수 있습니다.
6. 에이전트 리스크 기반 접근제어
에이전트가 접근하는 클라우드 앱·커넥터 리소스를 대상으로 조건부 액세스 정책을 적용하고, 위치·네트워크 등 리스크 신호에 따라 허용/차단을 제어한 뒤 로그인 로그로 평가 결과를 검증하는 단계입니다. 앞의 기본 접근제어가 에이전트 자체를 대상으로 했다면, 여기서는 에이전트가 호출하는 리소스(클라우드 앱)를 대상으로 접근을 통제합니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 | 조건부 액세스 관리자 추가 |
| 1 | 대상 정책 생성 | 조건부 액세스 > 정책 > 새 정책 에이전트 / 대상 리소스 / 권한 부여 | Agent ID·실제 커넥터 리소스 지정 |
| 2 | 정책 평가 확인 | Teams에서 에이전트 및 커넥터 실행 Entra > 모니터링 및 상태 > 로그인 로그 | Agent ID·리소스·시각·CA 결과 대조 (Report-only는 실제 차단하지 않음) |
1단계 · 대상 정책 생성
Entra 관리 센터 > 보호 > 조건부 액세스 > 정책에서 ① 새 정책을 만들고 ② 이름을 지정합니다. 이 작업에는 조건부 액세스 관리자 역할이 필요합니다.
Note — 리스크 신호 출처 구분
이 장에서 에이전트에 적용하는 위험 조건은 Microsoft Entra ID Protection이 산정한 에이전트 위험(Agent risk, 미리 보기)입니다. 이는 5장의 Purview 내부 위험 관리(IRM) 에이전트 경고나 Defender 경고와는 다른 별도의 신호로, IRM·Defender 경고가 그대로 조건부 액세스 조건으로 들어오지 않습니다. 에이전트 위험을 산정하는 위험 기여 활동(탐지 종류)은 공식 문서 에이전트에 대한 ID 보호 — 위험에 기여하는 활동을 참고하세요.
2단계 · 정책 평가 확인
Entra > 모니터링 및 상태 > 로그인 로그에서 ①~③ 순으로 조회합니다. 사용자 로그인이 아닌 서비스 주체 / 에이전트 로그인 영역을 확인해야 에이전트 트래픽이 보입니다.
7. 에이전트 런타임 보호
Defender AI 보안과 Power Platform 위협 탐지를 연결해, Copilot Studio 에이전트의 도구 호출·프롬프트를 실시간으로 검사하고 차단하는 단계입니다. 커넥터 설정 → 인증용 앱 생성 → 환경 연결 → 보호 정책 순으로 진행합니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 Power Platform 관리 센터 > 사용자 관리 > 관리자 지정 | 애플리케이션 관리자, 보안 관리자 추가 Power Platform 관리자 추가 |
| 1 | M365 커넥터 설정 | Defender > 설정 > AI 보안 > 시작 > Microsoft 365 커넥터 | Agent 365·Microsoft 365 연결 확인 Entra 관리 이벤트·M365 활동 수집 |
| 2 | Copilot Studio 보안 설정 | Defender > 설정 > AI 보안 > 시작 > Copilot Studio | |
| 3 | 인증용 앱 구성 | Entra > 앱 등록 > 인증서 & 비밀 > 페더레이션된 자격 증명 | 연결용 App ID·공식 인코딩 형식 구성 |
| 4 | PowerPlatform 보안 설정 | Power Platform > 보안 > 위협 탐지 >추가 위협 탐지 > 환경 > 설정 | App ID·Endpoint·데이터 공유 설정 오류 시 Allow / Block 선택 후 저장 |
| 5 | 런타임 보호 정책 설정 | Defender > 설정 > AI 보안 > 정책 및 규칙 | Default는 Audit, 사용자 지정은 Block 단, 현재까지 Copilot Studio 에이전트의 차단 기록은 로그로 조회되지 않음 |
| 6 | 런타임 탐지 | Defender > 사건 & 경고 / 고급 헌팅(AgentsInfo·CloudAppEvents) | 실제 에이전트 실행에서 발생한 위험 신호를 준실시간 탐지·조사 |
1단계 · M365 커넥터 설정

Defender > 설정 > AI 보안 > 시작에서 ①~③ 순으로 이동한 뒤 Microsoft 365 커넥터를 구성합니다. 이 커넥터가 Agent 365·Microsoft 365 활동과 Entra 관리 이벤트를 수집하는 입구 역할을 합니다. 애플리케이션 관리자 / 보안 관리자 역할이 필요합니다.
2단계 · Copilot Studio 보안 설정

3단계 · 인증용 앱 구성
.\Create-CopilotWebhookApp.ps1 `
-TenantId "11111111-2222-3333-4444-555555555555" `
-Endpoint "https://provider.example.com/threat_detection/copilot" `
-DisplayName "Copilot Security Integration - Production" `
-FICName "ProductionFIC"
Create-CopilotWebhookApp.ps1을 실행합니다. ① TenantId는 Entra 개요의 테넌트 ID, ② Endpoint는 2단계(Copilot Studio 연결)에서 복사한 URL을 넣고, DisplayName과 FICName은 조직 고유 값으로 지정합니다. 이 스크립트는 Defender가 Power Platform을 호출할 때 사용할 앱 등록과 페더레이션 자격 증명(FIC)을 함께 만듭니다.
4단계 · PowerPlatform 보안 설정
Power Platform 관리 센터 > 보안 > 위협 탐지 > 추가 위협 탐지로 이동합니다(①~③). Power Platform 관리자 역할이 필요합니다.
5단계 · 런타임 보호 정책 설정
Defender > 설정 > AI 보안 > 정책 및 규칙에서 ①② 순으로 커스텀 실시간 보호 정책을 만듭니다. 기본(Default) 정책은 Audit이므로 차단이 필요하면 별도 커스텀 정책을 만들어야 합니다.
BehaviorInfo 테이블에 기록되며, Prompt Shields for Foundry와 Copilot Agent Builder의 차단 이벤트도 동작으로 기록됩니다. 다만 Copilot Studio로 빌드된 에이전트의 차단 이벤트는 아직 지원되지 않습니다(공식 문서 · 실시간 보호 작동 방식).
6단계 · 런타임 탐지
Defender 포털 > 사건 & 경고 > 경고에서 준실시간 탐지 결과를 확인합니다. 조회 기간과 경고 건수를 확인하고, 목록에서 AI agent abuse·프롬프트 인젝션(XPIA) 등 AI 관련 경고를 찾습니다. Defender는 Agent 365 관측 데이터를 분석해 탈옥(jailbreak)·간접 프롬프트 인젝션·악성 콘텐츠 전파·비밀 유출·회피 기법·LLM 정찰·의심 IP 접근 등을 탐지합니다.
• 에이전트 식별 —
AgentName·AgentID·PlatformAgentType(예: AzureAIFoundry)·AgentBlueprintID·ChannelName(예: msteams:COPILOT): 어떤 에이전트가 어떤 플랫폼·채널에서 동작했는지• 세션·요청 —
ConversationId·RequestId·ResponseId·RequestMessages: 실제 요청/응답과 대화 맥락• 도구 호출 —
ToolName(예: mcp_WorkIQWord.GetDocumentContent)·ToolType·ToolID·ToolOutput: 에이전트가 호출한 도구와 그 출력(주입 콘텐츠 포함)• 위협 분류 —
MitreAtlasTactics/Techniques·OWASPCategory·PotentialCauses: 어떤 공격 기법·원인으로 분류됐는지즉 이 탭 하나에서 어떤 에이전트가, 어떤 채널에서, 어떤 도구를 호출해, 어떤 위협으로 탐지됐는지를 한 번에 파악할 수 있습니다. 우측 세부 정보 패널에서는 심각도·상태·경고 ID·범주 등 경고 메타데이터를 확인합니다.
EntraAgentID로 조인해, 탐지된 에이전트(foundry-ops)의 소유자·상태(Active)·도구(web_search)를 함께 확인한 결과입니다.AgentsInfo 테이블을 조인합니다. AgentsInfo는 Microsoft Agent 365의 에이전트 목록·구성·소유자 정보를 담는 테이블로, 탐지 증거 테이블 AlertEvidence에서 EntityType == "AIAgent" 행의 AdditionalFields.AgentId(Entra 에이전트 ID)를 꺼내 AgentsInfo.EntraAgentID와 조인합니다.주요 컬럼과 조회 가능 정보
•
Name — 에이전트 표시 이름•
Owners — 소유자(Entra 개체 ID)•
LifecycleStatus — 운영 상태(Active·Blocked·Uninstalled·Deleted)•
DeclaredTools·McpServers — 선언된 도구·연결된 MCP 서버•
Permissions·PublishedStatus — 요청·부여 권한과 게시 상태이를 통해 어떤 에이전트가·누구 소유이고·무슨 도구를 쓰며·현재 상태(Active/Blocked)가 무엇인지를 경고 한 건에 활동 단위로 보강할 수 있습니다. 참고: 이 테이블은 기존
AIAgentsInfo를 대체하며(AIAgentsInfo는 2026-07-01 폐기 예정), Agent 365 환경에서는 AgentsInfo를 사용합니다.AlertEvidence
| where Timestamp > ago(30d)
| where ServiceSource == "Security for AI"
| where EntityType == "AIAgent"
| extend EntraAgentID = tostring(todynamic(AdditionalFields).AgentId)
| join kind=inner (AlertInfo | project AlertId, Title, Severity) on AlertId
| join kind=inner (
AgentsInfo
| summarize arg_max(Timestamp, *) by AgentId
| mv-apply t = DeclaredTools on (summarize Tools = make_set(t.type))
| project EntraAgentID, AgentName = Name, Owners, LifecycleStatus, Tools
) on EntraAgentID
| project AgentName, Owners, LifecycleStatus, Tools, Detection = Title, Severity, EntraAgentID
| order by AgentName ascAgentsInfo
| summarize arg_max(Timestamp, *) by AgentId
| project Name, Platform, EntraAgentID, LifecycleStatus, PublishedStatus,
Owners, DeclaredTools, McpServers, Permissions
| order by Name asc
CloudAppEvents 테이블(Agent 365 관측 데이터)을 ActionType == "ExecuteToolByGateway"로 필터링해 에이전트의 실제 도구 호출을 조회합니다. 경고(AlertInfo)·증거(AlertEvidence)와 상관 분석하면 하나의 실행 흐름을 재구성할 수 있습니다.주요 컬럼과 조회 가능 정보
•
Timestamp — 도구 호출 시각•
ActionType — 작업 유형(에이전트 도구 호출은 ExecuteToolByGateway)•
Application·AccountDisplayName·AccountObjectId — 어떤 앱·실행 계정이 호출했는지•
IPAddress·CountryCode — 호출 출처 IP·국가•
RawEventData — 도구 호출의 원천 JSON. 여기에 ToolServerName(MCP 서버명)·ServerAddress·AgentName·ToolName·ToolDescription·Operation·ErrorMessage 등 실제 호출된 도구와 파라미터·결과가 담깁니다이를 통해 어떤 에이전트가 어떤 MCP 도구를, 어디서(IP·국가), 어떤 앱·계정으로 호출했는지를 활동 단위로 추적할 수 있습니다. 참고: 실시간 보호의 감사·차단 동작은
BehaviorInfo에 기록되지만, Copilot Studio 에이전트의 차단 이벤트는 아직 지원되지 않습니다.CloudAppEvents
| where Timestamp > ago(7d)
| where ActionType == "ExecuteToolByGateway"
| project Timestamp, Application, AccountDisplayName, IPAddress, CountryCode, RawEventData
| order by Timestamp descCloudAppEvents
| where Timestamp > ago(7d)
| where ActionType == "ExecuteToolByGateway"
| extend d = todynamic(RawEventData)
| project Timestamp,
AgentName = tostring(d.AgentName),
ToolServerName = tostring(d.ToolServerName),
ToolName = tostring(d.ToolName),
Operation = tostring(d.Operation),
ErrorMessage = tostring(d.ErrorMessage),
IPAddress, CountryCode
| order by Timestamp desc8. 에이전트 트래픽 모니터링
Global Secure Access for Agents(preview)를 환경 단위로 켜고, Entra의 Gen AI 인사이트 로그에서 에이전트가 주고받은 실제 트래픽(요청·응답)을 조회하는 단계입니다.
전체 순서 한눈에 보기
| # | 항목 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 > 역할 선택 | 전역 보안 액세스 관리자 추가 |
| 1 | Power Platform 설정 | Power Platform > 보안 > ID 및 액세스 > 에이전트에 대한 전역 보안 액세스 | 실습 환경 선택 → Enable On → Save 환경 단위 적용; 다른 에이전트 영향 확인 |
| 2 | 로그 조회 | Entra > 전역 보안 액세스 > 모니터링 > Gen AI 인사이트 로그 | Event ID·Transaction ID로 상관 분석 |
1단계 · Power Platform 설정
Power Platform 관리 센터 > 보안 > ID 및 액세스 > 에이전트에 대한 전역 보안 액세스로 이동합니다(①~③). 전역 보안 액세스 관리자 역할이 필요합니다.
2단계 · 로그 조회
Entra > 전역 보안 액세스 > 모니터링에서 활성화 상태를 확인합니다(①②).
tools/call의 요청 본문과 응답까지 확인할 수 있습니다. 로그 반영에는 지연이 있을 수 있습니다.9. 에이전트 폐기
에이전트 수명주기의 마지막 단계로, 더 이상 필요 없거나 위험한 에이전트를 안전하게 제거하고 신원·연결 리소스를 정리하는 단계입니다. 폐기 대상(장기 미사용·소유자 없는·고위험 에이전트) 선정은 2장(인벤토리 확인)·5장(리스크 탐지)을, 임시 사용 중지(차단)는 3장(에이전트 차단)을 참고하세요. 영구 삭제는 되돌릴 수 없으므로, 먼저 감사·기록을 보존한 뒤 삭제하고, 마지막으로 잔존 신원·권한을 정리하는 순서로 진행합니다.
전체 순서 한눈에 보기
| # | 단계 | 설정 위치 | 확인 포인트 |
|---|---|---|---|
| 0 | 역할/권한 준비 | Entra 관리 센터 > 사용자 > 할당된 역할 > 할당 추가 Power Platform 관리 센터 > 환경 > 역할 Purview 포털 > 설정 > 역할 및 범위 > 역할 그룹 | 에이전트 ID 관리자 추가 환경 시스템 관리자 지정 감사 관리자 · eDiscovery 관리자 역할 그룹 추가 |
| 1 | 폐기 전 로그·기록 보존 | Purview > 감사(Audit) / eDiscovery / 데이터 수명 주기 관리 | 영구 삭제 전에 상호작용·프롬프트·응답·transcript를 감사 로그·eDiscovery 보류로 확보(삭제는 되돌릴 수 없음) |
| 2 | 에이전트 삭제 | Copilot Studio 메이커 포털 | Copilot Studio 에이전트는 메이커 포털에서 삭제 = 즉시 영구 삭제(30일 복구 창·‘삭제된 에이전트’ 탭 없음). 관리 센터 ‘제거’는 Uninstall이지 삭제 아님 |
| 3 | Entra Agent ID·연결 리소스 정리 | Entra 관리 센터 > 엔터프라이즈 앱 / 앱 등록 | 잔존 Agent ID(서비스 주체)·app registration·커넥터 권한을 수동 확인·제거(조건부 액세스로 자동 제거 실패 시 필수) |
먼저 — 폐기 조치 3단계(제거 → 삭제 → 영구 삭제) 구분
에이전트 폐기는 비슷해 보이지만 강도가 다른 세 조치로 나뉩니다 — 제거(가용성 회수) → 삭제(제거 + 복구 가능) → 영구 삭제(완전 제거). 이와 별개로 차단은 폐기가 아니라 임시 중지(언제든 해제)입니다. 특히 관리 센터 메뉴의 제거(Remove)는 설치 제거(Uninstall)일 뿐 에이전트를 삭제하지 않습니다.
| 조치 | 강도 | 실제 동작 | 되돌리기 | 에이전트 객체 |
|---|---|---|---|---|
| (참고) 차단 Block | 임시 | 조직 전체 사용 금지(가용성만 회수) — 폐기 아님 | 차단 해제로 즉시 복구 | 유지 |
| ① 제거 Remove = Uninstall | 약 | 설치 제거 — 조직/사용자가 설치·사용 불가. 객체·데이터는 그대로 남음 | 재설치(Install)로 복구 | 유지 |
| ② 삭제 Delete | 중 | 에이전트 객체 제거. 플랫폼에 따라 소프트 삭제(30일 복구 창) 또는 즉시 영구 삭제 | 30일 내 복원(소프트 삭제인 경우만) | 삭제(보존 또는 즉시 제거) |
| ③ 영구 삭제 Permanently delete | 강 | 객체·연결 리소스까지 완전 제거 | 불가(되돌릴 수 없음) | 완전 제거 |
플랫폼에 따라 ②삭제의 동작이 다릅니다. Foundry·Agent Builder 등 관리 센터에서 관리되는 에이전트는 관리 센터 레지스트리의 삭제(Delete)가 소프트 삭제(30일)로 동작해 ‘삭제된 에이전트’ 탭으로 이동하고, 거기서 복원 또는 영구 삭제합니다. 반면 이 가이드의 대상인 Copilot Studio 에이전트는 관리 센터에 삭제(Delete)가 없고 제거(Uninstall)·차단만 제공되며, 실제 삭제는 Copilot Studio 메이커 포털에서 하는데 이는 곧바로 영구 삭제(30일 복구 창·‘삭제된 에이전트’ 탭 없음)입니다. 단, 삭제로 함께 제거되는 Entra Agent ID(서비스 주체)는 Entra 디렉터리 휴지통에 30일 보존되어 그 기간 내 복원할 수 있습니다. Start/Stop(Azure 인프라 제어)은 Foundry 전용입니다.
1단계 · 폐기 전 로그·기록 보존
영구 삭제는 되돌릴 수 없고, 에이전트 삭제 시 관련 데이터가 함께 정리될 수 있습니다. 따라서 폐기 결정 후 가장 먼저 해당 에이전트의 상호작용 기록을 확보합니다. Agent 365 에이전트는 생성 시 자동으로 감사가 활성화되어 프롬프트·응답이 통합 감사 로그에 기록됩니다.
Purview > 감사(Audit)에서 폐기 대상 에이전트의 프롬프트·응답·접근 리소스 기록을 조회합니다. Microsoft 365 Copilot 및 Copilot Studio로 만든 에이전트의 상호작용은 Audit(표준)에 자동 포함되어 별도 설정 없이 기록됩니다. 삭제·복원·영구 삭제 이벤트도 감사 로그에 남으므로 폐기 이력 추적이 가능합니다. 감사 로그 검색에는 Purview 감사 관리자(Audit Manager)(감사 설정 관리까지) 또는 감사 읽기 권한자(Audit Reader)(조회·내보내기 전용) 역할 그룹이 필요합니다. 두 역할 그룹은 각각 감사 로그(Audit Logs) · 조회 전용 감사 로그(View-Only Audit Logs) 역할을 포함하며, Purview > 설정 > 역할 및 범위 > 역할 그룹에서 할당합니다. 근거: 감사 솔루션 시작·권한(공식 문서).
eDiscovery 보류 또는 데이터 수명 주기 관리 보존 정책으로 대화·상호작용 기록을 고정합니다. Agent 365는 eDiscovery·데이터 수명 주기 관리·커뮤니케이션 규정 준수를 지원합니다. eDiscovery 케이스·보류 생성에는 Purview eDiscovery 관리자(eDiscovery Manager) 역할 그룹이 필요합니다(Purview > 설정 > 역할 및 범위 > 역할 그룹에서 할당). 또한 에이전트 영구 삭제 후 transcript의 보존 기간·위치는 공식 문서에 명시되지 않았으므로, 필요한 기록은 삭제 전에 보존 조치로 확보하는 것이 안전합니다. 근거: eDiscovery 권한 할당(공식 문서).2단계 · 에이전트 삭제 (Copilot Studio)
기록을 확보했으면 에이전트를 삭제합니다. 이 가이드의 Copilot Studio 에이전트는 관리 센터에 삭제(Delete)가 없고 제거(Uninstall)·차단만 제공되므로, 완전 삭제는 Copilot Studio 메이커 포털에서 수행합니다. 메이커 포털의 삭제는 소프트 삭제가 아니라 곧바로 영구 삭제입니다 — 30일 복구 창이나 관리 센터 ‘삭제된 에이전트’ 탭이 적용되지 않습니다. 단, 삭제로 함께 제거되는 Entra Agent ID(서비스 주체)는 Entra 디렉터리 휴지통에 30일간 보존되어 그 기간 내 복원할 수 있습니다(3단계에서 확인).
Copilot Studio(copilotstudio.microsoft.com) > 환경 선택 > 에이전트에서 폐기 대상 에이전트를 열고, 상단 Settings 옆 ⋯ > Delete를 선택합니다. 확인을 위해 에이전트 이름을 입력하고 Delete agent를 누르면, 안내대로 작업 영역·토픽 콘텐츠·기록 분석을 포함한 모든 에이전트 데이터가 영구적으로 삭제되며 복구할 수 없습니다(소프트 삭제 아님). 관리 센터의 제거(Remove)는 설치 제거(Uninstall)여서 에이전트가 삭제되지 않습니다. 완전 폐기는 반드시 메이커 포털에서 합니다. 근거: Copilot Studio 에이전트 삭제(공식 문서).
에이전트 > 삭제된 에이전트 탭에서 해당 에이전트를 검색해도 표시되지 않습니다(이 탭은 Foundry·Agent Builder처럼 관리 센터에서 삭제(Delete)해 소프트 삭제(30일)된 에이전트만 보여 주며, 거기서 복원 또는 영구 삭제합니다). 따라서 Copilot Studio 에이전트는 이 탭이 아니라 3단계의 Entra 디렉터리 휴지통에서 30일 복구 여부를 확인합니다. 정리: 같은 ‘삭제’라도 Copilot Studio 봇 객체는 복구 창 없이 영구 삭제, 연결된 Entra Agent ID만 디렉터리 휴지통 30일 보존. 근거: 에이전트 수명주기 작업(공식 문서).3단계 · Entra Agent ID·연결 리소스 정리
메이커 포털 삭제는 테넌트에 프로비저닝된 Entra Agent ID(서비스 주체)·app registration도 함께 제거합니다. 제거된 Agent ID는 Entra 디렉터리 휴지통(삭제된 항목)에 30일간 보존되어 그 기간 내 복원할 수 있고, 이후 영구 삭제됩니다. 다만 조건부 액세스 등으로 자동 제거가 실패하면 Agent ID가 활성 상태로 잔존할 수 있으므로, 폐기 마무리로 신원·권한·연결을 점검합니다.
Entra 관리 센터 > 엔터프라이즈 애플리케이션 / 앱 등록에서 폐기한 에이전트의 Agent ID(서비스 주체)가 남아 있는지 확인합니다(에이전트의 Entra Agent ID GUID는 삭제 전 관리 센터 에이전트 세부 정보 또는 Copilot Studio 메타데이터에서 확보해 둡니다). 이 실습에서는 메이커 포털 삭제 직후 해당 Agent ID로 검색하니 ‘결과 없음’으로, 서비스 주체·앱 등록이 자동으로 제거됐음을 확인했습니다 — 조건부 액세스 차단이 없어 신원까지 정상 정리된 경우입니다. 제거된 서비스 주체는 Entra 디렉터리 휴지통(삭제된 항목)에 30일간 보존되므로, 그 기간 내에는 필요 시 복원할 수 있습니다. 반대로 조건부 액세스가 신원 리소스 제거를 막아 삭제가 실패하면 Agent ID가 활성 상태로 잔존할 수 있으므로, 이때는 수동으로 제거합니다(프로그래매틱으로는 DELETE /servicePrincipals/<id>). 근거: Copilot Studio 삭제 시 신원 리소스 제거·CA 실패(공식 문서) · 에이전트 신원 거버넌스(공식 문서).
Entra ID 거버넌스 > 자격 관리 > 액세스 패키지)나 보안 특성·조건부 액세스 대상이 더 이상 필요 없다면 정리합니다. 하나의 객체를 차단·삭제해도 외부 서비스가 비활성화되거나 색인된 데이터가 제거되는 것은 아니므로, 각 의존성을 개별 검토해야 합니다. 폐기 완료 후에는 최종 상태·폐기일·소유자·아카이브 위치를 기록해 둡니다. 근거: 에이전트 폐기(Retire) 절차(공식 문서).