Integrations (AWS S3 Connections)
Establish secure, cross-account AWS IAM role assumption to stream objects directly from your S3 buckets without permanent access keys, configure CORS policies, and validate connectivity.
Overview
Connect Tensoract to your AWS S3 buckets for seamless direct file import. Accessible to Super Users, Company Admins, and Dataset Supervisors via Integrations in the left sidebar.
Creating an AWS S3 Integration
Tensoract enforces zero-standing-privilege security using AWS IAM Role cross-account assumption (no long-term IAM access keys or secret keys are ever stored or required).
Step-by-Step Guide
Navigate to Integrations and click Add Integration
From the left sidebar, click Integrations, then click the blue Add Integration button.
Figure 1: Integrations - Add Integration
Enter Integration details and generate IAM permission code
Enter the Integration title and your actual S3 Bucket name as defined in your AWS account. Select IAM permissions and copy the generated policy snippet.
Figure 2: Integration - Title, Bucket, and IAM Permission
Create an IAM Policy in AWS Console
In the AWS Management Console, open IAM Policies Create Policy. Select the JSON tab, paste the permission code, and click Next.
Figure 3: AWS IAM - Create Policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "TensoractS3BucketAccess",
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::your-bucket-name"
},
{
"Sid": "TensoractS3ObjectAccess",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::your-bucket-name/*"
}
]
}
Name and Create the IAM Policy
Provide a descriptive Policy Name (e.g. Tensoract-S3-Access-Policy)
and click Create Policy.
Figure 4: AWS IAM - Policy Title
Obtain Account ID and External ID
Return to Tensoract. The integration setup modal displays the unique Account ID and External ID required to establish the trust relationship.
Figure 5: Integration - Account ID and External ID (Tool Panel)
Create the IAM Role in AWS
In AWS IAM, navigate to Roles Create Role. Choose AWS Account as the trusted entity type, check Require external ID, and paste the External ID from Tensoract. Click Next, attach the IAM Policy created in Step 3, enter a Role Name, and click Create Role.
Figure 6: AWS IAM - Trusted Entity Setup (Account ID and External ID)
Copy the Role ARN
Once the role is created, copy its Role ARN (e.g.
arn:aws:iam::123456789012:role/TensoractRole) and paste it into the Role
ARN field in Tensoract.
Figure 7: Integration - Role ARN
Configure CORS on your S3 Bucket
Copy the CORS configuration snippet in Tensoract. In AWS S3, open your bucket, go to Permissions Cross-origin resource sharing (CORS), click Edit, paste the JSON, and click Save changes.
Figure 8: S3 - CORS Configuration
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"HEAD",
"PUT"
],
"AllowedOrigins": [
"https://app.tensoract.com"
],
"ExposeHeaders": [
"ETag",
"Content-Length"
],
"MaxAgeSeconds": 3000
}
]
Click Create in Tensoract
Once the IAM Policy, Role ARN, S3 bucket name, and CORS configuration are configured, click Create in the tool modal.
Figure 9: Integration - Final Create Step
Integration Complete
A successful integration is confirmed. You can now browse bucket prefixes and import objects directly into Files and Datasets.
Figure 10: Integration - Success Confirmation
Validating Integrations
Click Run a Test on any integration row and paste a test object URL from your S3 bucket to verify read permissions and CORS handshakes.
Figure 11: Integration - Run a Test
- Health Status Badges:
HEALTHY Full read/write and CORS validation passed.
DEGRADED Bucket accessible but CORS misconfigured.
UNHEALTHY IAM Role assumption failed or access denied.
UNKNOWN Validation has not yet been executed. - Granular Checks: Dedicated indicators verify IAM Validation and CORS Validation independently.
Deleting Integrations
Select an integration from the table and click Delete.
Azure Blob Storage Integration
Tensoract supports connecting to Azure Blob Storage containers. Once connected, you can browse your Azure containers and import files directly into the platform.
Step-by-Step Guide to Creating an Azure Integration
Select Cloud Provider
Navigate to Integrations in the left sidebar and click New Integration. An integration provider dropdown is displayed.
Figure 12: Integrations – Select Cloud Provider
Select Azure
Select Azure from the dropdown. The modal expands to display the Azure integration configuration.
Integration Title
Under Give your integration a title, enter a name for this integration.
Storage Account
Under Register your Azure storage account with Tensoract, enter your Azure Storage Account name.
Choose Authentication Type
Under Choose authentication type, select one of the following methods:
- Shared access signature (SAS) (Default): The instruction “Create an account level shared access signature (SAS) and register it with Tensoract” is displayed. Generate an Account SAS externally in the Azure portal and paste it into the authentication field.
Figure 13: Add Azure Integration – SAS Authentication
- (Legacy) Azure service principle: The instruction “Add the Tensoract service principal to your Azure Active Directory and register your tenant ID” is displayed. Generate a Tenant ID externally in Azure and paste it into the authentication field.
Figure 14: Add Azure Integration – Service Principal Authentication
Configure CORS
A Configure CORS for your storage account instruction is displayed. Ensure your Azure CORS rules are configured correctly. (No input is required for this field).
Click Create
Once all required fields (Integration Title, Storage Account, and Authentication details) are completed, the Create button becomes enabled. Click Create.
Integration Complete
A success toast “Successfully created integration” appears. The modal closes, and you are redirected to the Integrations list where the newly created Azure integration appears at the top.
Managing and Testing Azure Integrations
On the Integrations list, your Azure integration displays its Integration Name, Storage Account Name, Created At, and Integrated At details.
Figure 15: Integrations List – Azure Integration Options
- Update SAS token: If you used Shared access signature (SAS) authentication and the token expires, click the Update SAS token button to enter and register a new SAS token for the existing integration.
Figure 16: Azure Integration – Update SAS Token
- Run a Test: Click the Run a Test button to verify access. In the Test Integration popup, enter a valid Azure Blob Storage object URL and click Check Tensoract can access this URL.
The validation results for Tensoract Infrastructure and This machine will be displayed. Green indicators signify access is successful. If inaccessible, red indicators appear, and you can expand the sections to view the corresponding Azure error messages.
Figure 17: Test Azure Integration – Enter Object URL and Validation Results
- Delete Integration: Check the box next to the Azure integration and click Delete. A confirmation popup appears. Type DELETE in the input field and click Delete to permanently remove it. A success toast appears confirming deletion.
Importing Files from Azure Blob Storage
Once an Azure Blob Storage integration is created, you can import files directly from your containers into the platform by navigating to the Files page.
Open Upload Files Modal
Go to the Files page and click the Upload Files button. The Upload files modal will open. In that modal, click on the Import from Cloud Storage tab.
Select Azure Integration
From the Select Integration dropdown, select your configured Azure Blob Storage integration. The upload area becomes enabled.
Figure 18: Files – Import from Cloud Storage (Select Azure Integration)
Select Individual Files
To select individual files, click the Click to upload from Cloud Storage area. The Cloud Storage explorer popup will open, displaying the blobs inside your Azure container. Select the desired files and click Upload. A toast message confirms the files were added.
Figure 19: Azure Blob Storage File Browser – Select Files
Open Specific Folder
To open a specific folder from the bucket, click the Add Folder button. The Add Folder modal appears. Paste the folder path and click Add. If the path is valid, the folder opens and displays the files inside. Select the required files and click Upload. If the path is invalid, an error “This path does not exist” is displayed.
Figure 20: Azure Blob Storage – Add Folder Path