

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Conectar-se ao Salesforce para obter sua base de conhecimento
<a name="salesforce-data-source-connector"></a>

O Salesforce é uma ferramenta de gerenciamento de relacionamento com o cliente (CRM) para gerenciar equipes de suporte, vendas e marketing. [Você pode se conectar à sua instância do Salesforce para sua base de conhecimento do Amazon Bedrock usando o console de [AWS gerenciamento do Amazon Bedrock](https://console.aws.amazon.com/bedrock/home) ou a API [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)(consulte os SDKs compatíveis com o Amazon Bedrock e). AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html)

**nota**  
O conector de fonte de dados do Salesforce está em versão prévia e está sujeito a alterações.  
As fontes de dados do Salesforce não permitem dados multimodais, como tabelas, gráficos, diagramas ou outras imagens.

Atualmente, somente o armazenamento vetorial Amazon OpenSearch Serverless está disponível para uso com essa fonte de dados.

Há limites para quantos arquivos e MB por arquivo podem ser rastreados. Consulte [Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html).

**Topics**
+ [Recursos compatíveis](#supported-features-salesforce-connector)
+ [Pré-requisitos](#prerequisites-salesforce-connector)
+ [Configuração de conexão](#configuration-salesforce-connector)

## Recursos compatíveis
<a name="supported-features-salesforce-connector"></a>
+ Detecção automática dos campos de documento principais
+ Inclusion/exclusion filtros de conteúdo
+ Sincronizações de conteúdo incrementais para conteúdo adicionado, atualizado e excluído
+ Autenticação OAuth 2.0:

## Pré-requisitos
<a name="prerequisites-salesforce-connector"></a>

**No Salesforce, não se esqueça de**:
+ Anotar o URL da instância do Salesforce. Por exemplo, .{{https://company.salesforce.com/}} A instância deve estar executando uma aplicação conectada ao Salesforce.
+ Crie uma aplicação conectada ao Salesforce e configure as credenciais do cliente. Em seguida, para a aplicação selecionada, copie a chave do consumidor (ID do cliente) e a senha do consumidor (senha do cliente) das configurações do OAuth. Para obter mais informações, consulte a documentação do Salesforce em [Create a Connected App](https://help.salesforce.com/s/articleView?id=sf.connected_app_create.htm&type=5) e [Configure a Connected App for the OAuth 2.0 Client Credentials](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5).
**nota**  
Para aplicações conectadas ao Salesforce, em Fluxo de credenciais do cliente, não se esqueça de pesquisar e selecionar o nome do usuário ou o alias das credenciais de cliente no campo “Executar como”.

**Em sua AWS conta, certifique-se de**:
+ Armazenar as credenciais de autenticação em um [segredo do AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html) e anotar o nome do recurso da Amazon (ARN) do segredo. Seguir as instruções de **Configuração da conexão** nesta página para incluir os pares de chave-valor que devem ser incluídos no segredo.
+ Inclua as permissões necessárias para se conectar à sua fonte de dados na role/permissions política AWS Identity and Access Management (IAM) da sua base de conhecimento. Para obter informações sobre as permissões necessárias para que essa fonte de dados seja adicionada à sua IAM função na base de conhecimento, consulte [Permissões para acessar fontes de dados](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds).

**nota**  
Se você usa o console, pode adicionar seu segredo ou usar um segredo existente como parte da etapa de configuração da fonte de dados. AWS Secrets Manager A IAM função com todas as permissões necessárias pode ser criada para você como parte das etapas do console para criar uma base de conhecimento. Depois de configurar sua fonte de dados e outras configurações, a IAM função com todas as permissões necessárias é aplicada à sua base de conhecimento específica.  
É recomendável atualizar ou alternar regularmente suas credenciais e senhas. Forneça somente o nível de acesso necessário para sua própria segurança. Não é recomendável reutilizar credenciais e senhas em fontes de dados.

## Configuração de conexão
<a name="configuration-salesforce-connector"></a>

Para se conectar à instância do Salesforce, você deve fornecer as informações de configuração necessárias para que o Amazon Bedrock possa acessar e rastrear os dados. Você também deve seguir os [Pré-requisitos](#prerequisites-salesforce-connector).

Um exemplo de configuração dessa fonte de dados está incluído nesta seção.

Para obter mais informações sobre detecção automática de campos de documentos, inclusion/exclusion filtros, sincronização incremental, credenciais de autenticação secreta e como elas funcionam, selecione o seguinte:

### Detecção automática dos campos de documento principais
<a name="ds-salesforce-document-fields"></a>

O conector da fonte de dados detecta e rastreia automaticamente todos os campos de metadados principais dos documentos ou do conteúdo. Por exemplo, o conector da fonte de dados pode rastrear o corpo do documento equivalente aos documentos, o título do documento, a data de criação ou de modificação do documento ou outros campos principais que possam ser aplicados aos documentos.

**Importante**  
Se o seu conteúdo incluir informações confidenciais, Amazon Bedrock poderá responder usando informações confidenciais.

Você pode aplicar operadores de filtragem aos campos de metadados para ajudar a aumentar ainda mais a relevância das respostas. Por exemplo, o documento “epoch\_modification\_time” ou o número de segundos transcorridos desde 1.º de janeiro de 1970, quando o documento foi atualizado pela última vez. Você pode filtrar os dados mais recentes, em que “epoch\_modification\_time” *é maior que* um determinado número. Para obter mais informações sobre os operadores de filtragem que podem ser aplicados aos campos de metadados, consulte [Metadados e filtragem](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html).

### Inclusion/exclusion filtros
<a name="ds-salesforce-inclusion-exclusion"></a>

É possível incluir ou excluir o crawling de determinado conteúdo. Por exemplo, você pode especificar um padrão de prefix/regular expressão de exclusão para ignorar o rastreamento de qualquer arquivo que contenha “privado” no nome do arquivo. Você também pode especificar um padrão de prefix/regular expressão de inclusão para incluir determinadas entidades de conteúdo ou tipos de conteúdo. Se você especificar um filtro de inclusão e de exclusão e ambos corresponderem a um documento, o filtro de exclusão terá precedência e o documento não será rastreado.

Um exemplo de um padrão de expressão regular para excluir ou filtrar campanhas que contenham “private” no nome da campanha: *“.\*private.\*”*

Você pode aplicar inclusion/exclusion filtros nos seguintes tipos de conteúdo:
+ `Account`: Conta number/identifier
+ `Attachment`: nome do arquivo anexado com sua extensão
+ `Campaign`: nome da campanha e identificadores associados
+ `ContentVersion`: versão do documento e identificadores associados
+ `Partner`: campos de informações do parceiro, inclusive identificadores associados
+ `Pricebook2`: nome Product/price da lista
+ `Case`: inquiry/issue Número do cliente e outros campos de informações, incluindo identificadores associados (observe: podem conter informações pessoais, que você pode optar por excluir ou filtrar)
+ `Contact`: campos de informações do cliente (observação: podem conter informações pessoais, que você pode optar por excluir ou filtrar).
+ `Contract`: nome do contrato e identificadores associados.
+ `Document`: nome do arquivo com a extensão.
+ `Idea`: campos de informações da ideia e identificadores associados.
+ `Lead`: novos campos de informações do cliente em potencial (observação: podem conter informações pessoais, que você pode optar por excluir ou filtrar).
+ `Opportunity`: campos de sale/deal informações pendentes e identificadores associados
+ `Product2`: campos de informações do produto e identificadores associados.
+ `Solution`: nome da solução para um cliente inquiry/issue e identificadores associados
+ `Task`: campos de informações da tarefa e identificadores associados.
+ `FeedItem`: identificador da publicação do feed do chatter.
+ `FeedComment`: identificador da publicação do feed do chatter à qual os comentários pertencem.
+ `Knowledge__kav`: título do artigo de conhecimento.
+ `User`: alias do usuário dentro da organização.
+ `CollaborationGroup`: nome do grupo do chatter (exclusivo).

### Sincronização incremental
<a name="ds-salesforce-incremental-sync"></a>

O conector da fonte de dados rastreia conteúdo novo, modificado e excluído sempre que sua fonte de dados é sincronizada com sua base de conhecimento. Amazon Bedrock pode usar o mecanismo da sua fonte de dados para rastrear alterações no conteúdo e rastrear o conteúdo que foi alterado desde a última sincronização. Ao sincronizar a fonte de dados com a base de conhecimento pela primeira vez, todo o conteúdo é rastreado por padrão.

Para sincronizar sua fonte de dados com sua base de conhecimento, use a [StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html)API ou selecione sua base de conhecimento no console e selecione **Sincronizar** na seção de visão geral da fonte de dados.

**Importante**  
Todos os dados que você sincroniza na fonte de dados ficam disponíveis para qualquer pessoa com permissões `bedrock:Retrieve` para recuperá-los. Isso também pode incluir quaisquer dados com permissões de fonte de dados controladas. Para obter mais informações, consulte [Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html).

### Credenciais de autenticação secreta
<a name="ds-salesforce-secret-auth-credentials"></a>

(Para autenticação OAuth 2.0) As credenciais de autenticação secreta no AWS Secrets Manager devem incluir estes pares de chave-valor:
+ `consumerKey`: {{app client ID}}
+ `consumerSecret`: {{app client secret}}
+ `authenticationUrl`: {{Salesforce instance URL or the URL to request the authentication token from}}

**nota**  
Seu segredo AWS Secrets Manager deve usar a mesma região da sua base de conhecimento.

------
#### [ Console ]

**Conectar uma instância do Salesforce à base de conhecimento**

1. Siga as etapas em [Crie uma base de conhecimento conectando-se a uma fonte de dados nas Bases de Conhecimento do Amazon Bedrock](knowledge-base-create.md) e escolha o **Salesforce** como fonte de dados.

1. Forneça um nome e uma descrição opcional para a fonte de dados.

1. Forneça o URL da instância do Salesforce. Por exemplo, .{{https://company.salesforce.com/}} A instância deve estar executando uma aplicação conectada ao Salesforce.

1. Na seção **Configurações avançadas**, você pode, opcionalmente, configurar o seguinte:
   + **Chave do KMS para armazenamento de dados temporário.** — Você pode criptografar os dados transitórios enquanto converte seus dados em incorporações com a chave padrão Chave gerenciada pela AWS ou sua própria chave KMS. Para obter mais informações, consulte [Criptografia de armazenamento de dados temporário durante a ingestão de dados](encryption-kb.md#encryption-kb-ingestion).
   + **Política de exclusão de dados**: você pode excluir as incorporações de vetores da sua fonte de dados que estão armazenadas no armazenamento de vetores por padrão ou optar por reter os dados do armazenamento de vetores.

1. Forneça as informações de autenticação para se conectar à instância do Salesforce:

   1. Para a autenticação OAuth 2.0, acesse AWS Secrets Manager para adicionar suas credenciais de autenticação secreta ou usar um Amazon Resource Name (ARN) existente para o segredo que você criou. O segredo deve conter a chave de consumidor da aplicação conectada ao Salesforce (ID do cliente), a senha do consumidor (senha do cliente) e o URL da instância do Salesforce ou o URL do qual solicitar o token de autenticação. Para obter mais informações, consulte a documentação do Salesforce em [Create a Connected App](https://help.salesforce.com/s/articleView?id=sf.connected_app_create.htm&type=5) e [Configure a Connected App for the OAuth 2.0 Client Credentials](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5).

1. (Opcional) Na seção **Análise e fragmentação de conteúdo**, você pode personalizar a forma de analisar e fragmentar seus dados. Consulte os seguintes recursos para saber mais sobre essas personalizações:
   + Para ter mais informações sobre as opções de análise, consulte [Opções de análise para a fonte de dados](kb-advanced-parsing.md).
   + Para ter mais informações sobre fragmentação, consulte [Como a fragmentação de conteúdo funciona para bases de conhecimento](kb-chunking.md).
**Atenção**  
Não será possível alterar a estratégia de fragmentação após a conexão da fonte de dados.
   + Para ter mais informações sobre como personalizar a fragmentação de dados e o processamento de metadados com uma função do Lambda, consulte [Usar uma função do Lambda de transformação personalizada para definir como os dados são ingeridos](kb-custom-transformation.md).

1. Escolha usar padrões de filters/regular expressões para incluir ou excluir determinados conteúdos. Caso contrário, todo o conteúdo padrão será rastreado.

1. Continue escolhendo um modelo de incorporação e um armazenamento de vetores. Para ver as etapas restantes, retorne a [Crie uma base de conhecimento conectando-se a uma fonte de dados nas Bases de Conhecimento do Amazon Bedrock](knowledge-base-create.md) e continue após a etapa de conexão da fonte de dados.

------
#### [ API ]

Este é um exemplo de uma configuração para conexão ao Salesforce para a base de conhecimento do Amazon Bedrock. Você configura sua fonte de dados usando a API com o SDK compatível AWS CLI ou compatível, como Python. Depois de ligar [CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html), você liga [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)para criar sua fonte de dados com suas informações de conexão`dataSourceConfiguration`.

Para saber mais sobre personalizações que você pode aplicar à ingestão incluindo o campo opcional `vectorIngestionConfiguration`, consulte [Personalizar a ingestão para uma fonte de dados](kb-data-source-customize-ingestion.md).

**AWS Command Line Interface**

```
aws bedrock create-data-source \
 --name "Salesforce connector" \
 --description "Salesforce data source connector for Amazon Bedrock to use content in Salesforce" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://salesforce-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE" \
 --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}'

salesforce-bedrock-connector-configuration.json
{
    "salesforceConfiguration": {
        "sourceConfiguration": {
            "hostUrl": "https://company.salesforce.com/",
            "authType": "OAUTH2_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Salesforce"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "Campaign",
                            "inclusionFilters": [
                                ".*public.*"
                            ],
                            "exclusionFilters": [
                                ".*private.*"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "SALESFORCE"
}
```

------