

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á.

# ODBC
<a name="query-ODBC"></a>

O [driver ODBC](https://github.com/awslabs/aws-iotsitewise-odbc-driver) de código aberto AWS IoT SiteWise fornece uma interface SQL relacional AWS IoT SiteWise para desenvolvedores e permite a conectividade a partir de ferramentas de business intelligence (BI), como Power BI Desktop e Microsoft Excel. O driver AWS IoT SiteWise ODBC está atualmente disponível no [Windows](https://github.com/awslabs/aws-iotsitewise-odbc-driver/releases) e oferece suporte a SSO com Okta e Microsoft Azure Active Directory (AD).

Para obter mais informações, consulte a [documentação do driver AWS IoT SiteWise ODBC em. GitHub](https://github.com/awslabs/aws-iotsitewise-odbc-driver/blob/main/docs/markdown/index.md)

**Topics**
+ [Sintaxe da string de conexão e opções para o driver ODBC](query-ODBC-connecting.md)
+ [Exemplos de cadeias de conexão para o AWS IoT SiteWise driver ODBC](query-ODBC-connecting-examples.md)
+ [Solução de problemas de conexão com o driver ODBC](query-ODBC-connecting-troubleshooting.md)

# Sintaxe da string de conexão e opções para o driver ODBC
<a name="query-ODBC-connecting"></a>

A sintaxe para especificar as opções de cadeia de conexão para o driver ODBC é a seguinte:

```
Driver={AWS IoT SiteWise ODBC Driver};(option)=(value);
```

As opções disponíveis são as seguintes:

**Opções de conexão do driver**
+ **`Driver`**   *(obrigatório)*   –   O driver que está sendo usado com o ODBC.

  O padrão é AWS IoT SiteWise.
+ **`DSN`**   –   O nome da fonte de dados (DSN) a ser usado para configurar a conexão.

  O padrão é `NONE`.
+ **`Auth`**   –   Modo de autenticação. Este valor deve ser um dos seguintes:
  + `AWS_PROFILE`: use a cadeia de credenciais padrão.
  + `IAM`— Use as credenciais AWS do IAM.
  + `AAD` – Use o provedor de identidade do Azure Active Directory (AD).
  + `OKTA` – Use o provedor de identidade Okta.

  O padrão é `AWS_PROFILE`.

**Opções de configuração do endpoint**
+ **`EndpointOverride`**— A substituição do endpoint para o AWS IoT SiteWise serviço. Essa é uma opção avançada que substitui a região. Por exemplo:

  ```
  iotsitewise.us-east-1.amazonaws.com
  ```
+ **`Region`**— A região de assinatura do endpoint do AWS IoT SiteWise serviço.

  O padrão é `us-east-1`.

**Opção do provedor de credencial**
+ **`ProfileName`**— O nome do perfil no arquivo de AWS configuração.

  O padrão é `NONE`.

**AWS Opções de autenticação do IAM**
+ **`UID`**ou **`AccessKeyId`**— O ID da chave de acesso do AWS usuário. Se ambos `UID` e `AccessKeyId` forem fornecidos na cadeia de conexão, o `UID` valor será usado, a menos que esteja vazio.

  O padrão é `NONE`.
+ **`PWD`** ou **`SecretKey`**   –   A chave de acesso secreta do usuário da AWS. Se ambos `PWD` e `SecretKey` forem fornecidos na string de conexão, o valor `PWD` será usado, a menos que esteja vazio.

  O padrão é `NONE`.
+ **`SessionToken`**   –   O token de sessão temporário necessário para acessar um banco de dados com a autenticação multifator (MFA) habilitada. Não inclua um ` = ` no final da entrada.

  O padrão é `NONE`.

**Opções de autenticação baseadas em SAML para Okta**
+ **`IdPHost`**   –   O nome do host do IdP especificado.

  O padrão é `NONE`.
+ **`UID`** ou **`IdPUserName`**   –   O nome de usuário da conta IdP especificada. Se ambos `UID` e `IdPUserName` forem fornecidos na string de conexão, o valor `UID` será usado, a menos que esteja vazio.

  O padrão é `NONE`.
+ **`PWD`** ou **`IdPPassword`**   –  A senha da conta IdP especificada. Se ambos `PWD` e `IdPPassword` forem fornecidos na string de conexão, o valor `PWD` será usado, a menos que esteja vazio.

  O padrão é `NONE`.
+ **`OktaApplicationID`**— O ID exclusivo fornecido pela Okta associado ao AWS IoT SiteWise aplicativo. Um local para encontrar o ID do aplicativo (AppId) está no `entityID` campo fornecido nos metadados do aplicativo. Um exemplo é:

  ```
  entityID="http://www.okta.com//(IdPAppID)
  ```

  O padrão é `NONE`.
+ **`RoleARN`**   –   O nome do recurso da Amazon (ARN) da função que o autor da chamada deve assumir.

  O padrão é `NONE`.
+ **`IdPARN`**   –   O nome do recurso da Amazon (ARN) do provedor SAML do IAM que descreve o IdP.

  O padrão é `NONE`.

**Opções de autenticação baseada em SAML para Azure Active Directory**
+ **`UID`** ou **`IdPUserName`**   –   O nome de usuário da conta IdP especificada.

  O padrão é `NONE`.
+ **`PWD`** ou **`IdPPassword`**   –  A senha da conta IdP especificada.

  O padrão é `NONE`.
+ **`AADApplicationID`**   –   O ID exclusivo do aplicativo registrado no Azure AD.

  O padrão é `NONE`.
+ **`AADClientSecret`**   –   O segredo do cliente associado ao aplicativo registrado no Azure AD usado para autorizar a busca de tokens.

  O padrão é `NONE`.
+ **`AADTenant`**   –   O ID do locatário do Azure AD.

  O padrão é `NONE`.
+ **`RoleARN`**   –   O nome do recurso da Amazon (ARN) da função que o autor da chamada deve assumir.

  O padrão é `NONE`.
+ **`IdPARN`**   –   O nome do recurso da Amazon (ARN) do provedor SAML do IAM que descreve o IdP.

  O padrão é `NONE`.

**AWS Opções do SDK (avançado)**
+ **`RequestTimeout`**— O tempo em milissegundos em que o AWS SDK espera por uma solicitação de consulta antes de atingir o tempo limite. Qualquer valor não positivo desativa o tempo limite da solicitação.

  O padrão é `3000`.
+ **`ConnectionTimeout`**— O tempo em milissegundos em que o AWS SDK espera que os dados sejam transferidos por uma conexão aberta antes de atingir o tempo limite. Um valor de 0 desativa o tempo limite da conexão. Esse valor deve ser não negativo.

  O padrão é `1000`.
+ **`MaxRetryCountClient`**   –   O número máximo de tentativas para erros que podem ser repetidos com códigos de erro 5xx no SDK. O valor não deve ser negativo.

  O padrão é `0`.
+ **`MaxConnections`**— O número máximo de conexões HTTP abertas simultaneamente com o AWS IoT SiteWise serviço. O valor deve ser positivo.

  O padrão é `25`.

**Opções de log do driver ODBC**
+ **`LogLevel`**   –   O nível de registro para registro do driver. Deve ser um dos seguintes:
  + **0**   (OFF)
  + **1**   (ERROR)
  + **2**   (AVISO)
  + **3**   (INFO.
  + **4**   (DEBUG).

  O padrão é `1` (ERRO).

  **Aviso:** informações pessoais podem ser registradas pelo driver ao usar o modo de registro DEBUG.
+ **`LogOutput`**   –   Pasta na qual armazenar o arquivo de log.

  O padrão é:
  + **Windows:**`%USERPROFILE%`, ou se não estiver disponível, `%HOMEDRIVE%%HOMEPATH%`.
  + **macOS e Linux:**`$HOME`, ou se não estiver disponível, o campo do valor `pw_dir` de `getpwuid(getuid())` retorno da função.

**Opções de registro em log do SDK**

O nível de registro do AWS SDK é separado do nível de registro do driver AWS IoT SiteWise ODBC. Configurar um não afeta o outro.

O nível de log do SDK é definido usando a variável `SW_AWS_LOG_LEVEL` de ambiente. Os valores válidos são:
+ `OFF`
+ `ERROR`
+ `WARN`
+ `INFO`
+ `DEBUG`
+ `TRACE`
+ `FATAL`

Se `SW_AWS_LOG_LEVEL` não estiver definido, o nível de log do SDK será definido como padrão, que é `WARN`.

## Conectar-se por meio de um proxy
<a name="query-ODBC-connecting-proxy"></a>

O driver ODBC oferece suporte à conexão AWS IoT SiteWise por meio de um proxy. Para usar esse atributo, configure as seguintes variáveis de ambiente com base na sua configuração de proxy:
+ **`SW_PROXY_HOST`**   –   o host proxy.
+ **`SW_PROXY_PORT`**   –   o número da porta do proxy.
+ **`SW_PROXY_SCHEME`**   –   O esquema de proxy, `http` ou `https`.
+ **`SW_PROXY_USER`**   –   O nome de usuário a ser usado para a autenticação de proxy.
+ **`SW_PROXY_PASSWORD`**   –  A senha a ser usada para autenticação de proxy.
+ **`SW_PROXY_SSL_CERT_PATH`**   –  O arquivo de certificado SSL a ser usado para se conectar a um proxy HTTPS.
+ **`SW_PROXY_SSL_CERT_TYPE`**   –   O tipo do certificado SSL do cliente proxy.
+ **`SW_PROXY_SSL_KEY_PATH`**   –   O arquivo de chave privada a ser usado para se conectar a um proxy HTTPS.
+ **`SW_PROXY_SSL_KEY_TYPE`**   –  O tipo do arquivo de chave privada usado para se conectar a um proxy HTTPS.
+ **`SW_PROXY_SSL_KEY_PASSWORD`**   –   A frase secreta do arquivo de chave privada usado para se conectar a um proxy HTTPS.

# Exemplos de cadeias de conexão para o AWS IoT SiteWise driver ODBC
<a name="query-ODBC-connecting-examples"></a>

## Exemplo de conexão com o driver ODBC com credenciais do IAM
<a name="query-ODBC-connecting-examples-iam"></a>

```
Driver={AWS IoT SiteWise ODBC Driver};Auth=IAM;AccessKeyId=(your access key ID);SecretKey=(your secret key);SessionToken=(your session token);Region=us-east-1;
```

## Exemplo de conexão com o driver ODBC com um perfil
<a name="query-ODBC-connecting-examples-profile"></a>

```
Driver={AWS IoT SiteWise ODBC Driver};ProfileName=(the profile name);region=us-east-1;
```

O driver tentará se conectar usando as credenciais fornecidas em ou `~/.aws/credentials`, se um arquivo for especificado na variável de ambiente `AWS_SHARED_CREDENTIALS_FILE`, usando as credenciais desse arquivo.

## Exemplo de conexão com o driver ODBC com o Okta
<a name="query-ODBC-connecting-examples-okta"></a>

```
Driver={AWS IoT SiteWise ODBC Driver};Auth=OKTA;region=us-east-1;idPHost=(your host at Okta);idPUsername=(your user name);idPPassword=(your password);OktaApplicationID=(your Okta AppId);roleARN=(your role ARN);idPARN=(your Idp ARN);
```

## Exemplo de conexão com o driver ODBC com o Azure Active Directory (AAD)
<a name="query-ODBC-connecting-examples-aad"></a>

```
Driver={AWS IoT SiteWise ODBC Driver};Auth=AAD;region=us-east-1;idPUsername=(your user name);idPPassword=(your password);aadApplicationID=(your AAD AppId);aadClientSecret=(your AAD client secret);aadTenant=(your AAD tenant);roleARN=(your role ARN);idPARN=(your idP ARN);
```

## Exemplo de conexão com o driver ODBC com um endpoint especificado e um nível de registro de 2 (AVISO)
<a name="query-ODBC-connecting-examples-okta"></a>

```
Driver={AWS IoT SiteWise ODBC Driver};Auth=IAM;AccessKeyId=(your access key ID);SecretKey=(your secret key);EndpointOverride=iotsitewise.us-east-1.amazonaws.com;Region=us-east-1;LogLevel=2;
```

# Solução de problemas de conexão com o driver ODBC
<a name="query-ODBC-connecting-troubleshooting"></a>

**nota**  
Se o nome de usuário e a senha já estiverem especificados no DSN, não os especifique novamente quando o gerenciador do driver ODBC os solicitar.

Um código de erro `01S02` com uma mensagem `Re-writing (connection string option) (have you specified it several times?)` ocorre quando uma opção de cadeia de conexão é passada mais de uma vez na cadeia de conexão. Especificar uma opção mais de uma vez gera um erro. Ao fazer uma conexão com um DSN e uma cadeia de conexão, se uma opção de conexão já estiver especificada no DSN, não a especifique novamente na cadeia de conexão.