

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

# Testar seus autorizadores
<a name="custom-auth-testing"></a>

 Você pode usar a [TestInvokeAuthorizer](https://docs.aws.amazon.com/iot/latest/apireference/API_TestInvokeAuthorizer.html)API para testar a invocação e os valores de retorno do seu autorizador. Essa API permite que você especifique metadados de protocolo e teste a validação da assinatura em seu autorizador.

As guias a seguir mostram como usar o AWS CLI para testar seu autorizador.

------
#### [ Unix-like ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}} \
--token {{TOKEN_VALUE}} --token-signature {{TOKEN_SIGNATURE}}
```

------
#### [ Windows CMD ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}} ^
--token {{TOKEN_VALUE}} --token-signature {{TOKEN_SIGNATURE}}
```

------
#### [ Windows PowerShell ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}} `
--token {{TOKEN_VALUE}} --token-signature {{TOKEN_SIGNATURE}}
```

------

O valor do parâmetro `token-signature` é o token assinado. Para saber como obter esse valor, consulte [Assinatura do token](custom-auth.md#custom-auth-token-signature).

Se seu autorizador usar um nome de usuário e uma senha, você poderá transmitir essas informações usando o parâmetro `--mqtt-context`. As guias a seguir mostram como usar a API `TestInvokeAuthorizer` para enviar um objeto JSON que contém nome de usuário, senha e nome de cliente para o autorizador personalizado.

------
#### [ Unix-like ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}}  \
--mqtt-context '{"username": "{{USER_NAME}}", "password": "dGVzdA==", "clientId":"{{CLIENT_NAME}}"}'
```

------
#### [ Windows CMD ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}}  ^
--mqtt-context '{"username": "{{USER_NAME}}", "password": "dGVzdA==", "clientId":"{{CLIENT_NAME}}"}'
```

------
#### [ Windows PowerShell ]

```
aws iot test-invoke-authorizer --authorizer-name {{NAME_OF_AUTHORIZER}}  `
--mqtt-context '{"username": "{{USER_NAME}}", "password": "dGVzdA==", "clientId":"{{CLIENT_NAME}}"}'
```

------

A senha deve ser codificada por base64. O exemplo a seguir mostra como codificar uma senha em um ambiente semelhante ao Unix.

```
echo -n {{PASSWORD}} | base64
```