Amazon S3
This article outlines the integration with the Amazon S3 connector, enabling streamlined metadata management through features such as crawling of files and folders, profiling, and data preview. It also supports metadata extraction for multiple file formats, including CSV, XLSX, XLS, PARQUET, ORC, JSON, YAML/YML, AVRO, and PIP files.
This connector uses the AWS S3 SDK to establish connectivity with Amazon S3 and supports Role-Based Authentication and IAM User Authentication for accessing buckets, folders, and files.

Overview
Connector Details
Connector Category
Cloud Storage
OvalEdge Release Supported
Release4.0 and later
Connectivity
[How OvalEdge connects to Amazon S3]
AWS S3 SDK
Connector Features
Crawling / Cataloging
✅
Delta Crawling
❌
Profiling*
✅
Sample Profiling
✅
Query Sheet
NA
Data Preview
✅
Auto Lineage
NA
Manual Lineage
✅
Secure Authentication via Credential Manager
✅
Data Quality
✅
DAM (Data Access Management)
✅
Bridge
✅
Metadata Mapping
The following objects are crawled from Amazon S3 and mapped to the corresponding UI assets.
Bucket
Folder
Folder
Folder
Folder
File
File
File
File
File
XLSX
Folder(subfile)
Folder(subfile)
Folder(subfile)
Folder(subfile)
XLS
Folder(subfile)
Folder(subfile)
Folder(subfile)
Folder(subfile)
CSV
File
File
File
File
TXT
File
File
File
File
PARQUET
File
File
File
File
ORC
File
File
File
File
JSON
File
File
File
File
YAML
File
File
File
File
PIP
File
File
File
File
Set up a Connection
Prerequisites
The following are the prerequisites to establish a connection:
Ensure that the CSV files follow the required formatting standards for proper data processing and visibility. Refer to CSV Format Requirements.
File Naming Convention
Ensure that all file names within the selected folders and subfolders follow the supported naming convention and do not contain the NTFS Alternate Data Stream (ADS) separator character (:).
Files with unsupported naming patterns may be skipped during Catalog and Profile operations. To ensure successful execution and complete metadata extraction, rename such files before triggering the job.
File Path
Specify the file path in the following format:
/bucket/prefix/file
For example:
/my-bucket/data/customer/customer.csv
The path must include the bucket name, followed by the required prefix and file name.
Service Account User Permissions
It is recommended to use a dedicated service account to establish the connection to the data source, configured with the following minimum set of permissions.
Connection Validation
-
S3 Client / STS
Valid AWS credentials (IAM user keys or assumed role). sts:GetCallerIdentity is allowed by default. sts:AssumeRole is required for cross-account Role-Based authentication.
Crawling
Buckets / Bucket Region / Bucket Tags / Bucket Encryption
S3 Buckets / Bucket Tags / Bucket Encryption Configuration
s3:ListAllMyBuckets / s3:GetBucketLocation / s3:GetBucketTagging / s3:GetEncryptionConfiguration
Crawling
Files / Folders
S3 Objects / Prefixes
s3:ListBucket
Crawling / Connection Validation
Object Metadata / Bucket / Folder Path
S3 Objects / Bucket
s3:GetObject / s3:ListBucket
Profiling / Data Preview / Data Quality / Bridge
Files
S3 Objects
s3:GetObject. For SSE-KMS encrypted objects with a Customer Managed Key, kms:Decrypt and kms:DescribeKey are additionally required.
Copy File to S3 (AskEdgi)
Files
S3 Objects
s3:PutObject. Required only when the copy-to-location feature is used.
Cross-Account Authentication
AWS Account / Role
STS Cross-Account Role
sts:AssumeRole on the target role. The target role trust policy must allow the source account/principal to assume the role.
Cross-Account Role Prerequisites
For cross-account access, ensure the following configurations are completed:
The target AWS IAM role must include a trust policy that allows the source account or IAM principal to assume the role.
The IAM principal or role used by the application must have the
sts:AssumeRolepermission for the target role.
SSE-KMS Bucket Permissions
For Amazon S3 buckets encrypted using SSE-KMS, additional AWS KMS permissions are required.
Along with s3:GetObject, the IAM principal or assumed role must also have the following permissions on the associated Customer Managed Key (CMK):
kms:Decryptkms:DescribeKey(if applicable)
Connection Configuration Steps
Users are required to have the Connector Creator role in order to configure a new connection.
Log into OvalEdge, go to Administration > Connectors, click + (New Connector), search for Amazon S3, and complete the required parameters.
Connector Type
By default, "Amazon S3" is displayed as the selected connector type.
Authentication*
The following two types of authentication are supported for Amazon S3:
Role Based Authentication (Default)
IAM User Authentication
Credential Manager*
Select the desired credentials manager from the drop-down list. Relevant parameters will be displayed based on the selection.
Supported Credential Managers:
OE Credential Manager
AWS Secrets Manager
HashiCorp
Azure Key Vault
License Add Ons
Select the checkbox for Data Quality Add-On to identify data quality issues using data quality rules and anomaly detection.
Select the checkbox for Data Access Add-On to enable the data access functionality.
Connector Name*
Enter a unique name for the Amazon S3 connection
(Example: "AmazonS3db").
Connector Description
Enter a brief summary or details about the connector.
Connector Environment
Select the environment (Example: PROD, STG) configured for the connector.
Cross-Account Role ARN
Enter the ARN (Amazon Resource Name) of the role used for cross-account access.
Filter by tags
Enter one or more tags to narrow down and display only the items associated with those tags. (Example: Key1=value1, key2=value2)
Region
Enter the region where the Amazon S3 files or resources are located.
Credential Manager*
Select the desired credentials manager from the drop-down list. Relevant parameters will be displayed based on the selection.
Supported Credential Managers:
OE Credential Manager
AWS Secrets Manager
HashiCorp
Azure Key Vault
License Add Ons
Select the checkbox for Data Quality Add-On to identify data quality issues using data quality rules and anomaly detection.
Select the checkbox for Data Access Add-On to enable the data access functionality.
Auto Lineage
Not Supported
Data Quality
Supported
Data Access
Supported
Connector Name*
Enter a unique name for the Amazon S3 connection
(Example: "AmazonS3db").
Connector Description
Enter a brief summary or details about the connector.
Connector Environment
Select the environment (Example: PROD, STG) configured for the connector.
Access key*
Enter the AWS Access Key ID used to authenticate the IAM user.
Secret key*
Enter the AWS Secret Access Key associated with the Access Key ID.
Filter by tags
Enter one or more tags to narrow down and display only the items associated with those tags.
Region
Enter the region where the Amazon S3 files or resources are located.
Default Governance Roles
Default Governance Roles*
Select the appropriate users or teams for each governance role from the drop-down list. All users configured in the security settings are available for selection.
Admin Roles
Admin Roles*
Select one or more users from the dropdown list for Integration Admin and Security & Governance Admin. All users configured in the security settings are available for selection.
No of Archive Objects
No Of Archive Objects*
This shows the number of recent metadata changes to a dataset at the source. By default, it is off. To enable it, toggle the Archive button and specify the number of objects to archive.
Example: Setting it to 4 retrieves the last four changes, displayed in the 'Version' column of the 'Metadata Changes' module.
Bridge
Select Bridge*
If applicable, select the bridge from the drop-down list.
The drop-down list displays all active bridges that have been configured. These bridges facilitate communication between data sources and the system without requiring changes to firewall rules.
After entering all connection details, the following actions can be performed:
Click Validate to verify the connection.
Click Save to store the connection for future use.
Click Save & Configure to apply additional settings before saving.
The saved connection will appear on the Connectors home page.
Manage Connector Operations
Crawl/Profile
Navigate to the Connectors page and click Crawl/Profile.
This action initiates the metadata collection process from the data source and loads the retrieved metadata into the File Manager > File Explorer.
In the File Manager, click the connector name, select the specific folder(s) or file(s), then click Catalog / Catalog and Profile from the Nine Dots menu. For more details, click here.
The selected files or folders will be added to the Data Catalog > Files/File Columns tab.
Other Operations
The Connectors page provides a centralized view of all configured connectors, along with their health status.
Managing connectors includes:
Connectors Health: Displays the current status of each connector using a green icon for active connections and a red icon for inactive connections, helping to monitor the connectivity with data sources.
Viewing: Click the Eye icon next to the connector name to view connector details, including databases, tables, columns, and codes.
Nine Dots Menu Options:
To view, edit, validate, configure, or delete connectors, click on the Nine Dots menu.
Edit Connector: Update and revalidate the data source.
Validate Connector: Check the connection's integrity.
Settings: Modify connector settings.
Crawler: Configure data extraction.
Access Instructions: Add notes on how data can be accessed.
Business Glossary Settings: Manage term associations at the connector level.
Anomaly Detection Settings: Configure anomaly detection preferences at the connector level.
Others: Configure notification recipients for metadata changes.
Delete Connector: Remove a connector with confirmation.
For more details, click here.
Limitations
1
Users cannot view files in a folder in the File Manager after a crawl if the S3 connector source contains folder names that start or end with spaces.
2
For File-based connectors, the folder count in the File Manager and Data Catalog Files module may not match if folders or files are added or deleted in the source system after crawling. Run the connection crawl again to refresh and display the latest changes.
Troubleshooting
If incorrect parameters are entered, error messages may appear. Ensure all inputs are accurate to resolve these issues. If issues persist, contact the assigned support team.
1
Connection validation fails or cannot proceed when Role-Based Authentication is selected
Role-Based Authentication is applicable only when the hosting application resides on AWS as a SaaS deployment; it does not apply to non-AWS-hosted deployments. At present, validation using this authentication mode is not functioning as expected.
Resolution
Confirm the hosting environment of the application; Role-Based Authentication should only be attempted for AWS-hosted deployments.
Where validation issues persist, use IAM User Authentication (access key and secret key) as the supported alternative.
Log a request for further investigation if Role-Based Authentication continues to be required for the environment in question.
2
Connection validation fails specifically when connecting through a bridge, while direct (non-bridge) validation succeeds
When IAM User Authentication is used through a bridge, the same IAM credentials and associated permissions must also be present and valid on the virtual machine where the bridge is installed, not only in the hosting environment.
Resolution
Confirm that the same access key and secret key used in the connection details are also configured on the bridge VM.
Verify that the required AWS permissions (bucket-level and object-level) are replicated for the bridge environment.
Re-attempt validation after confirming credential and permission parity between the hosting environment and the bridge VM.
3
Please provide valid credentials: The AWS Access Key Id you provided does not exist in our records. (Service: Amazon S3; Status Code: 403; Error Code: InvalidAccessKeyId; Request ID: 73xxxxG; S3 Extended Request ID: jmxxx1JOJYLpbHOl1t2mqyKlmArTw=; Proxy: null)
Invalid Access Key Resolution:
Verify that the configured AWS Access Key ID is correct and active.
Ensure that the access key belongs to the intended AWS account.
Update the connection with a valid access key and revalidate the connection.
4
The request signature we calculated does not match the signature you provided. Check your key and signing method. If you start to see this issue after you upgrade the SDK to 1.xx.xx0 or later, it could be because the bucket provided contains '/'. (Service: Amazon S3; Status Code: 403; Error Code: SignatureDoesNotMatch; Request ID: NxxxxH; S3 Extended Request ID: 3xxxxCbU=; Proxy: null)
Invalid Secret Key Resolution:
Verify that the configured AWS Secret Access Key is correct.
Ensure that only the bucket name is provided without any folder path or prefix.
Revalidate the connection after updating the secret key or bucket configuration.
Note: With AWS SDK version 1.xx.460 and later, entering a bucket value that includes a forward slash (/) or path prefix may result in an SignatureDoesNotMatch error. Ensure that only the bucket name is provided without any folder path or prefix.
1
Bucket or file not appearing after crawl completes, with no error raised in the job logs
Bucket or file names containing a semicolon or extra/trailing spaces are not supported during the crawling process. Such objects are silently excluded rather than raising a hard failure.
Resolution:
Confirm the naming convention of the bucket or file in the AWS environment for semicolons or additional spaces.
Rename the affected bucket or file in AWS to remove unsupported characters, then re-run the crawl.
Cross-check the file manager after the crawl to confirm the object now appears once renamed.
2
Specific buckets missing from the crawl results while other buckets in the same account are crawled successfully
The crawling process does not fail entirely when a permission is missing on a given bucket; instead, the specific bucket lacking one or more required permissions (ListBucket, GetBucketLocation, GetBucketTagging, GetObject) is skipped, while buckets with complete permissions continue to be crawled normally.
Resolution:
Review the IAM policy attached to the service account/access key and compare it against the required permission list documented for the connector.
Ensure each required permission is granted on the specific bucket resource (ARN) that needs to be crawled, not only at the account level.
Re-run the crawl job after updating the policy and confirm the previously missing bucket now appears in the file manager.
3
Certain files not appearing in the catalog after a crawl, even though they exist in the source bucket
Cataloging is governed entirely by the list of supported file extensions configured under connection settings. Any file extension not present in this configured list is excluded from cataloging by default.
Resolution:
Navigate to the connection settings and review the list of configured file type extensions.
Add the required file extension to the supported file types list if it is missing.
Re-run the crawl. Note that adding an extension enables cataloging only and does not automatically enable profiling for that file type.
1
Files are cataloged successfully but profiling results (row/column statistics) are not generated
Cataloging and profiling are handled as two separate capabilities. Profiling is supported only for a limited set of file types (approximately five to six formats), regardless of how many extensions have been added for cataloging purposes.
Resolution:
Confirm whether the file type in question falls within the officially supported profiling formats.
If the file type is outside the supported profiling list, cataloging will continue to function, but profiling results should not be expected.
Where profiling is required, convert or standardize the source file to one of the supported formats.
FAQs
1
What is the difference between Role-Based Authentication and IAM User Authentication?
Two authentication types are available:
Role-Based Authentication uses AWS credentials to access resources either directly or by assuming an IAM role:
If the Role ARN is left blank, the connector uses the AWS credentials available to the application host.
If a Role ARN is specified, the connector uses the host credentials to assume the specified IAM role and obtains temporary credentials.
The Bridge can run in either mode, regardless of whether the Bridge is hosted on AWS or outside AWS.
IAM User Authentication uses an Access Key ID and Secret Access Key associated with an IAM user. These credentials can be used regardless of where the application or Bridge is hosted.
The Access Key ID and Secret Access Key do not display the IAM user's name. AWS uses these credentials to identify the IAM principal and apply the permissions defined by the associated IAM policies.
2
What happens if the Region field is left empty?
The Region field is not mandatory. If left empty, US East (the default AWS region, us-east-1) is automatically selected and used to establish the connection client.
Specifying a region does not limit crawling to buckets in that region. Buckets and folders from other regions are also crawled.
Leaving the region field empty does not affect the connection or crawling process. All accessible buckets and folders are crawled regardless of their region.
The region value is primarily used by the backend to initialize the AWS client connection.
3
What is a Cross-Account Role (ARN), and when is it required?
A Cross-Account Role becomes necessary when the buckets that need to be crawled exist in a different AWS account than the one hosting the application. In this scenario:
The AWS administrator must set up a trust policy between the two accounts, allowing the hosting account to assume a role in the account where the buckets reside.
The resulting Role ARN is then entered in the connection details.
This field is not mandatory - if left blank, the default permissions already assigned to the hosting account are used instead.
This requirement applies equally to both IAM User Authentication and Role-Based Authentication.
If a bridge is being used, the same cross-account permission setup must also be replicated on the bridge side.
1
What is Amazon S3, and how are buckets, folders, and files represented?
Amazon S3 (Simple Storage Service) is a cloud storage service used to store objects in AWS. Structurally:
A bucket is the top-level container and is treated the same as a folder.
Folders inside a bucket are also treated as folders - there is no separate naming convention for buckets versus folders.
Individual objects inside folders are treated as standard files.
This consistent folder/file structure is intentional - using a different naming convention for buckets would create confusion, so the same two object types (folder and file) apply across all file-based connectors.
2
What is the Filter Tag field, and how does it work?
The Filter Tag field allows crawling to be limited to a specific subset of buckets rather than every bucket in the AWS account. Key points:
Tags are configured directly in the AWS environment at the bucket level, in a key=value format (for example,
team=financeorregion=Virginia).The exact same key=value tag must be entered in the connection details to filter for matching buckets.
If no tag is entered, every bucket in the account is included in the crawl, without any filtering applied.
If a tag is entered, only buckets carrying that exact tag in AWS will be crawled; buckets without a matching tag are skipped automatically (this is expected behavior, not an error).
Tags are commonly used in AWS to classify resources (for example, by department, environment, or cost center), and this same tagging structure is being leveraged here purely to control which buckets get crawled.
3
How are Excel (XLSX) files handled during cataloging?
Excel files are cataloged using a subfile structure. Each sheet within an XLSX file is treated as an individual, separate file. For example, a workbook containing ten sheets will be cataloged as ten separate file entries rather than a single combined file.
4
Are Delta Crawl, Query Sheet, and Automatic Lineage available for the S3 connector?
No, none of these three capabilities are available for this connector:
Delta Crawl is not supported.
Query Sheet is not available since S3 is not a relational database (RDBMS).
Automatic Lineage is not generated; however, manual lineage can still be created by directly linking files to relevant lineage objects.
5
What naming restrictions apply to buckets and files?
Bucket and file names should not contain a semicolon or extra/trailing spaces. Objects with these characters in their names will not be crawled successfully and will be excluded without a hard failure being raised.
1
What is the difference between a file being "cataloged" and a file being "profiled"?
These are two separate, independent processes:
Cataloging simply lists and records the file's existence (name, location, type) and depends entirely on whether that file extension has been added to the supported file types list in connection settings.
Profiling analyzes the actual data inside the file (row counts, column statistics, data quality) and is only available for a limited set of supported file formats (approximately five to six types), regardless of how many extensions are enabled for cataloging.
Adding a new file extension to the settings enables cataloging of that file type but does not automatically enable profiling for it.
Which file formats are supported for profiling?
Profiling is supported for the following file formats:
CSV
XLS
XLSX
JSON
Parquet
ORC
Avro
YAML/YML
PIP
Note: Profiling uses DuckDB for supported file-based data.
Copyright © 2026, OvalEdge LLC, Peachtree Corners GA USA
Last updated
Was this helpful?

