---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# AuthCredential - com escopo

# AuthCredential - com escopo {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 min. de leitura

A API AuthCredential() fornece métodos que permitem criar credenciais para uma solicitação REST.  
Gere solicitações de assinatura de saída usando essas APIs na seguinte ordem:

1. HttpRequestData: crie a solicitação de API.
2. AuthCredential: crie um objeto de credencial ou atualize um existente. Use a credencial para assinar a solicitação por meio da classe RequestAuthAPI.
3. RequestAuthAPI: assine a solicitação e retorne um objeto HttpRequestAuthedData.
4. HttpRequestAuthedData: obtenha informações sobre a solicitação assinada.
5. GlideHTTPRequest: envia a solicitação assinada.
{#AuthCredentialAPI__ol_gvv_22t_tjb}

Antes de usar essas APIs, você deve [configurar um algoritmo de autenticação](https://www.servicenow.com/docs/access?context=configure-authentication-algorithm&version=xanadu&pubname=xanadu-platform-security&ft:locale=en-US) para assinar a solicitação e associá-la à credencial usada para autenticar a solicitação.

Você pode criar um objeto AuthCredential vazio, instanciar um objeto AuthCredential existente ou usar a classe StandardCredentialsProvider para instanciar um objeto AuthCredential usando um registro de credencial da tabela Credentials \[discovery_credentials\]. Se você criar um objeto AuthCredential vazio, use o método setAttribute() para adicionar propriedades ao objeto. {#AuthCredentialAPI__p_mpf_pjx_zjb}  
O exemplo a seguir mostra como instanciar um AuthCredential usando StandardCredentialsProvider:

    // Return an AuthCredential object using a Credential sys_id
    var credential = new sn_cc.StandardCredentialsProvider().getAuthCredentialByID("5b61c16f73533300f662cff8faf6a74b");

Use a API AuthCredential em scripts com escopo com o identificador de namespace `sn_auth`.

## AuthCredential - AuthCredential (objeto authCredential) {#ariaid-title2}

Instancia um novo objeto AuthCredential ou modifica um existente.
Você pode criar um objeto AuthCredential vazio, instanciar um objeto AuthCredential existente ou usar a classe StandardCredentialsProvider para instanciar um objeto AuthCredential usando um registro de credencial da tabela Credentials \[discovery_credentials\]. Se você criar um objeto AuthCredential vazio, use o método setAttribute() para adicionar propriedades ao objeto.
{#AuthCredential-AuthCredential_O__table_sjv_2sx_5jb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| authCredential | Objeto | Opcional. Inclua este parâmetro para atualizar um objeto AuthCredential existente. |
[Tabela 1. Parâmetros]

{#AuthCredential-AuthCredential_O__table_sjv_2sx_5jb}

## AuthCredential - getAttribute(cadeia de caracteres chave) {#ariaid-title3}

Retorna o valor de um atributo AuthCredential.
{#AuthCredential-getAttribute_S__table_ss5_hsx_5jb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| chave | Cadeia de caracteres | Chave do atributo para o qual o valor será retornado. Se você criou um objeto AuthCredential vazio, deverá usar o método setAttribute() para adicionar propriedades ao objeto. Se você usou um registro de credencial para instanciar o objeto AuthCredential, passe um nome de campo da tabela Credencial \[discovery_credentials\] para acessar o valor. |
[Tabela 2. Parâmetros]

{#AuthCredential-getAttribute_S__table_ss5_hsx_5jb} {#AuthCredential-getAttribute_S__table_ts5_hsx_5jb__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 3. Retorna]

{#AuthCredential-getAttribute_S__table_ts5_hsx_5jb}  

    // Define the HttpRequestData object
    var endpoint= "https://third-party-endpoint";
    var httpRequestData = new sn_auth.HttpRequestData();
    httpRequestData.setEndpoint(endpoint);
    httpRequestData.setService('s3');
    httpRequestData.setRegion('us-east-1');
    httpRequestData.setHttpMethod("PUT");
    var content = "Action=SendMessage&MessageBody=This is a test message";
    httpRequestData.setContent(content);
    httpRequestData.addHeader('x-amz-acl', 'public-read' );
     
    // Get AuthCredential object and set an attribute
    var credential = new sn_auth.AuthCredential();
    credential.setAttribute("user_name", "admin");
     
    // Sign the request and return an AuthCredential attribute value
    var signingAPI = new sn_auth.RequestAuthAPI(httpRequestData, credential);
    var signingCredential = signingAPI.getAuthCredential();
    name = signingCredential.getAttribute("name");

## AuthCredential - setAttribute(Chave de cadeia de caracteres, Valor de cadeia de caracteres) {#ariaid-title4}

Define um atributo para um objeto AuthCredential.
{#AuthCredential-setAttribute_S_S__table_off_jsx_5jb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| chave | Cadeia de caracteres | Nome do atributo a ser definido. Se você criou um objeto AuthCredential vazio, deverá usar o método this para adicionar propriedades ao objeto. Se você usou um registro de credencial para instanciar o objeto AuthCredential, passe um nome de campo da tabela Credencial \[discovery_credentials\] para definir o valor. |
| valor | Cadeia de caracteres | Valor do atributo. |
[Tabela 4. Parâmetros]

{#AuthCredential-setAttribute_S_S__table_off_jsx_5jb} {#AuthCredential-setAttribute_S_S__table_pff_jsx_5jb__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 5. Retorna]

{#AuthCredential-setAttribute_S_S__table_pff_jsx_5jb}  

    // Define the HttpRequestData object
    var endpoint= "https://third-party-endpoint";
    var httpRequestData = new sn_auth.HttpRequestData();
    httpRequestData.setEndpoint(endpoint);
    httpRequestData.setService('s3');
    httpRequestData.setRegion('us-east-1');
    httpRequestData.setHttpMethod("PUT");
    var content = "Action=SendMessage&MessageBody=This is a test message";
    httpRequestData.setContent(content);
    httpRequestData.addHeader('x-amz-acl' , 'public-read' );
     
    // Get AuthCredential object and set an attribute
    var credential = new sn_auth.AuthCredential();
    credential.setAttribute("user_name", "admin");


