

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS Site-to-Site VPN 로그
<a name="monitoring-logs"></a>

AWS Site-to-Site VPN 로그는 Site-to-Site VPN 배포에 대한 심층적인 가시성을 제공합니다. 이 기능을 사용하면 IP 보안(IPsec) 터널 설정, 인터넷 키 교환(IKE) 협상, 데드 피어 감지(DPD) 프로토콜 메시지, Border Gateway 프로토콜(BGP) 상태 및 라우팅 업데이트에 대한 세부 정보를 제공하는 Site-to-Site VPN 연결 로그에 액세스할 수 있습니다.

Site-to-Site VPN 로그는 Amazon CloudWatch Logs에 게시할 수 있습니다. 이 기능은 고객이 모든 Site-to-Site VPN 연결에 대한 세부 로그를 액세스하고 분석할 수 있는 일관된 단일 방법을 제공합니다.

**Topics**
+ [Site-to-Site VPN 로그의 이점](#log-benefits)
+ [Amazon CloudWatch Logs 리소스 정책 크기 제한](#cwl-policy-size)
+ [Site-to-Site VPN 로그의 내용](#log-contents)
+ [터널 BGP 로그의 로그 형식 예](#example-bgp-logs)
+ [CloudWatch Logs에 게시하기 위한 IAM 요구 사항](#publish-cw-logs)
+ [Site-to-Site VPN 로그 구성 보기](status-logs.md)
+ [Site-to-Site VPN 로그 사용 설정](enable-logs.md)
+ [Site-to-Site VPN 로그 사용 중지](disable-logs.md)

## Site-to-Site VPN 로그의 이점
<a name="log-benefits"></a>
+ **간소화된 VPN 문제 해결:** Site-to-Site VPN 로그를 사용하면 AWS 와 고객 게이트웨이 디바이스 간의 구성 불일치를 정확히 파악하고 초기 VPN 연결 문제를 해결할 수 있습니다. 잘못 구성된 설정(예: 제한 시간이 잘못 조정됨)으로 인해 VPN 연결이 시간이 지남에 따라 간헐적으로 플랩되거나, 기본 전송 네트워크(예: 인터넷 날씨)에 문제가 있거나, 라우팅 변경 또는 경로 오류로 인해 VPN을 통한 연결이 중단될 수 있습니다. 이 기능을 사용하면 간헐적인 연결 실패의 원인을 정확하게 진단하고 안정적인 작동을 위해 저수준 터널 구성을 미세 조정할 수 있습니다.
+ **중앙 집중식 AWS Site-to-Site VPN 가시성:** Site-to-Site VPN 로그는 모든 Site-to-Site VPN 연결 유형에서 터널 활동 및 BGP 라우팅 로그를 제공할 수 있습니다. 이 기능은 고객이 모든 Site-to-Site VPN 연결에 대한 세부 로그를 액세스하고 분석할 수 있는 일관된 단일 방법을 제공합니다.
+ **보안 및 규정 준수:** Site-to-Site VPN 로그를 Amazon CloudWatch Logs로 전송하여 시간 경과에 따른 VPN 연결 상태 및 활동을 소급적으로 분석할 수 있습니다. 이렇게 하면 규정 준수 및 규제 요구 사항을 충족할 수 있습니다.

## Amazon CloudWatch Logs 리소스 정책 크기 제한
<a name="cwl-policy-size"></a>

CloudWatch Logs 리소스 정책은 5,120자로 제한됩니다. CloudWatch Logs는 정책이 이 크기 제한에 도달하는 것을 감지하면 `/aws/vendedlogs/`로 시작하는 로그 그룹을 자동으로 활성화합니다. 로깅을 활성화하는 경우 Site-to-Site VPN이 지정된 로그 그룹으로 CloudWatch Logs 리소스 정책을 업데이트해야 합니다. CloudWatch Logs 리소스 정책 크기 제한에 도달하는 것을 방지하려면 로그 그룹 이름에 접두사 `/aws/vendedlogs/`를 추가합니다.

## Site-to-Site VPN 로그의 내용
<a name="log-contents"></a>

Site-to-Site VPN 터널 활동 로그에는 다음 정보가 포함됩니다. 로그 스트림 파일 이름은 VpnConnectionID 및 TunnelOutsideIPAddress를 사용합니다.


| 필드 | 설명 | 
| --- | --- | 
| VpnLogCreationTimestamp(`event_timestamp`) | epoch 시간 형식의 로그 생성 타임스탬프입니다. | 
| VpnLogCreationTimestampReadable(`timestamp`) | 사람이 읽을 수 있는 시간 형식의 로그 생성 타임스탬프입니다. | 
| TunnelDPDEnabled(`dpd_enabled`) | DPD(Dead Peer Detection) 프로토콜 사용 상태(True/False)입니다. | 
| TunnelCGWNATTDetectionStatus(`nat_t_detected`) | 고객 게이트웨이 디바이스에서 NAT-T가 감지되었는지 여부입니다(True/False). | 
| TunnelIKEPhase1State(`ike_phase1_state`) | IKE 1단계 프로토콜 상태(설정됨 \| 키 재지정 \| 협상 \| 중단)입니다. | 
| TunnelIKEPhase2State(ike\_phase2\_state) | IKE 2단계 프로토콜 상태(설정됨 \| 키 재지정 \| 협상 \| 중단)입니다. | 
| VpnLogDetail(details) | IPSec, IKE 및 DPD 프로토콜에 대한 자세한 메시지입니다. | 

Site-to-Site VPN 터널 BGP 로그에는 다음 정보가 포함됩니다. 로그 스트림 파일 이름은 VpnConnectionID 및 TunnelOutsideIPAddress를 사용합니다.


| 필드 | 설명 | 
| --- | --- | 
| resource\_id | 로그가 연결된 터널 및 VPN 연결을 식별하기 위한 고유 ID입니다. | 
| event\_timestamp | epoch 시간 형식의 로그 생성 타임스탬프입니다. | 
| timestamp | 사람이 읽을 수 있는 시간 형식의 로그 생성 타임스탬프입니다. | 
| type | BGP 로그 이벤트 유형(BGPStatus \| RouteStatus). | 
| status | 특정 유형의 로그 이벤트에 대한 상태 업데이트(BGPStatus: UP \| DOWN)(RouteStatus: ADVERTISED {route was advertised by the peer} \| UPDATED: {기존 경로가 피어에 의해 업데이트됨} \| WITHDRAWN: {route was withdraw by peer}) . | 
| message | 로그 짝수 및 상태에 대한 추가 세부 정보를 제공합니다. 이 필드는 BGPStatus가 RouteStatus 메시지에서 교환된 라우팅 속성이 다운된 이유를 이해하는 데 도움이 됩니다. | 

**Topics**
+ [IKEv1 오류 메시지](#sample-log-ikev1)
+ [IKEv2 오류 메시지](#sample-log-ikev2)
+ [IKEv2 협상 메시지](#sample-log-ikev2-negotiation)
+ [BGP 상태 메시지](#sample-bgp-status-messages)
+ [라우팅 상태 메시지](#sample-route-status-messages)

### IKEv1 오류 메시지
<a name="sample-log-ikev1"></a>


| 메시지 | 설명 | 
| --- | --- | 
| Peer is not responsive - Declaring peer dead(피어가 응답하지 않음 - 피어 작동 중지 선언) | 피어가 DPD 메시지에 응답하지 않아 DPD 시간 초과 조치가 적용되었습니다. | 
| AWS 잘못된 사전 공유 키로 인해 터널 페이로드 복호화에 실패했습니다. | 두 IKE 피어 모두에서 동일한 사전 공유 키를 구성해야 합니다. | 
| 에서 제안 일치를 찾을 수 없음 AWS | 1단계에 대해 제안된 속성(암호화, 해싱 및 DH 그룹)이 AWS VPN 엔드포인트에서 지원되지 않습니다(예: `3DES`). | 
| No Proposal Match Found(일치하는 제안 항목을 찾을 수 없음). Notifying with "No proposal chosen"('선택한 제안 항목 없음'으로 알림) | IKE 피어의 2단계에 대해 올바른 제안 항목/정책을 구성해야 함을 알리는 No Proposal Chosen(선택한 제안 항목 없음) 오류 메시지가 피어 간에 교환됩니다. | 
| AWS SPI가 xxxx인 2단계 SA에 대한 터널 수신 DELETE | CGW에서 2단계에 대한 Delete\_SA 메시지를 보냈습니다. | 
| AWS 터널이 CGW에서 IKE\_SA용 DELETE 수신 | CGW에서 1단계에 대한 Delete\_SA 메시지를 보냈습니다. | 

### IKEv2 오류 메시지
<a name="sample-log-ikev2"></a>


| 메시지 | 설명 | 
| --- | --- | 
| AWS {retry\_count} 재전송 후 터널 DPD 시간 초과 | 피어가 DPD 메시지에 응답하지 않아 DPD 시간 초과 조치가 적용되었습니다. | 
| AWS 터널이 CGW에서 IKE\_SA용 DELETE 수신 | 피어에서 Parent/IKE\_SA에 대한 Delete\_SA 메시지를 보냈습니다. | 
| AWS SPI가 xxxx인 2단계 SA에 대한 터널 수신 DELETE | 피어에서 CHILD\_SA에 대한 Delete\_SA 메시지를 보냈습니다. | 
| AWS 터널이 CHILD\_DELETE로 (CHILD\_REKEY) 충돌을 감지했습니다. | CGW에서 키가 다시 입력되는 활성 SA에 대해 Delete\_SA 메시지를 보냈습니다. | 
| AWS 터널(CHILD\_SA) 중복 SA가 감지된 충돌로 인해 삭제되고 있습니다. | 충돌로 인해 중복 SA가 생성되면 피어들은 RFC에 따라 임시 값을 일치시킨 후 중복 SA를 닫습니다. | 
| AWS 1단계를 유지하면서 터널 2단계를 설정할 수 없음 | 피어가 협상 오류(예: 잘못된 제안 항목)로 인해 CHILD\_SA를 설정하지 못했습니다. | 
| AWS: Traffic Selector: TS\_UNACCEPTABLE: received from responder(트래픽 선택기: TS\_UNAPLABLE: 응답자로부터 수신됨) | 피어가 잘못된 트래픽 선택기/암호화 도메인을 제안했습니다. 피어들을 동일하고 올바른 CIDR로 구성해야 합니다. | 
| AWS 터널이 응답으로 AUTHENTICATION\_FAILED를 전송하고 있습니다. | 피어가 IKE\_AUTH 메시지 내용을 확인하여 피어를 인증할 수 없습니다. | 
| AWS 터널이 cgw: xxxx와 사전 공유 키 불일치를 감지했습니다. | 두 IKE 피어 모두에서 동일한 사전 공유 키를 구성해야 합니다. | 
| AWS 터널 제한 시간: cgw: xxxx를 사용하여 설정되지 않은 1단계 IKE\_SA 삭제 | 협상에서 반개방된 IKE\_SA를 피어로 삭제하는 작업이 진행되지 않았습니다. | 
| No Proposal Match Found(일치하는 제안 항목을 찾을 수 없음). Notifying with "No proposal chosen"('선택한 제안 항목 없음'으로 알림) | IKE 피어에 대해 올바른 제안 항목을 구성해야 함을 알리는 No Proposal Chosen(선택한 제안 항목 없음) 오류 메시지가 피어 간에 교환됩니다. | 
| 에서 제안 일치를 찾을 수 없음 AWS | 1단계 또는 2단계(암호화, 해싱 및 DH 그룹)에 대해 제안된 속성은 AWS VPN 엔드포인트에서 지원되지 않습니다. 예: `3DES`. | 

### IKEv2 협상 메시지
<a name="sample-log-ikev2-negotiation"></a>


| 메시지 | 설명 | 
| --- | --- | 
| AWS CREATE\_CHILD\_SA에 대한 터널 처리 요청(id=xxx) | AWS 가 CGW로부터 CREATE\_CHILD\_SA 요청을 수신했습니다. | 
| AWS 터널이 CREATE\_CHILD\_SA에 대한 응답(id=xxx)을 보내고 있음 | AWS 가 CREATE\_CHILD\_SA 응답을 CGW로 보내고 있습니다. | 
| AWS 터널이 CREATE\_CHILD\_SA에 대한 요청(id=xxx)을 보내고 있음 | AWS 가 CREATE\_CHILD\_SA 요청을 CGW로 보내고 있습니다. | 
| AWS CREATE\_CHILD\_SA에 대한 터널 처리 응답(id=xxx) | AWS 가 CREATE\_CHILD\_SA 응답 양식 CGW를 수신했습니다. | 

### BGP 상태 메시지
<a name="sample-bgp-status-messages"></a>

 BGP 상태 메시지에는 지정된 BGP 세션의 BGP 이웃에 대한 BGP 세션 상태 전환, 접두사 제한 경고, 제한 위반, BGP 세션 알림, BGP OPEN 메시지 및 속성 업데이트와 관련된 정보가 포함됩니다.


| 메시지 | BGP 상태 | 설명 | 
| --- | --- | --- | 
|  AWS 측 피어 BGP 세션 상태가 유휴에서 이웃과 연결 {ip: xxx}로 변경되었습니다. |  다운  |  AWS 측의 BGP 연결 상태가 연결로 업데이트되었습니다. | 
|  AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 Connect에서 OpenSent로 변경되었습니다. |  다운  |  AWS 측의 BGP 연결 상태가 OpenSent로 업데이트되었습니다. | 
|  AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 OpenSent에서 OpenConfirm으로 변경되었습니다. |  다운  |  AWS 측의 BGP 연결 상태가 OpenConfirm으로 업데이트되었습니다. | 
|  AWS 측 피어 BGP 세션 상태가 OpenConfirm에서 이웃 {ip: xxx}으로 설정됨으로 변경되었습니다. |  UP  |  AWS 측의 BGP 연결 상태가 설정됨으로 업데이트되었습니다. | 
|  AWS 측 피어 BGP 세션 상태가 설정됨에서 이웃이 {ip: xxx}인 유휴로 변경되었습니다. |  다운  |  AWS 측의 BGP 연결 상태가 유휴로 업데이트되었습니다. | 
|  AWS 측 피어 BGP 세션 상태가 이웃이 {ip: xxx}인 연결에서 활성으로 변경되었습니다. |  다운  |  AWS 측의 BGP 연결 상태가 연결에서 활성으로 전환되었습니다. BGP 세션이 연결 상태로 멈춘 경우 CGW에서 TCP 포트 179 가용성을 확인합니다. | 
|  AWS 측 피어가 최대 접두사 제한 경고를 보고함 - 이웃 {ip: xxx}에서 {prefixes (count): xxx} 접두사를 수신함 {limit (numeric): xxx}  |  UP  |  AWS 측은 CGW에서 수신한 접두사 수가 허용 한도에 가까워지면 주기적으로 로그 메시지를 생성합니다. | 
|  AWS 측 피어가 최대 접두사 제한을 초과했음을 감지함 - 이웃 {ip: xxx}에서 {prefixes (count): xxx} 접두사를 수신함, 제한은 {limit (numeric): xxx}  |  다운  |  AWS 측은 CGW에서 수신한 접두사 수가 허용 한도를 초과하면 로그 메시지를 생성합니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에 6/1(Cease/Maximum Number of Prefixes Reached) 알림을 보냈습니다. |  다운  |  AWS 측은 접두사 제한 위반으로 인해 BGP 세션이 종료되었음을 나타내는 알림을 CGW BGP 피어에 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/1(Cease/Maximum Number of Prefixes Reached) 알림을 수신했습니다. |  다운  | AWS 측은 접두사 제한 위반으로 인해 BGP 세션이 종료되었음을 나타내는 알림을 CGW 피어로부터 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에게 6/2(Cease/Administrative Shutdown) 알림을 보냈습니다. |  다운  |  AWS 측은 CGW BGP 피어에 BGP 세션이 종료되었음을 알리는 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/2(Cease/Administrative Shutdown) 알림을 수신함  |  다운  |  AWS 측은 CGW 피어로부터 BGP 세션이 종료되었음을 알리는 알림을 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에 6/3(Cease/Peer Un configured) 알림을 보냈습니다. |  다운  |  AWS 측은 CGW 피어에 피어가 구성되지 않았거나 구성에서 제거되었음을 나타내는 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/3(Cease/Peer Un configured) 알림을 수신했습니다. |  다운  |  AWS 측은 CGW 피어로부터 피어가 구성되지 않았거나 구성에서 제거되었음을 알리는 알림을 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에게 6/4(Cease/Administrative Reset) 알림을 보냈습니다. |  다운  |  AWS 측은 CGW BGP 피어에 BGP 세션이 재설정되었음을 알리는 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/4(Cease/Administrative Reset) 알림을 수신함  |  다운  |  AWS 측은 CGW 피어로부터 BGP 세션이 재설정되었음을 알리는 알림을 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에게 6/5(Cease/Connection Rejected) 알림을 보냈습니다. |  다운  |  AWS 측은 CGW BGP 피어에 BGP 세션이 거부되었음을 알리는 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/5(Cease/Connection Rejected) 알림을 수신했습니다. |  다운  |  AWS 측은 CGW 피어로부터 BGP 세션이 거부되었음을 알리는 알림을 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에게 6/6(Cease/Other Configuration Change) 알림을 보냈습니다. |  다운  |  AWS 측은 CGW BGP 피어에 BGP 세션 구성 변경이 발생했음을 알리는 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/6(Cease/Other Configuration Change) 알림을 수신함  |  다운  |  AWS 측은 CGW 피어로부터 BGP 세션 구성 변경이 발생했음을 나타내는 알림을 받았습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에 6/7(Cease/Connection Collision Resolution) 알림을 보냈습니다. |  다운  |  AWS 측은 두 피어가 동시에 연결을 설정하려고 할 때 연결 충돌을 해결하기 위해 CGW 피어에 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}로부터 6/7(Cease/Connection Collision Resolution) 알림을 수신했습니다. |  다운  |  AWS 측은 두 피어가 동시에 연결을 설정하려고 할 때 연결 충돌의 해결을 나타내는 알림을 CGW 피어로부터 수신했습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에게 홀드 타이머 만료 알림을 보냈습니다. |  다운  |  BGP 보류 타이머가 만료되었으며 AWS 측에서 CGW로 알림을 보냈습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에서 잘못된 OPEN 메시지를 감지했습니다. 원격 AS는 {asn: xxx}, 예상 {asn: xxx}입니다. |  다운  |  AWS 측에서 구성 불일치를 나타내는 CGW 피어에서 잘못된 OPEN 메시지가 수신되었음을 감지했습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}- 버전 4, AS {asn: xxx}, holdtime {holdtime (seconds): xxx}, router-id {id: xxx}}로부터 OPEN 메시지를 수신했습니다. |  다운  |  AWS 측에서 CGW 피어로 BGP 세션을 시작하는 BGP 열린 메시지를 수신했습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}- 버전 4, AS {asn: xxx}, holdtime {holdtime (seconds): xxx}, 라우터 ID {id: xxx}에 OPEN 메시지를 보냈습니다. |  다운  |  CGW 피어가 BGP 열린 메시지를 전송하여 AWS 측 BGP 피어로 BGP 세션을 시작했습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에 대한 연결( Connect를 통해)을 시작하고 있습니다. |  다운  |  AWS 측에서 CGW BGP 이웃과 연결을 시도하고 있습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}에 End-of-RIB 메시지를 보냈습니다. |  UP  |  AWS 측에서 BGP 세션 설정 후 CGW로 경로 전송을 완료했습니다. | 
|  AWS 측 피어가 이웃 {ip: xxx}- AS 경로: {aspath (list): xxx xxx xxx}의 속성으로 업데이트를 수신했습니다. |  UP  |  AWS 측이 이웃으로부터 BGP 세션 속성 업데이트를 수신했습니다. | 

### 라우팅 상태 메시지
<a name="sample-route-status-messages"></a>

 BGP 상태 메시지와 달리 라우팅 상태 메시지에는 AS 경로, 로컬 기본 설정, 다중 종료 식별기(MED), 다음 홉 IP 주소 및 가중치와 같은 지정된 접두사의 BGP 속성에 대한 데이터가 포함됩니다. 경로 상태 메시지에는 ADVERTISED, UPDATED 또는 WITHDRAWN 경로에 오류가 있는 경우에만 세부 정보 필드가 포함됩니다. 그 예는 다음과 같습니다.


| 메시지 | 설명 | 
| --- | --- | 
|  DENIED 원인: as-path에는 자체 AS가 포함되어 있습니다. |  AWS 측 피어 자체 AS가 포함된 경로로 인해 AWS는 CGW의 새 접두사에 대한 BGP 업데이트 메시지를 거부했습니다. | 
|  다음으로 인해 거부됨: 연결되지 않은 다음 홉  |  AWS는 연결되지 않은 다음 홉 검증 실패로 인해 CGW에서 접두사에 대한 BGP 라우팅 광고를 거부했습니다. CGW 측에서 경로에 연결할 수 있는지 확인합니다. | 

## 터널 BGP 로그의 로그 형식 예
<a name="example-bgp-logs"></a>

```
{
    "resource_id": "vpn-1234abcd_1.2.3.4",
    "event_timestamp": 1762580429641,
    "timestamp": "2025-11-08 05:40:29.641Z",
    "type": "BGPStatus",
    "status": "UP",
    "message": {
        "details": "AWS-side peer BGP session state has changed from OpenConfirm to Established with neighbor 169.254.50.85"
    }
}

{
    "resource_id": "vpn-1234abcd_1.2.3.4",
    "event_timestamp": 1762579573243,
    "timestamp": "2025-11-08 05:26:13.243Z",
    "type": "RouteStatus",
    "status": "UPDATED",
    "message": {
        "prefix": "172.31.0.0/16",
        "asPath": "64512",
        "localPref": 100,
        "med": 100,
        "nextHopIp": "169.254.50.85",
        "weight": 32768,
        "details": "DENIED due to: as-path contains our own AS"
    }
}
```

## CloudWatch Logs에 게시하기 위한 IAM 요구 사항
<a name="publish-cw-logs"></a>



로깅 기능이 제대로 작동하려면 기능을 구성하는 데 사용되는 IAM 보안 주체에 연결된 IAM 정책에 최소한 다음 권한이 포함되어야 합니다. 자세한 내용은 *Amazon CloudWatch Logs 사용 설명서*의 [특정 AWS 서비스에서 로깅 활성화](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html) 섹션에서 확인할 수도 있습니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "logs:CreateLogDelivery",
        "logs:GetLogDelivery",
        "logs:UpdateLogDelivery",
        "logs:DeleteLogDelivery",
        "logs:ListLogDeliveries"
      ],
      "Resource": [
        "*"
      ],
      "Effect": "Allow",
      "Sid": "S2SVPNLogging"
    },
    {
      "Sid": "S2SVPNLoggingCWL",
      "Action": [
        "logs:PutResourcePolicy",
        "logs:DescribeResourcePolicies",
        "logs:DescribeLogGroups"
      ],
      "Resource": [
        "*"
      ],
      "Effect": "Allow"
    }
  ]
}
```

------