When you enable Tableau Cloud Activity Log delivery to an AWS S3 bucket (Site → Settings → Integrations), the connection fails and your site displays:
Failed to replicate security verification file
The connection status shows Failed. As part of setup, Tableau writes an initial SECURITY_VERIFICATION_FILE.txt to your target bucket to validate the integration. This error means that verification file could not be replicated into your bucket, which almost always indicates a permissions or configuration gap in AWS setup — your S3 bucket policy, your KMS key policy (if you use encryption), or the IAM role your policies reference.
You may instead see a numbered variant of the message, which helps identify the cause:
Re-enabling the connection on its own will not resolve a genuine permissions or region issue; the underlying AWS policy needs to be corrected first.
Work through the following steps in order, stopping when the connection succeeds. Each fix is made in your own AWS account. Refer throughout to the Tableau Activity Log setup guide and its Role mapping by region section.
Step 1 — Confirm your S3 bucket is in the correct AWS region for your Tableau Cloud pod
Your target bucket must be in the AWS region that matches your Tableau Cloud pod. A region mismatch appears specifically as Code: 2.
Step 2 — Add the required S3 replication actions to your bucket policy
This is the most commonly missed requirement. A bucket policy that grants only Put and Get permissions can look complete but will still fail with this error.
s3:ReplicateObjects3:ReplicateDeleteStep 3 — If you use SSE-KMS encryption, grant Tableau permissions on your KMS key policy
If your bucket is encrypted with SSE-KMS using a customer-managed key, your KMS key policy must also allow the Tableau role to use the key. Without this, Tableau cannot encrypt the object it writes to your bucket, and the verification file will fail to replicate even when your bucket policy is correct.
kms:GenerateDataKey and kms:Encrypt.Step 4 — Confirm the correct region-specific IAM role is referenced in both policies
Both your bucket policy and your KMS key policy must reference the current Tableau replication role for your region. Referencing an outdated role — or leaving a placeholder value in place — will prevent the policy from saving correctly or cause replication to keep failing.
Step 5 — If the status stays on "In progress" rather than failing, retry from Integrations Settings
If the connection does not fail outright but instead remains on "In progress" for an extended period (and the SECURITY_VERIFICATION_FILE.txt never appears in your bucket), this is intermittent behaviour rather than a policy error.
005388956

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.