Configure AWS for onboarding from a single account
You can use single account onboarding to ingest data from a single AWS account. Choose one account for use as both the management account and as the target account from which to ingest data. This one account allows you to create, update, and delete stack sets across multiple regions.
Create a SplunkDMReadOnly role
A SplunkDMReadOnly role allows Splunk Cloud to read metadata from your AWS events and logs.
Configure through the console
Complete the following steps in the AWS console.
- Log into your AWS account.
- Navigate to IAM > Roles.
- Click Create role.
- Click Another AWS account.
- In the Role Name field, type exactly the name of SplunkDMReadOnly and click Create role.
- Click SplunkDMReadOnly.
- Under the Permissions tab, click Add inline policy.
- Click the JSON tab.
- Overwrite the JSON text by copying and pasting the Role Policy from the Data Manager UI.
- Click Review Policy.
- In the Name field, type any name of your choice, such as SplunkDMReadOnlyPolicy.
- Click Create policy.
- Under the Trust relationships tab, click Edit trust relationship.
- Overwrite the JSON text by copying and pasting the Trust Relationship from the Data Manager UI.
- Replace the
<DATA_ACCOUNT_ID>
variables with your account ID. - Click Update Trust Policy.
Configure through the CLI
Prepare the terminal to use the AWS credentials that allow you to run the following CLI command against your AWS account. See AWS CLI Prerequisites.
- Create the SplunkDMReadOnly role, replacing the
<EXTERNAL_ID>
variable from the Trust Relationship in the Data Manager UI:aws iam create-role --role-name SplunkDMReadOnly --assume-role-policy-document '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":"sts:AssumeRole","Principal":{"AWS":"*"},"Condition":{"StringEquals":{"sts:ExternalId":"<EXTERNAL_ID>"}}}]}'
- Create the inline policy for SplunkDMReadOnlyPolicy and attach it to the role, replacing the
<DATA_ACCOUNT_ID>
variables with your AWS account ID from the Role Policy in the Data Manager UI:aws iam put-role-policy --policy-name SplunkDMReadOnlyPolicy --policy-document '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":["iam:GetRole","iam:PassRole","iam:GetRolePolicy"],"Resource":"arn:aws:iam::<DATA_ACCOUNT_ID>:role/SplunkDM*"},{"Effect":"Allow","Action":"guardduty:GetMasterAccount","Resource":"arn:aws:guardduty:*:<DATA_ACCOUNT_ID>:detector/*"},{"Effect":"Allow","Action":["securityhub:GetEnabledStandards","securityhub:GetMasterAccount"],"Resource":"arn:aws:securityhub:*:<DATA_ACCOUNT_ID>:hub/default"},{"Effect":"Allow","Action":"cloudformation:GetTemplate","Resource":"arn:aws:cloudformation:*:<DATA_ACCOUNT_ID>:stack/SplunkDM*/*"},{"Effect":"Allow","Action":["cloudtrail:DescribeTrails","cloudformation:DescribeStacks","guardduty:ListDetectors","access-analyzer:ListAnalyzers"],"Resource":"*"}]}' --role-name SplunkDMReadOnly
(Optional) Create an onboarding user
If you are the AWS admin and will be completing the AWS data onboarding, then you can use your admin privileges to complete the data onboarding steps. If you want a different user to continue with the onboarding, then create a user in the AWS account with the following permissions. The user can be created as an IAM user, IAM role, SAML user, or any of your company's AWS user creation policies. Make sure that this user has both AWS CLI and console access.
Configure through the console
As one example, consider the scenario of creating an IAM user to complete the data onboarding. To create an IAM user, complete the following steps in the AWS console.
- Log into your AWS account.
- Navigate to IAM > Users.
- Click Add user.
- In the User name field, type any name of your choice, such as OnboardingUser.
- For the Access type check box, select AWS Management Console access.
- For the Console password radio button, select the option of your choice.
- For the Required password reset check box, select User must create a new password at next sign-in.
- Click Next: Permissions.
- For Set permissions complete the following steps:
- Click Attach existing policies directly.
- Click Create policy.
- In the new browser window that opens, click the JSON tab.
- Overwrite the JSON text by copying and pasting the Permissions from the Data Manager UI.
- Replace the
<DATA_ACCOUNT_ID>
variables with your account ID. - Click Next: Tags > Next: Review.
- In the Name field, type any name of your choice, such as OnboardingUserPolicy.
- Click Create policy.
- Go back to the previous tab, so that you see the set permissions section.
- Click the refresh icon.
- In the Filter policies field, search for your policy name.
- Select the check box for your policy.
- Click Next: Tags > Next: Review.
- Click Create user.
About CloudFormation stack templates | Configure AWS for onboarding from multiple accounts |
This documentation applies to the following versions of Data Manager: 1.8.3
Feedback submitted, thanks!