마이그레이션 전 검증 가이드
이 문서에서는 SOAR 마이그레이션 전에 Google Security Operations 인스턴스 및 인증 설정을 검증하기 위한 체계적인 단계별 진단 접근 방식을 설명합니다. 이 가이드에서는 사용자 인증 및 승인에 사용되는 SAML 및 OIDC 표준에 중점을 둡니다.
Chronicle API 설정 유효성 검사
Chronicle API가 Google Cloud 프로젝트에서 올바르게 구성되었는지 확인하려면 다음 단계를 따르세요.
- Google Cloud 콘솔에 로그인하고 상단 탐색 메뉴의 프로젝트 목록에서 올바른 Google Cloud 프로젝트를 선택합니다.
- 탐색 메뉴 (≡)를 열고 API 및 서비스 > 사용 설정된 API 및 서비스로 이동합니다.
- 사용 설정된 API 및 서비스 목록으로 이동하여
Chronicle API를 찾습니다. 나열된 경우: API가 사용 설정된 것입니다.
목록에 없는 경우: 상단의 + API 및 서비스 사용 설정을 클릭하고
Chronicle API를 검색한 후 사용 설정을 클릭합니다.
서비스 계정이 생성되었는지 확인하려면 다음 단계를 따르세요.
- Google Cloud 콘솔에서 IAM 페이지로 이동합니다.
- 숨겨진 계정 표시 (중요한 단계): 필터 바 오른쪽에 있는 Google 제공 역할 부여 포함 체크박스를 선택해야 합니다.
- 상담사 검색: 필터 표시줄에
chronicle를 입력합니다. 다음과 같은 특정 패턴과 일치하는 이메일 주소를 찾고 있습니다.service-[PROJECT_NUMBER]@gcp-sa-chronicle.iam.gserviceaccount.com - 권한 확인: Chronicle 서비스 에이전트 역할이 있는지 확인합니다. 역할이 누락된 경우 수정 수정을 클릭하여 다시 추가합니다.
Google SecOps 설정 유효성 검사
- Google Cloud 콘솔의 목록에서 올바른 Google Cloud 프로젝트를 선택합니다.
- 보안 > Google SecOps로 이동하면 싱글 사인온(SSO) 탭이 표시됩니다.
- Google SecOps가 사용 설정된 경우 싱글 사인온이라는 탭이 표시됩니다. 그렇지 않으면 잠재고객 시작이 완료되지 않습니다. 제품 내 알림에 있는 Google 양식에 Google Cloud 프로젝트 ID를 입력합니다. 이전 날짜와 시간대를 확인한 다음 양식을 제출합니다. 제출 후 72시간 이내에 응답을 받지 못한 경우 soar-migration-to-gcom@google.com으로 문의하세요.
- 탭이 있으면 SecOps로 이동을 클릭합니다. 로그인에 성공하면 인증 구성이 올바른 것입니다. 로그인에 실패하면 다음 섹션을 사용하여 구성을 디버그합니다. 로그인에 실패하면 다음 섹션을 사용하여 구성을 디버그합니다.
SAML 흐름 및 문제 해결
이 섹션에서는 SAML 인증 프로세스를 간략하게 설명하고 일반적인 구성 문제를 진단하고 해결하기 위한 체계적인 접근 방식을 간략하게 설명합니다.
인증 워크플로 아키텍처
요청 흐름을 이해하는 것은 장애 지점을 격리하는 데 매우 중요합니다. 다음 다이어그램은 성공적인 로그인의 순차적 경로를 보여줍니다.

단계별 문제 해결 절차
SAML 인증 프로세스를 효과적으로 진단하고 추적하려면 다음 섹션에 나열된 웹 기반 유틸리티를 사용하면 됩니다.
Google은 특정 제품을 보증하지 않지만 다음 도구는 프로세스 문제 해결에 도움이 되는 것으로 알려져 있습니다.
- SAML 유효성 검사: https://www.samltool.io/
- 목적: 원시 SAML 요청 및 응답을 디코딩하고 검증하는 데 사용됩니다.
- JWT 검사: https://www.jwt.io/
- 목적: JSON 웹 토큰(JWT)의 클레임과 콘텐츠를 검사하는 데 사용됩니다.
1단계: 환경 준비
시작하기 전에 다음 단계를 완료하여 브라우저 환경에서 네트워크 트래픽을 캡처할 준비가 되었는지 확인하세요.
- 새 브라우저 탭을 열거나 시크릿 창을 사용합니다.
운영체제의 단축키를 사용하여 개발자 도구를 엽니다.
- Windows: F12 키를 누릅니다.
- Linux: Ctrl + Shift + I를 누릅니다.
- macOS: Cmd + Option + I를 누릅니다.
네트워크 탭으로 이동합니다.
리디렉션 중에 데이터가 손실되지 않도록 로그 유지 상자를 선택합니다.

Google SecOps 환경 URL로 이동하여 로그인 흐름을 시작합니다. SOAR 독립형 고객의 이전 1단계 5단계에서 Google SecOps 설정을 완료하면 이 URL이 이메일로 전송됩니다. 이메일의 제목은
Your Google SecOps instance is ready입니다.
2단계: IDP에 대한 SAML 요청 유효성 검사
이 단계에서는 Google Cloud 에서 ID 공급업체 (IDP)로 전송한 초기 메시지를 확인합니다.
요청 찾기: 네트워크 탭 필터 막대에서
saml를 검색합니다.
데이터 추출: 요청을 선택하고 페이로드 탭을 클릭합니다.
SAMLRequest라벨이 지정된 쿼리 문자열 매개변수를 찾습니다.
디코딩: 요청 값을 복사하여 SAML 유효성 검사 도구 (
samltool.io)에 붙여넣어 디코딩합니다.
인증:
- 요청 대상을 확인합니다.
- 이 URL이 IDP 내의 구성 설정과 일치하는지 확인합니다.
3단계: IDP의 SAML 응답 검증
이 단계에서는 인증 후 IDP에서 반환된 속성을 Google Cloud 확인합니다.
응답 찾기: 네트워크 탭 필터 표시줄에서
signin-callback를 검색합니다.
데이터 추출: 요청을 선택하고 페이로드 탭을 클릭합니다.
SAMLResponse데이터를 찾습니다.
디코딩: 응답 값을 복사하여 SAML 유효성 검사 도구에 붙여넣습니다.
인증:
groups,first name,last name,email과 같은 반환된 클레임 (속성)을 검토합니다.- 중요: 이러한 속성이 Google Cloud의 직원 풀 설정에 있는 구성과 일치하는지 확인합니다.
로그인을 시도하는 특정 사용자의 값이 올바른지 확인합니다.

다음 이미지는 속성 매핑을 보여줍니다.

이미지의 매핑은 다음과 같습니다.
google.subject = assertion.subjectattribute.last_name = assertion.attributes.last_name[0]attribute.user_email = assertion.attributes.user_email[0]attribute.first_name = assertion.attributes.first_name[0]google.groups = assertion.attributes.groups
왼쪽 부분은 항상 동일합니다. Google 구문입니다. 오른쪽은 SAML 응답에 표시된 클레임 속성 키에 따른 것입니다.
[0]는 명시된 특정 속성 (last_name, user_email, first_name)에 중요하며 subject 및 groups에는 관련이 없습니다.
4단계: Google SecOps 인증 유효성 검사
이 단계에서는 Google Cloud 가 사용자를 인증하여 Google SecOps SOAR에 로그인하는지 확인합니다.
사용자 브라우저에서 토큰 찾기: 네트워크 탭 필터 표시줄에서 엔드포인트
auth/siem를 검색합니다.
데이터 추출: 요청을 선택하고 페이로드 탭을 확인합니다.
jwt문자열을 찾습니다.디코딩: JWT 문자열을 복사하여 JWT 검사 도구 (jwt.io)에 붙여넣습니다.

인증:
given_name,family_name,email,idpgroups의 디코딩된 클레임을 비교합니다.- 일치 확인: 이 값은 3단계 (SAML 응답)에서 검증된 속성과 정확히 일치해야 합니다.
- 값이 일치하는데도 액세스 권한이 없는 경우 IAM에서 역할 할당을 확인하세요. ID 설정 (Google 관리 계정용 직원 ID 제휴 또는 Cloud ID)에 맞는 주 구성원 형식을 사용하여 모든 사용자에게 Chronicle 사전 정의 역할 중 하나가 할당되어 있는지 확인합니다.
5단계: SOAR 권한 액세스 확인
이 단계에서는 플랫폼 그룹 매핑 페이지를 통해 시스템이 SOAR에서 권한을 올바르게 할당하는지 확인합니다.
그룹 매핑 페이지에서 기본 액세스를 사용 설정하므로 관리자는 SOAR에 자동으로 액세스할 수 있습니다.
이 새 SOAR 인스턴스에 IDP 그룹 매핑을 몇 개 추가하여 사용자의 그룹 액세스를 검증할 수 있습니다. 새 인스턴스의 그룹 매핑 페이지는 기본적으로 비어 있습니다. 다른 사용자의 그룹 액세스를 확인하려면 새 SOAR 인스턴스에 IDP 그룹 매핑을 추가하고 다음 단계를 완료하세요.
- 기존 SOAR 인스턴스의 그룹 매핑 페이지에서 그룹 매핑을 복사합니다.
- IDP 그룹의 사용자에게 새 Google SecOps URL에 액세스하도록 요청합니다.
사용자가 SOAR에 액세스할 수 없는 경우 다음 문제 해결 단계를 따르세요.
a. 대답 검사: 4단계에서
auth/siem요청을 열고 미리보기 탭을 선택합니다.b. 권한 확인: JSON 응답 내에서
permissions객체를 찾습니다.
선택사항: 시간을 절약하려면 설정 > 고급 > 그룹 매핑에서 이러한 매핑을 기존 Google SecOps 인스턴스에 복사합니다.
OIDC 흐름 및 문제 해결
이 섹션에서는 OIDC 인증 프로세스를 간략히 설명하고 일반적인 통합 문제를 진단하고 해결하기 위한 체계적인 접근 방식을 간략하게 설명합니다.
인증 워크플로 아키텍처
요청 흐름을 이해하는 것은 장애 지점을 격리하는 데 매우 중요합니다. 다음 다이어그램은 성공적인 로그인의 순차적 경로를 보여줍니다.

단계별 OIDC 문제 해결 절차
OIDC 인증 프로세스를 효과적으로 진단하고 추적하려면 브라우저 개발자 도구와 온라인 JWT 디코더를 사용하면 됩니다.
- JWT 검사: https://www.jwt.io/
- 목적: JSON 웹 토큰 (JWT)의 클레임과 콘텐츠를 검사하는 데 사용됩니다.
1단계: 환경 준비
시작하기 전에 다음 단계를 완료하여 브라우저 환경에서 네트워크를 캡처할 준비가 되었는지 확인하세요.
- 새 빈 브라우저 탭을 열거나 시크릿 창을 엽니다.
운영체제의 단축키를 사용하여 개발자 도구를 엽니다.
- Windows: F12 키를 누릅니다.
- Linux: Ctrl + Shift + I를 누릅니다.
- macOS: Cmd + Option + I를 누릅니다.
네트워크 탭으로 이동합니다.
리디렉션 중에 데이터가 손실되지 않도록 로그 유지 상자를 선택합니다.

Google SecOps 환경 URL로 이동하여 로그인 흐름을 시작합니다. SOAR 독립형 고객의 이전 1단계 5단계에서 Google SecOps 설정을 완료하면 이 URL이 이메일로 전송됩니다. 이메일의 제목은
YourGoogle SecOps instance is ready입니다.
2단계: OIDC 프로바이더에 대한 승인 요청 유효성 검사
이 단계에서는 Google Cloud 에서 OpenID Connect 제공업체 (IdP)로의 초기 리디렉션을 확인합니다.
요청 찾기: 네트워크 탭에서 OIDC 제공업체의 승인 엔드포인트로의 초기 리디렉션을 찾습니다. URL에는 일반적으로
client_id,redirect_uri,scope,response_type,state과 같은 매개변수가 포함됩니다.
인증:
client_id이 OIDC 제공업체에 구성된 것과 일치하는지 확인합니다.redirect_uri이https://auth.backstory.chronicle.security/signin-callback/locations/global/workforcePools/POOL_ID/provider/PROVIDER_ID과 정확히 일치해야 하며,POOL_ID및PROVIDER_ID은 직원 ID 제휴의 풀 및 제공업체로 대체해야 합니다.response_type이 코드로 설정되어 있는지 확인합니다.- 필요한 클레임 (예: 이메일, 프로필)을 출시하는 데 필요한 OpenID 및 기타 범위를 포함해야 하는 범위 파라미터를 참고하세요.
3단계: 콜백 및 토큰 교환 검증
이 단계에서는 IdP가 Google Cloud에 다시 응답하는지 확인합니다.
콜백 찾기: 네트워크 탭에서 signin-callback URL(
.../signin-callback/...)에 대한 요청을 찾습니다.
데이터 확인: 이 요청의 URL 매개변수를 확인합니다. OIDC IdP에서 제공한 코드 매개변수가 포함되어야 합니다.
비하인드 스토리: 직원 ID 제휴는 이 코드를 OIDC 공급업체의 토큰 엔드포인트에서 토큰 (ID 토큰, 액세스 토큰)으로 교환합니다. 이 단계의 오류는 직원 ID 제휴의 Cloud Logging에 표시되는 경우가 많습니다.
- 속성 전파 및 전체 토큰 확인: 직원 ID 제휴의 속성 매핑이 예상된 결과를 생성하는지 확인하려면 다음 단계를 따르세요.
- 직원 ID 제휴 공급업체 구성에 제공된 리디렉션 URI를 공급업체의 리디렉션 URI에 추가합니다 (예: https://auth.cloud.google/signin-callback/locations/global/workforcePools/POOL_ID/providers/PROVIDER_ID).
- 직원 ID 제휴 공급업체로 이동하여 IdP 토큰을 디버그합니다. 전체 토큰을 확인할 수도 있습니다. 자세한 내용은 제품 구성 확인하기를 참고하세요.

- 속성 전파 및 전체 토큰 확인: 직원 ID 제휴의 속성 매핑이 예상된 결과를 생성하는지 확인하려면 다음 단계를 따르세요.
4단계: Google SecOps 인증 유효성 검사
이 단계에서는 Google Cloud 가 사용자를 인증하여 Google SecOps SOAR에 로그인하는지 확인합니다.
사용자 브라우저에서 토큰 찾기: 네트워크 탭 필터 표시줄에서 엔드포인트
auth/siem를 검색합니다.
데이터 추출: 요청을 선택하고 페이로드 탭을 확인합니다.
jwt문자열을 찾습니다.디코딩: JWT 문자열을 복사하여 JWT 검사 도구 (jwt.io)에 붙여넣습니다.

인증:
sub,given_name,family_name,email,idpgroups의 디코딩된 클레임을 비교합니다.- 일치 확인: 이 값은 OIDC 제공업체에서 출시한 속성과 직원 ID 제휴 속성 매핑에서 매핑된 방식에 상응해야 합니다. 예를 들어 Google Cloud 의
attribute.first_name는 JWT의given_name에 매핑되어야 합니다. - IAM 역할: 클레임이 올바르지만
Cannot Authenticate user, because user does not have access to the GCP project...,와 같은 메시지와 함께 액세스가 거부되는 경우 IAM 역할 할당을 확인하세요. 올바른principalSet형식 (예:principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/group/IDP_GROUP_NAME)을 사용하여 사용자의 그룹 (JWT의idp_groups)에 필요한 역할이 부여되었는지 확인합니다.
5단계: SOAR 권한 액세스 확인
이 단계에서는 플랫폼 그룹 매핑 페이지를 통해 시스템이 SOAR에서 권한을 올바르게 할당하는지 확인합니다.
그룹 매핑 페이지에서 기본 액세스를 사용 설정하므로 관리자는 SOAR에 자동으로 액세스할 수 있습니다.
이 새 SOAR 인스턴스에 IDP 그룹 매핑을 몇 개 추가하여 사용자의 그룹 액세스를 검증할 수 있습니다. 새 인스턴스의 그룹 매핑 페이지는 기본적으로 비어 있습니다. 다른 사용자의 그룹 액세스를 확인하려면 새 SOAR 인스턴스에 IDP 그룹 매핑을 추가하고 다음 단계를 완료하세요.
- 기존 SOAR 인스턴스의 그룹 매핑 페이지에서 그룹 매핑을 복사합니다.
- IDP 그룹의 사용자에게 새 Google SecOps URL에 액세스하도록 요청합니다.
사용자가 SOAR에 액세스할 수 없는 경우 다음 문제 해결 단계를 따르세요.
a. 대답 검사: 4단계에서
auth/siem요청을 열고 미리보기 탭을 선택합니다.b. 권한 확인: JSON 응답 내에서
permissions객체를 찾습니다.
선택사항: 시간을 절약하려면 설정 > 고급 > 그룹 매핑에서 이러한 매핑을 기존 Google SecOps 인스턴스에 복사합니다.
일반적인 OIDC 오류:
invalid_redirect_uri(IdP에서): IdP에 구성된 리디렉션 URI가https://auth.backstory.chronicle.security/signin-callback/locations/global/workforcePools/POOL_ID/provider/PROVIDER_ID와 정확히 일치하는지 확인합니다. 이때POOL_ID및PROVIDER_ID는 직원 ID 제휴의 풀 및 공급자로 대체됩니다. 후행 슬래시 또는http와https의 불일치도 이 문제를 트리거합니다.JWT에 클레임이 누락됨:
IdP 측: OIDC 클라이언트가 ID 토큰에서 필수 클레임 (
sub,groups,email,given_name,family_name과 같이 WIF에 매핑됨)을 출시하도록 구성되어 있는지 확인합니다.WIF 측: WIF 속성 매핑 섹션에서 이러한 수신 클레임이 올바르게 매핑되는지 확인합니다 (예: google.groups=assertion.groups). 토큰에 클레임이 있지만 WIF에 매핑되지 않은 경우 SOAR 플랫폼에서 사용자를 승인하지 못할 수 있습니다. 속성 매핑이 예상 결과를 생성하는지 확인하려면 공급업체 구성 확인을 참고하세요.
이전 후 그룹 매핑
이전이 완료된 후에도 Google SecOps에서 그룹 매핑이 중요함
마이그레이션 후 마이그레이션된 인스턴스는 그룹 매핑을 유지합니다. 이는 사용자의 SOAR 액세스 권한을 결정하는 기준으로 사용됩니다. Google SecOps에 액세스하려면 모든 사용자가 이 페이지에 매핑되어 있어야 합니다. 자세한 내용은 인스턴스 액세스를 참고하세요.
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.