---
schema_version: "1"
id: 83faa98ead48c2407e6607963cb78c682cdf8c5cd15a615f52b8367960be60da
title: External Storage Search Prerequisites
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/aps_external_storage_search_prereq.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.aps_external_storage_search_prereq.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 71ef3570058ccf5910057bd16e55a8623934402a72e3f801567724d6a88016eb
description: Before you configure semantic search, complete the prerequisites.
products:
  - Public Sector
release: "264"
---
# External Storage Search Prerequisites

Before you configure semantic search, complete the prerequisites.

## Prepare Your AWS and External Storage Setup

- Configure Amazon S3 external storage for your Salesforce org. See [Set Up Amazon S3](https://help.salesforce.com/s/articleView?id=ind.psc_set_up_amazon_s3.htm&release=264.0.0&type=5 "Before you set up Salesforce connection to Amazon S3, make sure that you complete the required setup on Amazon S3.").
- Set up file access for users. See [Set Up File Access in Amazon S3](https://help.salesforce.com/s/articleView?id=ind.psc_external_storage_access_setup.htm&release=264.0.0&type=5 "Set up Amazon S3 and use Files Connect to set up Amazon S3 as an external storage system in Salesforce.").
- Verify that you have an AWS account with permissions to create IAM roles and policies, S3 buckets, Lambda functions, and resources for Amazon Bedrock or Amazon Kendra.
- Select an AWS Region and use the same region for all related resources, including the S3 bucket, knowledge base or index, and Lambda functions. If you use Amazon Bedrock, confirm that the required models are available in your region. See [Model support by AWS Region](https://docs.aws.amazon.com/bedrock/latest/userguide/models-regions.html) in the AWS documentation.
- Create or identify the source S3 bucket and block public access to it. For Amazon Bedrock requirements, see [Connect to Amazon S3 for your knowledge base](https://docs.aws.amazon.com/bedrock/latest/userguide/s3-data-source-connector.html) in the AWS documentation.
- Verify that the applicable S3 bucket or IAM policy grants permission to write metadata files. If users have read-only access to the bucket, add a policy statement that grants `s3:PutObject` access only to metadata files.

Sample policy statement:

Replace `YOUR-BUCKET-NAME` with the name of your S3 bucket.

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowWriteToMetadataJsonOnly",
      "Effect": "Allow",
      "Action": ["s3:PutObject"],
      "Resource": "arn:aws:s3:::YOUR-BUCKET-NAME/*metadata.json"
    }
  ]
}
```

## Enable Semantic Search

Turn on semantic search to activate the

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
          <colgroup>
            <col style="width:50%">
            <col style="width:50%">
          </colgroup>
          <thead class="slds-text-title_caps ">
            <tr class="">
              <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d125875e127">User Permissions
                Needed</th>
            </tr>
          </thead>
          <tbody>
            <tr class="">
              <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d125875e127 ">To enable semantic search</td>

              <td class="slds-cell-wrap" style="vertical-align:top;" headers="d125875e127 ">Customize Application</td>

            </tr>
          </tbody>
        </table>

1. From Setup, in the Quick Find box, enter External Storage Settings, and then select **External Storage Settings**.
2. Turn on LSearch files in Amazon S3 using semantic search.
3. Allow sufficient time for externally stored files to be indexed before you test the search results.

## Assign User Permissions

Assign the required permission to users who need to search files in Amazon S3.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
          <colgroup>
            <col style="width:50%">
            <col style="width:50%">
          </colgroup>
          <thead class="slds-text-title_caps ">
            <tr class="">
              <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d125875e201">User Permissions Needed</th>
            </tr>
          </thead>
          <tbody>
            <tr class="">
              <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d125875e201 ">To enable External Storage Search:</td>

              <td class="slds-cell-wrap" style="vertical-align:top;" headers="d125875e201 ">Customize Application</td>

            </tr>
          </tbody>
        </table>

1. From Setup, in the Quick Find box, enter Permission Sets, and then select **Permission Sets**.
2. Open the permission set that you created for accessing Amazon S3 files.
    
    For example, AmazonS3 User Access.
    
    ![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-public_sector_solutions-264-0-0-production-enus/25746429-1b1c-4bf3-b014-cf92f9531212/images/icon_note.png)
    
    Note If the permission set for user access to Amazon S3 doesn't exist, create it. See [Create and Assign User Permissions to Access Files in Amazon S3](https://help.salesforce.com/s/articleView?id=ind.psc_create_and_assign_admin_permissions_to_access_files_in_amazon_s3.htm&language=en_US&type=5).
3. Click **System Permissions**, then click **Edit**.
4. Select **Search Files in Amazon S3**.
5. Save your changes.
6. Click **Manage Assignments**, click **Add Assignments**, select users for the permission set, and then click **Assign**.