IAM Role-Based Data Push to s3 Bucket
- Getting Started
- Bot Building
- Smart Agent Chat
- Conversation Design
-
Developer Guides
Code Step Integration Static Step Integration Shopify Integration SETU Integration Exotel Integration CIBIL integration Freshdesk KMS Integration PayU Integration Zendesk Guide Integration Twilio Integration Razorpay Integration LeadSquared Integration USU(Unymira) Integration Helo(VivaConnect) Integration Salesforce KMS Integration Stripe Integration PayPal Integration CleverTap Integration Fynd Integration HubSpot Integration Magento Integration WooCommerce Integration Microsoft Dynamics 365 Integration
- Deployment
- External Agent Tool Setup
- Analytics & Reporting
- Notifications
- Commerce Plus
- Troubleshooting Guides
- Release Notes
For the NiFi setup, there will be 2 AWS accounts:
- Haptik (Account A)
- Client (Account B)
Perform the below steps in Client’s account:
- Create a new s3 bucket or use the existing bucket in that account.
- Now, create a new IAM role and add Permissions and Trust Policy to this role. These additions will help the Haptik user in getting validated while trying to act on the client's bucket. Upon validation, this user will have all those permissions which we have configured for our IAM role.
- Now, copy the ARN created for our newly created IAM role. Example: arn:aws:iam::810373663331:user/daas_dataexporter
- Also, copy the s3 bucket ARN. Example: arn:aws:s3:::pulkitbucket18. Haptik account will now map this Bucket ARN in their policy.
- Map this Role ARN in the Haptik account with the user which is whitelisted above in the Client's account.
- Note down the AWS Access Key, and AWS Secret Key from the Haptik account and keep handy.
- Login to NiFi and open the PUT S3 processor and perform the following:
- Configure the Access Key and the Secret Key of Haptik.
- Configure Bucket name and Region of Client.
- Configure Assume Role ARN as <IAM role created in Client’s account>. Example: Assume Role ARN = arn:aws:iam::810373663331:user/daas_dataexporter
- Configure Assume Role Session Name as <role name>. Example: Assume Role Session Name => s3-full-access-role
Viola! We have configured Haptik account’s access key and secret key in NiFi so that our AWS user is able to log in first and then, it will take action like PUT s3 on the Client’s account based on Assume Role ARN configured in NiFi processor. As our Haptik account user is already whitelisted in the Client’s account, this action will be allowed and it will begin to work.