광고 자리 모집 중 · 제휴 문의

Glean에서 Google Workspace 및 Slack용 엔터프라이즈 데이터 커넥터 구성과 ACL 권한 매핑 가이드

365Finds Editorial
Wiki 문서 11,430편 수록

내 AI에서 365 Wiki 사용하기

아래 프롬프트를 복사해 평소 사용하는 AI에 붙여넣고 바로 질문하세요.

전체 Skill 다운로드

먼저 프롬프트로 체험해 보세요. 365 Wiki를 자주 쓴다면 전체 365Wiki Skill을 설치해 매번 붙여넣는 수고를 줄일 수 있습니다. 평소 쓰는 AI가 없다면 Gemini나 Microsoft Copilot 웹 버전도 사용할 수 있습니다.

엔터프라이즈 사내 검색 플랫폼과 생성형 AI 어시스턴트의 신뢰성은 기반이 되는 접근 제어 아키텍처의 정밀성에 완전히 좌우됩니다. IT 관리자가 Google Workspace와 Slack 환경에 Glean을 구축할 때 요구되는 핵심 보안 기준은 명확합니다. 검색 결과나 AI가 생성한 답변이 기밀 문서, 비공개 제한 채널, 개인 다이렉트 메시지(DM)를 권한이 없는 직원에게 절대로 노출해서는 안 된다는 점입니다.

Glean은 원본 시스템 위에 별도의 보안 정책을 임의로 재정의하지 않습니다. 대신 원본의 접근 제어 목록(ACL)을 엄격하게 미러링하는 이중 엔진 아키텍처를 사용합니다. Google Drive와 같은 비동기 문서 저장소에는 **수집 시점 권한 인식 인덱싱(Ingestion-time Permission-Aware Indexing)**을 적용하고, 실시간성이 중요한 Slack에는 연합 제로 카피 실시간 검색(Slack RTS, Real Time Search) 방식을 채택합니다. 이 두 환경을 유기적으로 결합하는 핵심은 Glean의 자동화된 **통합 ID 그래프(Identity Graph)**로, 기업 ID 공급업체(IdP)를 기준으로 이메일 별칭, 시스템 간 UID, 중첩 그룹 멤버십을 단일 엔티티로 식별하고 동기화합니다.

본 가이드에서는 엔터프라이즈 IT 관리자와 보안 엔지니어를 위해 커넥터 구성, ID 및 권한 매핑, 원본 시스템의 공개 범위 제어, 규정 준수 검증 절차를 단계별로 안내합니다.


1. 핵심 아키텍처: 이중 엔진 권한 모델과 통합 ID 그래프

Glean을 안정적으로 운영하기 위해서는 데이터 소스별 권한 처리 매커니즘의 차이를 명확히 이해해야 합니다.

                           +-------------------------------------+
                           |         기업 ID 공급업체 (IdP)      |
                           |  (Okta / Entra ID / Google ID 관리) |
                           +------------------+------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |         Glean 통합 ID 그래프        |
                           |  - 기본 계정 및 이메일 별칭 통합    |
                           |  - 중첩 그룹 멤버십 계층 평탄화     |
                           |  - 이종 UID(Slack 사용자 ID 등) 매핑|
                           +------------------+------------------+
                                              |
                     +------------------------+------------------------+
                     |                                                 |
                     v                                                 v
  +-------------------------------------+   +-------------------------------------+
  |     Google Workspace 커넥터         |   |           Slack 커넥터 체계         |
  | (Google Drive / Gmail / Groups)     |   | (Slack 메타데이터 + Slack RTS)      |
  +------------------+------------------+   +------------------+------------------+
                     |                                                 |
  - GCP 서비스 계정 및 도메인 전체 위임     - 공식 Marketplace 중앙형 OAuth 앱
  - 수집 시점 문서 내용 및 ACL 토큰 색인    - 주기적 계정 크롤링 및 참여 신호 수집
  - 변경 API / Webhook 기반 실시간 동기화   - 제로 카피 연합 조회: 요청 시 즉시 질의
  - Google Drive 링크 공유 노출 규칙 준수   - 비공개 채널 및 DM 멤버십 네이티브 판정
                     |                                                 |
                     +------------------------+------------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |      쿼리 시점 보안 필터링 차단기   |
                           | 사용자 유효 권한군 ∩ 문서 ACL 토큰  |
                           |       + 실시간 연합 응답 스트림     |
                           +------------------+------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |  원본 권한이 완벽히 적용된 검색     |
                           |       결과 및 AI 생성 답변          |
                           +------------------+------------------+

1. 수집 시점 ACL 인덱싱 (Google Drive)

Google Drive와 같은 파일 기반 시스템의 경우, Glean은 문서 본문을 크롤링할 때 연결된 보안 주체(개별 사용자, Google Groups, 도메인 공유 범위)를 함께 수집하여 각 문서의 ACL 토큰 세트로 인덱스에 저장합니다. 사용자가 검색을 실행하면 Glean의 쿼리 인터셉터가 해당 사용자의 소속 그룹을 포함한 활성 권한 목록을 계산한 후 인덱스 상에서 교집합을 필터링합니다. 권한이 없는 문서는 랭킹 산정이나 AI 요약 단계 이전에 완전히 배제됩니다.

2. 연합 실시간 검색 (Slack RTS)

Slack 대화는 발생 속도가 매우 빠르고 채널 멤버 변동이 빈번합니다. 주기적인 배치 크롤링 방식은 보안성과 데이터 신선도를 보장하기 어렵습니다. 이에 따라 Glean은 Slack Real Time Search (RTS) 연합 아키텍처를 적용합니다. Glean은 Slack 메시지 본문을 자체 인덱스에 영구 저장하지 않습니다(제로 카피). 사용자가 검색을 요청할 때마다 쿼리를 실행한 사용자의 컨텍스트를 사용하여 Slack의 실시간 검색 API(assistant.search.context, search.messages)를 즉시 호출합니다. Slack 플랫폼 자체가 사용자의 공개 채널, 참여 중인 비공개 채널, DM 권한을 직접 판정하여 반환하므로 정보 유출이 원천 차단됩니다.

3. 통합 ID 그래프 (Identity Graph)

권한 매핑에서 흔히 발생하는 문제는 서비스별 식별자가 일치하지 않는 것입니다. 예를 들어 동일한 임직원이 Google Workspace에서는 user@company.com이지만, Slack에서는 내부 고유 ID인 U12345678로 표시됩니다. Glean은 Okta, Microsoft Entra ID, Google Workspace 등 사내 주 IdP와 동기화하여 기본 이메일, 별칭 계정, 타사 UID를 하나의 통합 엔티티로 매핑합니다. 이를 통해 서로 다른 SaaS에서 가져온 권한 정보도 동일한 사용자로 정확하게 일치시킵니다.


2. Google Workspace 커넥터 및 권한 동기화 설정 절차

Glean과 Google Workspace 연동은 Google Cloud Platform(GCP) 서비스 계정과 도메인 전체 위임(Domain-Wide Delegation)을 기반으로 구성됩니다. 이를 통해 Glean은 지정된 관리자 권한으로 디렉터리 정보를 안전하게 탐색하고 문서 수준 보안(DLS)을 유지합니다.

1단계: GCP 서비스 계정 생성

  1. 조직의 Google Cloud Console에 로그인합니다.
  2. IAM 및 관리 → 서비스 계정으로 이동하여 서비스 계정 만들기를 클릭합니다.
  3. 서비스 계정 이름(예: glean-enterprise-connector)과 설명을 입력합니다.
  4. 생성이 완료되면 해당 계정 상세 페이지의 키 탭으로 이동하여 키 추가 → 새 키 만들기를 선택하고, JSON 형식을 지정하여 안전한 위치에 다운로드합니다.
  5. 계정 세부정보에서 순수 숫자로 이루어진 OAuth 2 클라이언트 ID를 복사합니다. (도메인 위임에는 서비스 계정 이메일이 아닌 고유 클라이언트 ID를 사용해야 합니다.)

2단계: Google Workspace 관리 콘솔에서 도메인 전체 위임 승인

  1. 최고 관리자 계정으로 Google Workspace 관리 콘솔(admin.google.com)에 로그인합니다.
  2. 보안 → 액세스 및 데이터 제어 → API 제어 → 도메인 전체 위임 관리로 이동합니다.
  3. 새로 추가를 클릭하고 복사해 둔 숫자 클라이언트 ID를 입력합니다.
  4. OAuth 범위 입력란에 쉼표로 구분하여 다음 API 범위를 정확히 입력합니다:
    • https://www.googleapis.com/auth/drive.readonly (Google Drive 문서, 메타데이터, ACL 수집)
    • https://www.googleapis.com/auth/admin.directory.user.readonly (사용자 프로필 및 계정 상태 조회)
    • https://www.googleapis.com/auth/admin.directory.group.readonly (Google Groups 및 멤버십 조회)
    • https://www.googleapis.com/auth/apps.groups.settings (그룹 보안 설정 조회)
    • Gmail 및 Calendar 인덱싱이 필요한 경우: https://www.googleapis.com/auth/gmail.readonly 및 Calendar 범위 추가.
  5. 승인을 클릭합니다.

3단계: Glean 관리 콘솔에서 커넥터 구성 완료

  1. Glean Admin Console에 로그인한 후 Platform → Connectors로 이동합니다.
  2. Google Drive(또는 Google Workspace)를 선택하고 Setup을 클릭합니다.
    • 참고: 2026년 8월 14일 이후 생성된 테넌트의 경우 가이드 기반 설정 플로우가 제공되어 읽기 도구가 기본 활성화됩니다. 이전 배포의 경우 다운로드한 GCP 서비스 계정 JSON 키를 수동 업로드합니다.
  3. Directory Admin Email 설정: Google Workspace의 활동 로그 및 디렉터리 읽기 권한을 보유한 관리자 계정 이메일을 지정합니다. Glean은 이 계정을 통해 Activity API를 호출하여 실시간 변경 사항과 랭킹 신호를 수집합니다.
  4. 크롤링 범위 및 제한 규칙 구성: 인덱싱에 포함할 조직 단위(OU)나 공유 드라이브 범위를 지정합니다.

4단계: Google Drive 링크 공유 및 가시성 규칙의 이해

Google Drive의 광범위한 공유 설정은 보안상 혼선을 초래할 수 있습니다. Glean은 Google Drive의 고유 검색 동작을 다음과 같이 미러링합니다:


3. Slack Enterprise 커넥터 및 실시간 검색(RTS) 구성

Slack 연동은 메타데이터와 인터랙션 신호를 처리하는 기본 Slack 커넥터와, 실시간 제로 카피 검색을 담당하는 Slack Real Time Search (RTS) 커넥터의 2단계로 진행됩니다.

1단계: 배포 모드 확인 및 준비 사항

2단계: 기본 Slack 커넥터 구성 (메타데이터 및 신호 수집)

  1. Glean 관리 콘솔에서 Platform → Connectors → Slack(또는 Slack Enterprise)으로 이동하고 Setup을 클릭합니다.
  2. Slack 도메인과 Enterprise ID를 입력합니다.
  3. Slack Marketplace의 공식 Glean 앱을 승인합니다. 필수 권한 범위는 다음과 같습니다:
    • users:read, users:read.email (계정 식별 및 ID 그래프 매핑)
    • channels:read, groups:read, im:read, mpim:read (채널 구조 및 멤버십 수집)
    • usergroups:read (Slack 사용자 그룹 매핑)
    • assistant:write, reactions:write, commands (Gleanbot 및 /glean 명령어 지원)
  4. 조직 전체 워크스페이스에 대한 배포를 완료합니다.

3단계: Slack Real Time Search (RTS) 커넥터 구성

  1. 기본 커넥터가 정상(Healthy) 상태로 확인되면, 다시 Platform → Connectors에서 **Slack Real Time Search (RTS)**를 선택합니다.
  2. Setup을 클릭하고 OAuth 인증을 완료합니다.
  3. API 엔드포인트 동작 확인: RTS는 Slack의 실시간 검색 API를 활용합니다:
    • assistant.search.context, search.messages: 쿼리 요청 시 실시간 연합 검색 수행.
    • conversations.history, conversations.replies: 검색 결과 주변의 스레드 및 전후 맥락 실시간 조회.
    • conversations.members, users.info: 멤버십 자격 실시간 검증.
  4. 제로 카피 보안성 확인: 메시지 본문이 Glean 디스크에 저장되지 않음을 확인합니다. RTS는 메모리 상에서 실시간으로 처리되며, 직원이 소속되지 않은 비공개 채널(예: #임원-급여)의 대화는 Slack API 수준에서 데이터가 제외됩니다.

4단계: 민감 채널 격리 및 외부 채널 보호 설정

  1. 채널 제외 목록(Redlist): 임원 인사, 인수합병, 내부 감사 등 엄격한 차단이 필요한 채널은 채널 ID(C로 시작)를 입력하여 제외하거나 Glean 기술 지원을 통해 Redlist로 등록합니다.
  2. Slack Connect 외부 공유 채널 차단: Glean은 외부 파트너가 참여하는 Slack Connect 채널에서의 봇 응답과 검색 연동을 기본적으로 차단하여 기밀 노출을 방지합니다.
  3. 개인 DM 및 비공개 대화 권한 연동: 사내 컴플라이언스 규정에 따라 개인 메시지 검색에 개별 동의가 필요한 경우, 사용자가 자신의 Slack 개인 토큰을 연동하도록 설정할 수 있습니다.

4. 권한 매핑, 그룹 재귀 확장 및 동기화 수명 주기

권한 회수 및 변경이 검색 인덱스에 반영되는 시점을 명확히 알아야 보안 감사를 효과적으로 수행할 수 있습니다.

+-----------------------------------------------------------------------------------+
|                           권한 및 데이터 동기화 경로 요약                         |
+-----------------------------------------------------------------------------------+
| 원본 시스템   | 동기화 메커니즘     | 작업 유형     | 일반적인 반영 주기 / 빈도   |
+---------------+---------------------+---------------+-----------------------------+
| Google Drive  | 전체 콘텐츠 크롤링  | 배치          | 정기 실행 (기준 인덱스 형성)|
| Google Drive  | Google Reports API  | 증분 변경 크롤| 수 분 ~ 수 시간 단위        |
| Google Drive  | 푸시 Webhook        | 실시간        | 수 초 ~ 수 분 이내 반영     |
| Google Groups | Admin Directory API | 계정 크롤링   | 주기적 계층 평탄화          |
| Slack 계정구조| Slack Users API     | 계정 크롤링   | 주기적 채널/사용자 목록 갱신|
| Slack 활동    | Slack Events API    | Webhook       | 채널 참여/탈퇴 시 즉시 전달 |
| Slack 메시지  | Slack RTS 실시간 API| 제로 카피     | 검색 쿼리 시점 즉시 (0초)   |
+-----------------------------------------------------------------------------------+

중첩 그룹 재귀 확장 (Recursive Flattening)

대기업에서는 Google Groups가 다단계로 중첩되어 있는 경우가 많습니다(예: Engineering 안에 Tech-Ops가 있고, 그 안에 Security-Team이 포함). Glean은 계정 크롤링 시 이러한 그룹 관계를 재귀적으로 평탄화(Flattening)합니다. 특정 Google Doc이 Engineering에 공유되어 있다면, 하위의 Security-Team 소속 구성원에게도 Glean 상에서 적절한 보안 토큰이 자동 할당됩니다. 이후 관리자가 Google Workspace 콘솔에서 해당 직원을 하위 그룹에서 제외하면, 다음 증분 크롤링 시 토큰이 회수되어 검색 결과에서 즉시 제외됩니다.

실시간 권한 회수의 실제 반영


5. 관리 콘솔에서의 권한 검증, 감사 및 문제 해결

설정을 완료한 후에는 실제 접근 제어가 올바르게 동작하는지 객관적으로 검증해야 합니다.

1. Document Lookup을 통한 접근 권한 정밀 진단

  1. Glean 관리 콘솔에서 Content management → Document lookup으로 이동합니다.
  2. Document URL 입력란에 민감한 Google Drive 문서의 URL 또는 문서 ID를 입력합니다.
  3. User (optional) 드롭다운에서 접근 권한을 테스트할 임직원 계정을 선택합니다.
  4. Check document를 클릭합니다.
  5. 진단 결과를 확인합니다:
    • Last crawled: 문서 메타데이터가 마지막으로 수집된 시각.
    • Last indexed: 문서 내용과 ACL 토큰이 검색 인덱스에 반영된 시각.
    • Document visibility on Glean: 관리자 규칙에 의해 숨김 처리되었는지 여부.
    • Document access: 해당 직원의 접근 가능 여부(Allowed 또는 Restricted)와 권한 부여 경로(직접 공유, 그룹 상속, 링크 설정 등)가 구체적으로 표시됩니다.

2. 검색창 진단 연산자를 활용한 교차 검증

관리자 또는 테스트 계정으로 Glean 검색창에서 대상 소스를 한정하여 테스트할 수 있습니다:

3. 관리자 감사 로그(Audit Logs) 검토 및 내보내기

Glean은 모든 관리 작업과 보안 설정을 기록합니다:

  1. Users & permissions → Audit logs(또는 Management → Audit Logs)로 이동합니다.
  2. 기간, 작업자, 이벤트 유형(커넥터 변경, OAuth 범위 수정, 노출 정책 변경 등)으로 필터링합니다.
  3. CSV 파일로 내보내거나 사내 SIEM 솔루션(Splunk, Datadog)과 연동하여 SOC 2, HIPAA, ISO 27001 등 보안 감사 요건을 충족합니다.

6. 결론 및 배포 전 체크리스트

Google Drive에 대한 '수집 시점 심층 ACL 인덱싱'과 Slack에 대한 '연합 제로 카피 실시간 검색(RTS)'의 조화를 통해, Glean은 자체 구축 RAG(검색 증강 생성) 시스템에서 빈번하게 발생하는 권한 누락 문제를 완벽히 방지합니다.

IT 관리자 배포 전 필수 체크리스트

이 가이드의 절차를 준수하여 설정하면, 기업은 제로 트러스트 보안 원칙을 완벽히 지키면서도 안전하고 생산성 높은 사내 지식 검색 환경을 성공적으로 구축할 수 있습니다.


참고 자료