최상위 그룹을 위한 감사 이벤트 스트리밍
- Subgroup events recording은 GitLab 15.2에서 수정되었습니다.
- GitLab 15.2에서 사용된 사용자 지정 HTTP 헤더 UI에 이름이
custom_headers_streaming_audit_events_ui
인 플래그가 추가되었습니다. 기본적으로 비활성화됩니다.- GitLab 15.3에서 사용된 사용자 지정 HTTP 헤더 UI가 일반적으로 사용 가능해졌습니다. 플래그
custom_headers_streaming_audit_events_ui
가 제거되었습니다.- GitLab 15.3에서 사용자 경험을 개선했습니다.
- GitLab 16.3에서 Name 필드를 가진 HTTP 대상이 추가되었습니다.
- GitLab 16.5에서 Active 확인란을 사용하는 기능이 추가되었습니다.
최상위 그룹에 대한 감사 이벤트 스트리밍을 통해 그룹 소유자는 다음을 할 수 있습니다:
- 구조화된 JSON으로 그룹, 하위 그룹 및 프로젝트에 대한 모든 감사 이벤트를 수신하는 최상위 그룹에 대한 스트리밍 대상 설정.
- 타사 시스템에서 감사 로그를 관리합니다. 구조화된 JSON 데이터를 수신할 수 있는 어떤 서비스든 사용할 수 있습니다.
각 스트리밍 대상에는 스트리밍된 각 이벤트에 포함된 최대 20개의 사용자 지정 HTTP 헤더가 포함될 수 있습니다.
GitLab은 동일한 대상으로 단일 이벤트를 여러 번 스트리밍할 수 있습니다. 들어오는 데이터를 중복 처리하려면 페이로드의 id
키를 사용하세요.
감사 이벤트는 HTTP가 지원하는 POST 요청 방법 프로토콜을 사용하여 전송됩니다.
경고: 스트리밍 대상은 모든 감사 이벤트 데이터(모든)를 수신합니다. 민감한 정보가 포함될 수 있으므로 스트리밍 대상을 신뢰할 수 있는지 확인하세요.
HTTP 대상
전제 조건:
- 대상 URL에 SSL 인증서를 사용하는 것이 안전합니다.
최상위 그룹을 위한 HTTP 스트리밍 대상을 관리합니다.
새 HTTP 대상 추가
최상위 그룹에 새 HTTP 스트리밍 대상을 추가합니다.
전제 조건:
- 최상위 그룹의 소유자 역할.
최상위 그룹에 스트리밍 대상을 추가하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트리밍 대상 추가를 선택하고 HTTP 엔드포인트를 선택하여 대상을 추가하는 섹션을 표시합니다.
- 이름 및 대상 URL 필드에 대상 이름과 URL을 추가합니다.
- 선택 사항. 사용자 정의 HTTP 헤더 테이블을 찾습니다.
- 헤더를 활성화하려면 Active 확인란을 선택합니다. 헤더가 감사 이벤트와 함께 전송됩니다.
- 새 이름 및 값 쌍을 만들려면 헤더 추가를 선택합니다. 필요한만큼 이름과 값 쌍을 추가할 수 있습니다. 하나의 스트리밍 대상당 최대 20개의 헤더를 추가할 수 있습니다.
- 모든 헤더를 입력한 후, 새 스트리밍 대상을 추가하려면 추가를 선택합니다.
HTTP 대상 목록
전제 조건:
- 그룹의 소유자 역할.
최상위 그룹의 스트리밍 대상 목록을 보려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트림을 확장하여 모든 사용자 지정 HTTP 헤더를 확인합니다.
HTTP 대상 업데이트
전제 조건:
- 그룹의 소유자 역할.
스트리밍 대상의 이름을 업데이트하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 확장된 스트림을 선택합니다.
- 이름 필드에 업데이트할 대상 이름을 추가합니다.
- 스트리밍 대상을 업데이트하려면 저장을 선택합니다.
스트리밍 대상의 사용자 정의 HTTP 헤더를 업데이트하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 확장된 스트림을 선택합니다.
- 사용자 정의 HTTP 헤더 테이블을 찾습니다.
- 업데이트하려는 헤더를 찾습니다.
- 헤더를 활성화하려면 Active 확인란을 선택합니다. 헤더가 감사 이벤트와 함께 전송됩니다.
- 새 이름 및 값 쌍을 만들려면 헤더 추가를 선택합니다. 필요한만큼 이름과 값 쌍을 추가할 수 있습니다. 하나의 스트리밍 대상당 최대 20개의 헤더를 추가할 수 있습니다.
- 스트리밍 대상을 업데이트하려면 저장을 선택합니다.
HTTP 대상 삭제
최상위 그룹의 스트리밍 대상을 삭제합니다. 마지막 대상이 성공적으로 삭제되면 최상위 그룹의 스트리밍이 비활성화됩니다.
전제 조건:
- 그룹의 소유자 역할.
스트리밍 대상을 삭제하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트림을 확장합니다.
- 대상 삭제를 선택합니다.
- 대화 상자에서 대상 삭제를 선택하여 확인합니다.
스트리밍 대상의 사용자 정의 HTTP 헤더만 삭제하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트림을 확장합니다.
- 사용자 정의 HTTP 헤더 테이블을 찾습니다.
- 삭제하려는 헤더를 찾습니다.
- 헤더 오른쪽에 삭제()를 선택합니다.
- 스트리밍 대상을 업데이트하려면 저장을 선택합니다.
이벤트 신뢰성 검증
GitLab 15.2에서 도입.
각 스트리밍 대상에는 각 이벤트의 신뢰성을 검증할 수 있는 고유한 검증 토큰(verificationToken
)이 있습니다. 이 토큰은 소유자에 의해 지정되거나 이벤트 대상이 생성될 때 자동으로 생성되어 변경할 수 없습니다.
각 스트리밍된 이벤트는 X-Gitlab-Event-Streaming-Token
HTTP 헤더에 검증 토큰을 포함하고 있으며, 스트리밍 대상을 나열하여 신뢰성을 확인할 수 있습니다.
전제 조건:
- 그룹의 소유자 역할.
스트리밍 대상을 나열하고 검증 토큰을 확인하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트림을 확장합니다.
- 검증 토큰 입력란을 찾습니다.
이벤트 필터 업데이트
- UI에서 이벤트 유형 필터링은 16.1 GitLab에 도입되었습니다.
이 기능을 그룹에 대해 활성화하면 사용자가 스트리밍된 감사 이벤트를 대상별로 필터링할 수 있습니다. 기능이 필터 없이 활성화되면 대상은 모든 감사 이벤트를 수신합니다.
이벤트 유형 필터가 설정된 스트리밍 대상에는 레이블이 있습니다.
스티리밍 대상의 이벤트 필터를 업데이트하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- 확장할 스트림을 선택합니다.
- 감사 이벤트 유형으로 필터링 드롭다운 목록을 찾습니다.
- 드롭다운 목록을 선택하고 필요한 이벤트 유형을 선택하거나 지웁니다.
- 이벤트 필터를 업데이트하려면 저장을 선택합니다.
네임스페이스 필터 업데이트
- UI에서 네임스페이스 필터링은 16.7 GitLab에 도입되었습니다.
그룹에 대해 이 기능이 활성화되면 사용자가 스트리밍된 감사 이벤트를 대상별로 필터링할 수 있습니다. 기능이 필터 없이 활성화되면 대상은 모든 감사 이벤트를 수신합니다.
네임스페이스 필터가 설정된 스트리밍 대상에는 레이블이 있습니다.
스티리밍 대상의 네임스페이스 필터를 업데이트하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- 확장할 스트림을 선택합니다.
- 그룹 또는 프로젝트별로 필터링 드롭다운 목록을 찾습니다.
- 드롭다운 목록을 선택하고 필요한 네임스페이스를 선택하거나 지웁니다.
- 네임스페이스 필터를 업데이트하려면 저장을 선택합니다.
기본 콘텐츠 유형 헤더 재정의
기본적으로 스트리밍 대상은 content-type
헤더를 application/x-www-form-urlencoded
로 사용합니다. 그러나 content-type
헤더를 다른 값으로 설정하고 싶을 수 있습니다. 예를 들어, application/json
.
최상위 그룹 스트리밍 대상의 content-type
헤더 기본값을 재정의하려면 다음 중 하나를 사용합니다:
Google Cloud Logging 대상
- GitLab 16.2에 도입되었습니다.
최상위 그룹의 Google Cloud Logging 대상을 관리합니다.
사전 요구 사항
Google Cloud Logging 스트리밍 감사 이벤트를 설정하기 전에 다음을 수행해야 합니다:
- Google Cloud 프로젝트에서 Cloud Logging API를 활성화합니다.
- Google Cloud에 적절한 자격 증명 및 권한이 있는 Google Cloud 서비스 계정을 생성합니다. 이 계정은 감사 로그 스트리밍 인증을 구성하는 데 사용됩니다. 자세한 내용은 Google Cloud 문서를 참조하십시오.
- 서비스 계정에 Logs Writer 역할을 부여하여 Google Cloud에서 로깅을 활성화합니다. 자세한 내용은 IAM을 사용한 액세스 제어를 참조하십시오.
- 서비스 계정을 위한 JSON 키를 만듭니다. 자세한 내용은 서비스 계정 키 만들기를 참조하십시오.
새로운 Google Cloud Logging 대상 추가
사전 요구 사항:
- 최상위 그룹의 소유자 권한.
최상위 그룹에 Google Cloud Logging 스트리밍 대상을 추가하려면 다음을 수행합니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- 스트리밍 대상 추가를 선택하고 새 대상 추가를 보여주기 위해 Google Cloud Logging을 선택합니다.
- 새 대상의 이름으로 사용할 임의의 문자열을 입력합니다.
- 이전에 만든 Google Cloud 서비스 계정 키의 Google 프로젝트 ID, Google 클라이언트 이메일 및 Google 개인 키를 입력하여 새 대상에 추가합니다.
- 새 대상의 로그 ID로 사용할 임의의 문자열을 입력합니다. 나중에 Google Cloud에서 로그 결과를 필터링하는 데 사용할 수 있습니다.
- 새로운 스트리밍 대상을 추가하려면 추가를 선택합니다.
Google Cloud Logging 대상 목록
사전 요구 사항:
- 최상위 그룹의 소유자 권한.
최상위 그룹에 대한 Google Cloud Logging 스트리밍 대상을 목록하려면 다음을 수행합니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- Google Cloud Logging 스트림을 확장하고 모든 필드를 볼 수 있습니다.
Google Cloud Logging 대상 업데이트
- 프라이빗 키를 추가하는 버튼은 GitLab 16.3에 도입되었습니다.
사전 요구 사항:
- 최상위 그룹의 소유자 권한.
Google Cloud Logging 스트리밍 대상을 최상위 그룹에 업데이트하려면 다음을 수행합니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- Google Cloud Logging 스트림을 확장합니다.
- 대상에 사용할 임의의 문자열을 입력합니다.
- 이전에 만든 Google Cloud 서비스 계정 키의 Google 프로젝트 ID 및 Google 클라이언트 이메일을 입력하여 대상을 업데이트합니다.
- 대상에 로그 결과를 필터링하는 데 사용할 임의의 문자열을 업데이트합니다.
- 새 프라이빗 키 추가를 선택하고 프라이빗 키를 입력하여 프라이빗 키를 업데이트합니다.
- 스트리밍 대상을 업데이트하려면 저장을 선택합니다.
Google Cloud Logging 스트리밍 대상 삭제
사전 요구 사항:
- 최상위 그룹의 소유자 권한.
최상위 그룹의 Google Cloud Logging 스트리밍 대상을 삭제하려면 다음을 수행합니다:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- Secure > Audit events를 선택합니다.
- 본 영역에서 Streams 탭을 선택합니다.
- Google Cloud Logging 스트림을 확장합니다.
- 대상 삭제를 선택합니다.
- 대화 상자에서 대상 삭제를 선택하여 확인합니다.
AWS S3 대상지
- GitLab 16.6에 도입되었습니다.
allow_streaming_audit_events_to_amazon_s3
라는 플래그와 함께 기본으로 활성화됩니다.- GitLab 16.7에서는
allow_streaming_audit_events_to_amazon_s3
피처 플래그가 제거되었습니다.
상위 그룹의 AWS S3 대상지를 관리합니다.
사전 준비 작업
AWS S3 스트리밍 감사 이벤트를 설정하기 전에 다음을 수행해야 합니다:
- 적절한 자격 증명과 권한이 있는 AWS 액세스 키를 만듭니다. 이 계정은 감사 로그 스트리밍 인증을 구성하는 데 사용됩니다. 자세한 정보는 액세스 키 관리를 참조하십시오.
- AWS S3 버킷을 만듭니다. 이 버킷은 감사 로그 스트리밍 데이터를 저장하는 데 사용됩니다. 자세한 정보는 버킷 만들기를 참조하십시오.
새로운 AWS S3 대상지 추가
사전 준비 작업:
- 상위 그룹의 소유자 역할.
상위 그룹에 AWS S3 스트리밍 대상지를 추가하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- 스트리밍 대상 추가를 선택하고 새 대상지 추가 섹션을 보려면 AWS S3를 선택합니다.
- 새 대상지의 이름으로 사용할 임의의 문자열을 입력합니다.
- 이전에 만든 AWS 액세스 키 및 버킷에서 액세스 키 ID, 비밀 액세스 키, 버킷 이름 및 AWS 지역을 입력하여 새 대상지에 추가합니다.
- 새 스트리밍 대상을 추가하려면 추가를 선택합니다.
AWS S3 대상지 목록
사전 준비 작업:
- 상위 그룹의 소유자 역할.
상위 그룹의 AWS S3 스트리밍 대상지를 나열하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- AWS S3 스트리밍을 확장하고 모든 필드를 볼 수 있습니다.
AWS S3 대상지 업데이트
사전 준비 작업:
- 상위 그룹의 소유자 역할.
상위 그룹에 AWS S3 스트리밍 대상지를 업데이트하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- AWS S3 스트림을 확장합니다.
- 대상지의 이름으로 사용할 임의의 문자열을 입력합니다.
- 이전에 만든 AWS 액세스 키 및 버킷에서 액세스 키 ID, 비밀 액세스 키, 버킷 이름 및 AWS 지역을 입력하여 대상지를 업데이트합니다.
- 새 비밀 액세스 키를 추가하려면 새 비밀 액세스 키 추가를 선택하고 AWS 비밀 액세스 키를 입력합니다.
- 스트리밍 대상지를 업데이트하려면 저장을 선택합니다.
AWS S3 스트리밍 대상지 삭제
사전 준비 작업:
- 상위 그룹의 소유자 역할.
상위 그룹에 AWS S3 스트리밍 대상지를 삭제하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 본 영역에서 스트림 탭을 선택합니다.
- AWS S3 스트림을 확장합니다.
- 대상지 삭제를 선택합니다.
- 대화상자에서 대상지 삭제를 선택하여 확인합니다.