Skip to content

Commit d42eb09

Browse files
committed
'Version 1.6.3 of the AWS CloudTrail Processing Library'
1 parent 9e03e43 commit d42eb09

File tree

8 files changed

+86
-3
lines changed

8 files changed

+86
-3
lines changed

META-INF/MANIFEST.MF

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
22
Bundle-ManifestVersion: 2
33
Bundle-Name: AWS CloudTrail Processing Library for Java
44
Bundle-SymbolicName: com.amazonaws.awscloudtrailprocessinglibrary;singleton:=true
5-
Bundle-Version: 1.6.2
5+
Bundle-Version: 1.6.3
66
Bundle-Vendor: Amazon Technologies, Inc
77
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
88
Require-Bundle: com.amazonaws.sdk;bundle-version="1.12.261"

README.rst

+5
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,11 @@ build, use this command::
6565
Release Notes
6666
-------------
6767

68+
Release 1.6.3 (Oct 25, 2024)
69+
~~~~~~~~~~~~~~~~~~~~~~~~~~~
70+
* Added support for modeling InScopeOf
71+
* Added support for modeling VpcEndpointAccountId
72+
6873
Release 1.6.2 (Nov 30, 2023)
6974
~~~~~~~~~~~~~~~~~~~~~~~~~~~
7075
* Added support for modeling EdgeDeviceDetails

pom.xml

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">
34
<modelVersion>4.0.0</modelVersion>
@@ -96,3 +97,4 @@
9697
</pluginManagement>
9798
</build>
9899
</project>
100+

src/main/java/com/amazonaws/services/cloudtrail/processinglibrary/manager/BasicS3Manager.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import com.amazonaws.services.cloudtrail.processinglibrary.progress.ProgressStatus;
2727
import com.amazonaws.services.cloudtrail.processinglibrary.utils.LibraryUtils;
2828
import com.amazonaws.services.s3.AmazonS3;
29+
import com.amazonaws.services.s3.model.GetObjectRequest;
2930
import com.amazonaws.services.s3.model.S3Object;
3031
import com.amazonaws.services.s3.model.S3ObjectInputStream;
3132
import org.apache.commons.logging.Log;
@@ -36,7 +37,7 @@
3637
/**
3738
* Manages Amazon S3 service-related operations.
3839
*/
39-
public class BasicS3Manager implements S3Manager{
40+
public class BasicS3Manager implements S3Manager {
4041
private static final Log logger = LogFactory.getLog(S3Manager.class);
4142

4243
private AmazonS3 s3Client;
@@ -109,7 +110,8 @@ public byte[] downloadLog(CloudTrailLog ctLog, CloudTrailSource source) {
109110
*/
110111
public S3Object getObject(String bucketName, String objectKey) {
111112
try {
112-
return s3Client.getObject(bucketName, objectKey);
113+
GetObjectRequest request = new GetObjectRequest(bucketName, objectKey).withRequesterPays(true);
114+
return s3Client.getObject(request);
113115
} catch (AmazonServiceException e) {
114116
logger.error("Failed to get object " + objectKey + " from s3 bucket " + bucketName);
115117
throw e;

src/main/java/com/amazonaws/services/cloudtrail/processinglibrary/model/CloudTrailEventData.java

+9
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.Addendum;
1919
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.CloudTrailDataStore;
2020
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.CloudTrailEventField;
21+
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.InScopeOf;
2122
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.InsightDetails;
2223
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.Resource;
2324
import com.amazonaws.services.cloudtrail.processinglibrary.model.internal.TlsDetails;
@@ -367,4 +368,12 @@ public TlsDetails getTlsDetails() {
367368
public String getSessionCredentialFromConsole() {
368369
return (String) get(CloudTrailEventField.sessionCredentialFromConsole.name());
369370
}
371+
372+
public InScopeOf getInScopeOf() {
373+
return (InScopeOf) get(CloudTrailEventField.inScopeOf.name());
374+
}
375+
376+
public String getVpcEndpointAccountId() {
377+
return (String) get(CloudTrailEventField.vpcEndpointAccountId.name());
378+
}
370379
}

src/main/java/com/amazonaws/services/cloudtrail/processinglibrary/model/internal/CloudTrailEventField.java

+6
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ public enum CloudTrailEventField {
3939
cipherSuite,
4040
clientProvidedHostHeader,
4141
credentialId,
42+
credentialsIssuedTo,
4243
deviceFamily,
4344
deviceId,
4445
edgeDeviceDetails,
@@ -53,6 +54,8 @@ public enum CloudTrailEventField {
5354
eventVersion,
5455
federatedProvider,
5556
identityProvider,
57+
issuerType,
58+
inScopeOf,
5659
insight,
5760
insightContext,
5861
insightDetails,
@@ -80,6 +83,8 @@ public enum CloudTrailEventField {
8083
sharedEventID,
8184
snowJobId,
8285
sourceIPAddress,
86+
sourceAccount,
87+
sourceArn,
8388
state,
8489
statistics,
8590
tlsDetails,
@@ -90,6 +95,7 @@ public enum CloudTrailEventField {
9095
userIdentity,
9196
userName,
9297
value,
98+
vpcEndpointAccountId,
9399
vpcEndpointId,
94100
webIdFederationData
95101
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.amazonaws.services.cloudtrail.processinglibrary.model.internal;
2+
3+
public class InScopeOf extends CloudTrailDataStore {
4+
public String getSourceAccount() {
5+
return (String) this.get(CloudTrailEventField.sourceAccount.name());
6+
}
7+
8+
public String getSourceArn() {
9+
return (String) this.get(CloudTrailEventField.sourceArn.name());
10+
}
11+
12+
public String getIssuerType() {
13+
return (String) this.get(CloudTrailEventField.issuerType.name());
14+
}
15+
16+
public String getCredentialsIssuedTo() {
17+
return (String) this.get(CloudTrailEventField.credentialsIssuedTo.name());
18+
}
19+
}

src/main/java/com/amazonaws/services/cloudtrail/processinglibrary/serializer/AbstractEventSerializer.java

+40
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,9 @@ public CloudTrailEvent getNextEvent() throws IOException {
171171
case "edgeDeviceDetails":
172172
this.parseEdgeDeviceDetails(eventData);
173173
break;
174+
case "inScopeOf":
175+
this.parseInScopeOf(eventData);
176+
break;
174177
default:
175178
eventData.add(key, parseDefaultValue(key));
176179
break;
@@ -855,6 +858,43 @@ private void parseEdgeDeviceDetails(CloudTrailEventData eventData) throws IOExce
855858
eventData.add(CloudTrailEventField.edgeDeviceDetails.name(), edgeDeviceDetails);
856859
}
857860

861+
private void parseInScopeOf(CloudTrailEventData eventData) throws IOException {
862+
JsonToken nextToken = jsonParser.nextToken();
863+
if (nextToken == JsonToken.VALUE_NULL) {
864+
eventData.add(CloudTrailEventField.inScopeOf.name(), null);
865+
return;
866+
}
867+
868+
if (nextToken != JsonToken.START_OBJECT) {
869+
throw new JsonParseException("Not an inScopeOf object", jsonParser.getCurrentLocation());
870+
}
871+
872+
InScopeOf inScopeOf = new InScopeOf();
873+
874+
while (jsonParser.nextToken() != JsonToken.END_OBJECT) {
875+
String key = jsonParser.getCurrentName();
876+
877+
switch (key) {
878+
case "sourceAccount":
879+
inScopeOf.add(CloudTrailEventField.sourceAccount.name(), jsonParser.nextTextValue());
880+
break;
881+
case "sourceArn":
882+
inScopeOf.add(CloudTrailEventField.sourceArn.name(), jsonParser.nextTextValue());
883+
break;
884+
case "issuerType":
885+
inScopeOf.add(CloudTrailEventField.issuerType.name(), jsonParser.nextTextValue());
886+
break;
887+
case "credentialsIssuedTo":
888+
inScopeOf.add(CloudTrailEventField.credentialsIssuedTo.name(), jsonParser.nextTextValue());
889+
break;
890+
default:
891+
inScopeOf.add(key, parseDefaultValue(key));
892+
break;
893+
}
894+
}
895+
eventData.add(CloudTrailEventField.inScopeOf.name(), inScopeOf);
896+
}
897+
858898
/**
859899
* Parses the event with key as default value.
860900
*

0 commit comments

Comments
 (0)