Getting Data In

How do I enable KMS encryption for Ingest Actions writes to S3?

fjiang
Splunk Employee
Splunk Employee
 
0 Karma

fjiang
Splunk Employee
Splunk Employee

Note that this feature is currently available for Splunk Cloud customers only. Check out this doc for a high level overview of the feature: https://docs.splunk.com/Documentation/SplunkCloud/latest/Data/DataIngest#Use_KMS_encryption_.28Splun...

In conjunction with the “Create New Destination” Wizard in the Ingest Actions UI, you should navigate into your AWS console, and do the following:

 

  1. Log into your AWS account
  2. Navigate to IAM > Roles
  3. Click Create Role
  4. Click Another AWS Account
  5. In the Role Name field, type exactly the name of SplunkIngestActions and click Create role.
  6. Click SplunkIngestActions.
  7. Under the Permissions tab, click Add inline policy.
    1. {
    2. "Version": "2023-01-01",
    3. "Statement": [
    4. {
    5. "Effect": "Allow",
    6. "Action": [
    7. "kms:GenerateDataKey*",
    8. "kms:DescribeKey"
    9. ],
    10. "Resource": "arn:aws:kms:us-east-1:<AWS_ACCOUNT_ID>:key/cff1c23d-4567-898f-7d6a-543eb2123456"
    11. }
    12. ]
    13. }
    14. {
    15. "Version": "2023-01-01",
    16. "Statement": [
    17. {
    18. "Effect": "Allow",
    19. "Action": [
    20. "s3:PutObject",
    21. "s3:ListBucket"
    22. ],
    23. "Resource": [
    24. "arn:aws:s3:::buttercupgames-xyzyxs9t4r8w-ia-data-lake",
    25. "arn:aws:s3:::buttercupgames-xyzyxs9t4r8w-ia-data-lake/*"
    26. ]
    27. }
    28. ]
    29. }
    1. Click the JSON tab
    2. Overwrite the JSON text by copying and pasting the Permission Policy from the Splunk Ingest Actions UI (this is visible in the 2nd part of the Ingest Actions “Create New Destinations” wizard after selecting “KMS encryption”). See an example Permission Policy below.
    3.  Click Review Policy.
    4.  In the Name field, type any name of your choice, such as SplunkIngestActions.
    5.  Click Create policy.
  8.  Under the Trust relationships tab, click Edit trust relationship.
    1. {
    2. "Version": "2023-01-01",
    3. "Statement": [
    4. {
    5. "Effect": "Allow",
    6. "Principal": {
    7. "AWS": "arn:aws:iam::<AWS_ACCOUNT_ID>:role/buttercupgames"
    8. },
    9. "Action": "sts:AssumeRole"
    10. "Condition": {
    11. "StringEquals": {
    12. "sts:ExternalId": "08a3bc0d88e84fg3h909627i3jklmno0"
    13. }
    14. }
    15. }
    16. ]
    17. }
    18. }
    1. Overwrite the JSON text by copying and pasting the Trust Relationship from the Splunk Ingest Actions UI. See Example Below.
    2.  Click Update Trust Policy.

 

Note: 

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Deep Dive: Accelerate threat investigation with Splunk’s AI Assistant in Security

AI is one of the biggest topics in the market today, and for security teams, its value goes far beyond the ...

Announcing Modern Navigation: A New Era of Splunk User Experience

We are excited to introduce the Modern Navigation feature in the Splunk Platform, available to both cloud and ...

Detection Engineering Office Hours: Real-World Troubleshooting & Q&A

[REGISTER HERE] This thread is for the Community Office Hours session on Detection Engineering Office Hours: ...