Skip to content

Commit

Permalink
Add all supported actions
Browse files Browse the repository at this point in the history
  • Loading branch information
loafoe committed Mar 29, 2021
1 parent d55bff4 commit fe78199
Showing 1 changed file with 105 additions and 1 deletion.
106 changes: 105 additions & 1 deletion s3creds/policy.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,111 @@ func (p *Policy) Equals(other *Policy) bool {
}

func validateActions(fl validator.FieldLevel) bool {
validActions := []string{"GET", "PUT", "LIST", "DELETE", "ALL_OBJECT", "ALL_BUCKET"}
validActions := []string{
"GET",
"PUT",
"LIST",
"DELETE",
"ALL_OBJECT",
"ALL_BUCKET",
"AbortMultipartUpload",
"CompleteMultipartUpload",
"CopyObject",
"CreateBucket",
"CreateMultipartUpload",
"DeleteBucket",
"DeleteBucketAnalyticsConfiguration",
"DeleteBucketCors",
"DeleteBucketEncryption",
"DeleteBucketIntelligentTieringConfiguration",
"DeleteBucketInventoryConfiguration",
"DeleteBucketLifecycle",
"DeleteBucketMetricsConfiguration",
"DeleteBucketOwnershipControls",
"DeleteBucketPolicy",
"DeleteBucketReplication",
"DeleteBucketTagging",
"DeleteBucketWebsite",
"DeleteObject",
"DeleteObjects",
"DeleteObjectTagging",
"DeletePublicAccessBlock",
"GetBucketAccelerateConfiguration",
"GetBucketAcl",
"GetBucketAnalyticsConfiguration",
"GetBucketCors",
"GetBucketEncryption",
"GetBucketIntelligentTieringConfiguration",
"GetBucketInventoryConfiguration",
"GetBucketLifecycle",
"GetBucketLifecycleConfiguration",
"GetBucketLocation",
"GetBucketLogging",
"GetBucketMetricsConfiguration",
"GetBucketNotification",
"GetBucketNotificationConfiguration",
"GetBucketOwnershipControls",
"GetBucketPolicy",
"GetBucketPolicyStatus",
"GetBucketReplication",
"GetBucketRequestPayment",
"GetBucketTagging",
"GetBucketVersioning",
"GetBucketWebsite",
"GetObject",
"GetObjectAcl",
"GetObjectLegalHold",
"GetObjectLockConfiguration",
"GetObjectRetention",
"GetObjectTagging",
"GetObjectTorrent",
"GetPublicAccessBlock",
"HeadBucket",
"HeadObject",
"ListBucketAnalyticsConfigurations",
"ListBucketIntelligentTieringConfigurations",
"ListBucketInventoryConfigurations",
"ListBucketMetricsConfigurations",
"ListBuckets",
"ListMultipartUploads",
"ListObjects",
"ListObjectsV2",
"ListObjectVersions",
"ListParts",
"PutBucketAccelerateConfiguration",
"PutBucketAcl",
"PutBucketAnalyticsConfiguration",
"PutBucketCors",
"PutBucketEncryption",
"PutBucketIntelligentTieringConfiguration",
"PutBucketInventoryConfiguration",
"PutBucketLifecycle",
"PutBucketLifecycleConfiguration",
"PutBucketLogging",
"PutBucketMetricsConfiguration",
"PutBucketNotification",
"PutBucketNotificationConfiguration",
"PutBucketOwnershipControls",
"PutBucketPolicy",
"PutBucketReplication",
"PutBucketRequestPayment",
"PutBucketTagging",
"PutBucketVersioning",
"PutBucketWebsite",
"PutObject",
"PutObjectAcl",
"PutObjectLegalHold",
"PutObjectLockConfiguration",
"PutObjectRetention",
"PutObjectTagging",
"PutPublicAccessBlock",
"RestoreObject",
"SelectObjectContent",
"UploadPart",
"UploadPartCopy",
"WriteGetObjectResponse",
}
// Also need to check for granular objects
actions, ok := fl.Field().Interface().([]string)
if !ok {
return false
Expand Down

0 comments on commit fe78199

Please sign in to comment.