AWS CloudTrail Lake

circle-info

기능 가용성\nAWS CloudTrail Lake 통합은 Snyk 엔터프라이즈(Enterprise) 플랜에서만 사용할 수 있습니다. 자세한 내용은 플랜 및 가격arrow-up-right을 참조하십시오.

AWS CloudTrail Lake 통합을 사용하면 Snyk 감사 로그를 AWS CloudTrail Lake로 전달할 수 있으며, 이를 통해 로그에 대해 SQL 기반 쿼리를 실행하고 최대 7년 동안 보관할 수 있습니다.

이 통합은 단일 Snyk 조직에 대한 감사 로그를 전달하거나, Snyk 그룹과 그 하위의 모든 조직에 대해 전달하도록 구성할 수 있습니다. 어느 경우든 통합을 설정하기 위해 다음 두 단계가 필요합니다.

  1. AWS CloudTrail Lake에서 Snyk 통합을 추가합니다.

  2. Snyk에서 통합을 구성합니다.

circle-info

이 통합은 활성화된 시점부터 로그를 전송합니다. 통합 활성화 전에 생성된 로그는 전송되지 않지만, 조직 감사 로그 검색 API 엔드포인트를 통해 확인할 수 있습니다.

그룹 레벨 대 조직 레벨 감사 로그

감사 로그는 Snyk 사용자가 설정 변경, 다른 사용자 추가, 보호된 API 액세스 등 Snyk 플랫폼에서 작업을 수행할 때 캡처됩니다. 이 통합을 설정할 때, 고객의 Snyk 계정 설정 방식에 따라 감사 로그가 어떻게 캡처되는지 이해하는 것이 중요합니다.

  • 단일 Snyk 조직(또는 여러 개의 연결되지 않은 조직)을 사용하는 고객의 경우, 모든 감사 로그는 해당 단일 조직의 범위 내에서 캡처됩니다.

  • 하위 조직이 있는 Snyk 그룹을 보유한 고객의 경우, 그룹에 새 조직을 추가하거나 그룹에 사용자를 추가하는 등의 작업은 그룹 레벨에서 감사되며 일반적으로 특정 조직과 연관되지 않습니다.

이 통합은 두 가지 사용 사례를 모두 지원합니다.

  1. CloudTrail Lake와 단일 Snyk 조직 통합

    1. 해당 조직과 직접 연관된 모든 감사 로그가 CloudTrail Lake로 전송됩니다.

    2. 조직에 상위 그룹이 있는 경우, 해당 그룹에서 수행된 작업은 CloudTrail Lake로 전송되지 않습니다.

    3. 조직의 멤버가 다른 조직이나 그룹의 멤버이기도 한 경우, 해당 멤버가 수행한 작업은 조직과 직접 연관된 경우에만 CloudTrail Lake로 전송됩니다.

  2. CloudTrail Lake와 Snyk 그룹 및 모든 하위 조직 통합

    1. 그룹 또는 하위 조직과 연관된 모든 감사 로그가 CloudTrail Lake로 전송됩니다.

    2. 그룹에 새 조직이 추가되면, 해당 조직의 감사 로그가 자동으로 CloudTrail Lake로 전송됩니다.

AWS CloudTrail Lake에서 Snyk 통합 추가

그룹이나 단일 조직에 대해 CloudTrail Lake 통합 설정을 시작하려면, AWS CloudTrail Lake 문서의 설정 지침arrow-up-right을 따르고 통합 유형으로 Snyk을 선택하십시오.

Snyk 선택, Snyk 통합 추가
Snyk 선택, Snyk 통합 추가

설정 중에 통합을 위한 External ID를 제공해야 합니다. 이 ID 값은 단일 Snyk 조직에 대해 통합을 설정하는지, 아니면 모든 하위 조직을 포함하는 Snyk 그룹에 대해 설정하는지에 따라 달라집니다.

단일 Snyk 조직을 위한 External ID

단일 Snyk 조직에 대해 이 통합을 생성하는 경우, Snyk Organization IDExternal ID로 사용하게 됩니다. 조직 ID는 Snyk Organization Settings에서 찾을 수 있습니다.

Snyk 조직 설정 페이지의 Organization ID
Snyk 조직 설정 페이지의 Organization ID

Organization ID 필드의 값을 AWS CloudTrail Lake 통합 설정의 External ID 필드에 복사하고 AWS CloudTrail Lake 문서의 지침을 계속 따르십시오.

Snyk 그룹을 위한 External ID

모든 하위 조직을 자동으로 포함하는 Snyk 그룹에 대해 이 통합을 설정하는 경우, Snyk Group IDExternal ID로 사용하게 됩니다. 그룹 ID는 Snyk 대시보드에서 Snyk 그룹 이름을 클릭한 다음 Settings 페이지로 이동하여 찾을 수 있습니다.

그룹 설정 페이지
그룹 설정 페이지

Group ID 필드의 값을 AWS CloudTrail Lake 통합 설정의 External ID 필드에 복사하고 AWS CloudTrail Lake 문서의 지침을 계속 따르십시오.

CloudTrail Lake 채널 ARN (Channel ARN)

AWS CloudTrail Lake에서 Snyk 통합 생성을 완료하면, 통합 페이지에 표시된 Channel ARN을 복사하십시오. 다음 단계에서 필요합니다.

Snyk에서 통합 구성 (단일 조직)

AWS CloudTrail Lake에서 통합을 생성한 후 Snyk 대시보드에서 설정을 완료할 수 있습니다.

이를 위해 Snyk 통합 페이지로 이동하여 Cloud events를 찾은 다음 AWS CloudTrail Lake 타일을 클릭하십시오.

Snyk 통합 페이지의 CloudTrail Lake 타일
Snyk 통합 페이지의 CloudTrail Lake 타일

이 통합의 이름(name), 귀하의 AWS Account ID, 그리고 이전 단계에서 받은 Channel ARN을 입력하십시오.

통합 이름, AWS Account ID, Channel ARN
통합 이름, AWS Account ID, Channel ARN

이 단계가 완료되면 Snyk은 즉시 AWS CloudTrail Lake로 감사 로그 전달을 시작합니다. View settings를 클릭하거나 AWS CloudTrail Lake 설정arrow-up-right 페이지로 이동하여 통합을 확인하고 관리할 수 있습니다.

Snyk 앱 승인

조직에 대해 처음으로 AWS CloudTrail Lake 통합을 설정하는 경우, Snyk 앱 승인 흐름을 완료하라는 메시지가 표시됩니다.

Snyk 앱 승인
Snyk 앱 승인

승인 흐름을 완료하면 통합 설정 페이지로 리디렉션됩니다.

Snyk에서 통합 구성 (Snyk 그룹 및 하위 조직)

circle-info

그룹에 대해 이 통합을 구성하고 관리하는 것은 Snyk REST API를 통해서만 지원됩니다.

Snyk 그룹에 대해 통합 설정을 완료하려면, 그룹 등록 생성(Create a group registration)arrow-up-right API 엔드포인트를 사용해야 합니다.

다음 샘플 요청을 시작 지점으로 사용할 수 있습니다.

예시에서 표시된 각 자리 표시자 값을 적절하게 바꾸십시오.

  • <YOUR GROUP ID> - 이전 단계에서 External ID로 사용한 Snyk Group ID

  • <YOUR SNYK API TOKEN> - Snyk 대시보드의 Account settings에서 찾을 수 있는 개인 Snyk API 토큰

  • <NAME YOUR INTEGRATION> - 이 통합의 이름

  • <YOUR AWS ACCOUNT ID> - 이전 단계에서 사용한 AWS 계정 ID

  • <CHANNEL ARN FROM PREVIOUS STEP> - CloudTrail Lake 콘솔에서 Snyk 통합을 추가할 때 생성된 Channel ARN

호출이 성공하면 API 응답에 등록 id가 포함됩니다. 나중에 통합을 관리하고 삭제하는 데 이 ID를 사용할 수 있습니다.

AWS CloudTrail Lake 통합 제거 (단일 조직)

AWS CloudTrail Lake 설정arrow-up-right 페이지로 이동하여 제거하려는 통합의 이름을 선택하십시오.

제거할 AWS CloudTrail Lake 통합 선택
제거할 AWS CloudTrail Lake 통합 선택

Remove integration을 선택하고 통합 제거를 확인하십시오.

통합 제거 버튼
통합 제거 버튼

이 작업은 해당 통합에 대한 Snyk의 구성을 제거하며, 더 이상 AWS CloudTrail Lake로 감사 로그가 전송되지 않도록 합니다. 이것은 AWS CloudTrail Lake 내의 Snyk 통합을 제거하지는 않습니다. 이를 제거하려면 AWS CloudTrail Lake로 이동하여 Integration 목록에서 Snyk 통합을 삭제하십시오.

AWS CloudTrail Lake 통합 제거 (Snyk 그룹 및 하위 조직)

그룹에 대해 이 통합을 구성하고 관리하는 것은 Snyk API를 통해서만 지원됩니다. 그룹 등록 삭제(Delete a group registration)arrow-up-right 엔드포인트를 사용하여 통합을 제거할 수 있습니다. API 사용 방법에 대한 팁은 그룹 레벨 통합 구성 섹션을 참조하십시오.

circle-info

그룹 레벨 통합을 삭제하려면 통합 ID를 가져와야 합니다. 이는 그룹 레벨 통합을 생성할 때 API에서 반환하는 것과 동일한 ID입니다. 또한 모든 그룹 등록 나열(List all group registrations)arrow-up-right 엔드포인트를 사용하여 현재 구성된 모든 그룹 통합을 가져올 수 있습니다.

AWS CloudTrail Lake에서 Snyk 감사 로그 쿼리

Snyk 감사 로그가 AWS CloudTrail Lake로 전달되면, AWS CloudTrail Lake Query 기능을 사용하여 로그에 액세스할 수 있습니다. 다음 예제 쿼리를 시작으로 사용할 수 있습니다.

<EVENT-DATA-STORE-ID>를 AWS CloudTrail Lake에서 Snyk 통합과 연관된 이벤트 데이터 저장소의 ID로 바꾸십시오.

로그 데이터 이해

AWS CloudTrail Lake에서 Snyk 감사 로그 데이터를 사용할 때 주의해야 할 세 가지 핵심 필드가 있습니다.

eventdata.useridentity

이벤트 useridentity에는 감사 이벤트와 연관된 사용자의 Snyk 사용자 ID를 나타내는 principalid 필드가 포함되어 있습니다. Snyk API v1 엔드포인트인 조직 레벨 감사 로그 가져오기를 사용하여 Snyk 사용자 ID를 조직의 사용자와 매칭할 수 있습니다.

eventdata.eventname

이는 감사 이벤트의 유형(예: api.access 또는 org.cloud_config.settings.edit)을 나타내며, 이벤트를 그룹화하거나 필터링하는 데 사용될 수 있습니다.

eventdata.additionaleventdata

이 필드에는 감사 이벤트에 대한 더 자세한 정보가 포함된 원본 JSON 페이로드가 들어 있습니다. 페이로드의 내용은 이벤트 유형에 따라 다릅니다. 예를 들어, API 액세스 이벤트에는 액세스된 URL이 포함되며, 설정 변경 이벤트에는 변경된 설정의 이전 값과 이후 값이 포함됩니다.

Last updated