플레이북에서 흐름 사용
다음에서 지원:
이 문서에서는 흐름 구성요소가 분기 시스템을 사용하여 결정을 내림으로써 플레이북의 다음 단계를 안내하는 방법을 설명합니다.
조건 흐름은 플레이북이 결정을 내릴 수 있도록 하는 데 필수적입니다. 즉, 수신되는 알림 데이터, 이전 작업 결과 또는 사용자 입력에 따라 케이스를 다른 경로로 라우팅할 수 있습니다.
다음과 같은 흐름 옵션을 사용할 수 있습니다.
- 조건: 자리표시자, 기존 케이스 데이터, 이전 작업 흐름을 기반으로 하는 복잡한 조건입니다.
- 객관식 질문: 분석가가 수동으로 답변해야 하는 질문입니다.
조건 흐름 추가
이 섹션에서는 조건 흐름을 사용하여 플레이북 내에서 동적 분기 로직을 만드는 방법을 설명합니다.
단일 조건 흐름 추가
단일 조건 흐름을 추가하려면 다음 단계를 따르세요.
- 응답 > 플레이북 페이지에서 단계 선택 열기를 클릭합니다.
- 단계 선택에서 흐름 섹션을 선택합니다.
- 플레이북을 빌드하는 방식에 따라 조건을 단계로 드래그하거나 두 작업 사이로 드래그합니다.
- 조건을 더블클릭하여 대화상자를 엽니다.
- 필요한 항목을 선택합니다. 자리표시자를 사용하는 경우 이 자리표시자는 이 엔티티 그룹으로 범위가 지정됩니다.
- 만들려는 브랜치 수를 결정합니다. 각 분기 사이에는 OR이 있습니다.
- 다음과 같이 각 브랜치의 매개변수를 선택하고 추가합니다.
- 기존 자리표시자 목록에서 평가할 자리표시자를 선택합니다. 신규 사용자의 경우 아직 알림을 수집하지 않았다면 비어 있습니다.
- 필요한 연산자를 선택합니다(예: 같음, 포함하지 않음).
- 값을 선택합니다.
- 실패한 조건을 방지하기 위해 '대체 브랜치'를 정의합니다. 조건이 이전 작업을 기반으로 하고 이러한 작업 중 하나가 실패 (및 건너뜀)한 경우 조건은 중지되지 않고 대체 브랜치로 계속됩니다. 대체 브랜치를 선택하려면 대체 브랜치 정의를 참고하세요.
- 저장을 클릭합니다. 이제 플레이북은 1, 2, E (Else)의 세 가지 분기로 나뉩니다.
- 하나 이상의 분기의 결과를 설정하여 플레이북을 완료로 표시합니다.
객관식 질문 흐름 추가
- 객관식 질문 조건을 최종 단계 상자로 드래그합니다.
- 객관식 질문을 클릭하여 대화상자를 엽니다.
- 필요한 만큼 답변이 있는 질문을 추가합니다.
- 저장을 클릭합니다. 플레이북에는 4개의 브랜치가 열립니다.
- 하나 이상의 분기의 결과를 설정하여 완료로 표시합니다.
조건 흐름 추가
조건 흐름을 추가하려면 다음 단계를 따르세요.
- 조건을 최종 단계 상자로 드래그합니다.
- 조건을 클릭하여 대화상자를 엽니다.
- 만들 브랜치 수를 결정합니다. 각 분기 사이에는 OR이 있습니다.
- 매개변수 추가: 필요한 매개변수를 선택합니다. 목록에는 이 플레이북의 작업 스크립트 결과만 표시됩니다.
- 필요한 연산자(같음/같지 않음, 포함/포함하지 않음, 다음으로 시작, 다음보다 큼/다음보다 작음)을 선택합니다.
- 값 (작업 결과)을 선택합니다.
- 각 분기에 매개변수를 추가하고 논리 연산자(AND 또는 OR)를 선택할 수 있습니다.
- 저장을 클릭합니다. 플레이북에서 1, 2, Else의 세 가지 브랜치가 열립니다.
- 플레이북을 완료하려면 하나 이상의 분기의 결과를 설정하세요.
대체 브랜치 정의
- 흐름 중 하나 (조건)에서 대체 브랜치로 사용할 브랜치를 선택합니다. 이 예에서는 Branch – not risky를 사용합니다. 대체 브랜치를 추가하지 않아도 됩니다.
- 플레이북이 실행되고 이전 작업이 실패하면 플레이북은 대체 브랜치를 선택하고 계속됩니다.
단계 실패 관리
실행 중에 플레이북 단계가 실패할 수 있습니다. 기본적으로 플레이북은 단계가 실패하면 중지되도록 설계되어 있습니다. 이는 불완전하거나 잘못된 데이터로 계속 진행되지 않도록 하는 중요한 안전 메커니즘입니다. 하지만 단계에서 예상한 결과가 반환되지 않더라도 플레이북을 계속 진행해야 하는 경우도 있습니다. 이는 특히 찾고 있는 데이터가 모든 케이스에 없을 수 있는 보강 작업에 해당합니다. 플레이북을 중지할지 아니면 다음 단계로 건너뛸지 결정할 수 있습니다. 실패한 단계가 의사결정에 중요한 경우 다음 단계에서 이전 단계가 실패했는지 확인하고 그에 따라 진행 방법을 결정할 수 있습니다 (예: 단계가 실패하면 대체 브랜치로 이동).
실패 시 건너뛰기
작업이 실패할 경우 단계를 건너뛰도록 구성할 수 있습니다. 이 설정을 사용 설정하면 작업 실행이 실패하거나 오류가 반환되더라도 플레이북이 다음 단계로 계속 진행됩니다.
이 설정을 사용 설정하려면 다음 단계를 따르세요.
- 작업 블록을 더블클릭하여 설정 창을 엽니다.
- 설정 탭에서 단계 실패 시 섹션으로 이동합니다.
- 단계 건너뛰기를 선택합니다.
고급 오류 처리를 위해 조건 사용
'실패 시 건너뛰기' 옵션은 기본적인 경우에 적합하지만, 더 강력한 방법은 조건 흐름을 사용하여 전용 오류 처리 경로를 만드는 것입니다. 이를 통해 단계가 실패할 때 분석가에게 알리거나 오류를 로깅하는 등 플레이북에서 다른 작업 집합을 실행할 수 있습니다.
오류 처리 경로를 만들려면 다음 단계를 따르세요.
- 실패할 수 있고 특정 실패 경로를 정의하려는 작업 후에 조건 흐름 블록을 추가합니다.
- 조건 블록을 더블클릭하여 대화상자를 엽니다.
- 설정 탭으로 이동하여 이전 작업이 실패한 경우 섹션에서 흐름을 안내할 분기를 선택합니다. 중요: 이전 작업이 실패한 경우 조건은 단순히 이전 실패를 확인하는 것이 아니라 현재 조건의 평가에 결과가 사용되는 이전 작업이 실패했는지 확인합니다. 종속 작업이 실패하면 조건을 결정할 수 없으며 흐름이 선택한 분기로 이동합니다. 이렇게 하면 종속 항목이 실패하여 조건이 해결되지 않는 경우를 처리할 수 있습니다.
- 이 실패 분기에서는 알림 이메일 전송, 작업 생성, 실패 로깅과 같은 작업을 추가할 수 있습니다.
예를 들어 사용자의 소유자를 확인하려고 시도하는 플레이북을 생각해 보세요. 사용자 소유자 확인 작업이 실패하면 (예: Active Directory에 사용자가 없음) 플레이북이 중지되지 않습니다. 대신 조건 블록이 실패를 감지하고 흐름을 별도의 브랜치로 안내하여 누락된 데이터에 관해 보안팀에 이메일을 보낼 수 있으므로 플레이북이 중단 없이 계속 실행됩니다. <
흐름 삭제
플레이북 내에서 흐름을 삭제하면 전체 브랜치를 삭제할지 아니면 브랜치의 한 측면만 삭제할지 묻는 메시지가 표시됩니다.
브랜치 병합
플레이북의 여러 브랜치를 하나의 브랜치로 병합할 수 있습니다. 이렇게 하려면 한 분기에서 작업을 드래그하여 다른 분기의 최종 단계 상자에 드롭합니다. 플레이북은 이 단계 이후에 계속되거나 여기서 종료될 수 있습니다.
조건에서 논리 연산자가 작동하는 방식
이 섹션에서는 플레이북의 조건부 연산자가 단일 또는 여러 항목 (예: 알림의 엔티티 또는 이벤트)이 있는 필드를 평가하는 방법을 설명합니다. 필드가 문자열인지 목록인지 이해하는 것은 플레이북 로직에 매우 중요합니다.
조건 평가에서 데이터 유형의 역할
연산자 동작 (Equals, Contains)은 데이터 유형에 따라 다릅니다.
- 단일 항목 컨텍스트: 항목이 하나인 알림의
[Entity.Identifier]과 같은 필드는 단일 문자열로 처리됩니다. - 여러 항목 컨텍스트: 여러 항목이 있는 알림의 동일한 필드는 문자열 목록입니다.
equals 및 contains의 연산자 동작
다음 섹션에서는 이러한 연산자의 작동 방식을 설명합니다.
Equals 연산자
Equals 연산자는 두 값을 직접 비교합니다.
- 단일 항목 필드 (문자열)는 일치검색을 확인합니다.
[Entity.Identifier]이"Tom"이라고 가정합니다.- 그러면 조건
if [Entity.Identifier] equals "Tom"이 True가 됩니다.
- 다중 항목 필드 (목록)는 전체 목록이 지정된 문자열과 동일한지 확인합니다. 목록은 단일 문자열과 절대 같지 않습니다.
[Entity.Identifier]이 목록(Tom, Kai)이라고 가정합니다.- 그러면 조건
if [Entity.Identifier] equals "Tom, Kai"은 항상 False입니다.[Entity.Identifier]은 목록이고 'Tom, Kai'는 문자열이기 때문입니다.
Contains 연산자
Contains 연산자도 데이터 유형에 따라 변경됩니다.
- 단일 항목 필드 (문자열)는 하위 문자열 검색을 실행합니다. 문자열에 값이 포함되어 있으면
True를 반환합니다.[Entity.Identifier]이"user-1234"이라고 가정합니다.- 그러면 조건
if [Entity.Identifier] contains "user"이 True가 됩니다.
- 다중 항목 필드 (목록)는 목록에 있는 항목의 정확한 일치를 확인합니다. 하위 문자열 검색이 수행되지 않습니다.
[Entity.Identifier]이 목록("UserA@corp.com", "UserB@corp.com")이라고 가정합니다.- 그러면 조건
if [Entity.Identifier] contains "corp"이 False가 됩니다.
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.