<!-- review: finished -->

<a id="http-auth-basic"></a>

# Auth Basic

Permite limitar o acesso a recursos validando o nome de usuário e senha usando o protocolo "HTTP Basic Authentication".

O acesso também pode ser limitado por [endereço](https://pt.angie.software//angie/docs/configuration/modules/http/http_access.md#http-access) ou pelo
[resultado de subrequest](https://pt.angie.software//angie/docs/configuration/modules/http/http_auth_request.md#http-auth-request). A limitação simultânea de
acesso por endereço e por senha é controlada pela diretiva [satisfy](https://pt.angie.software//angie/docs/configuration/modules/http/index.md#satisfy).

<a id="configuration-example-6"></a>

## Exemplo de Configuração

```nginx
location / {
    auth_basic           "site fechado";
    auth_basic_user_file conf/htpasswd;
}
```

<a id="directives-7"></a>

## Diretivas

<a id="index-0"></a>

<a id="id1"></a>

### auth_basic

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `auth_basic` string | `off`;         |
|-------------------------------------------------------------------------------------------|--------------------------------------|
| Padrão                                                                                    | `auth_basic off;`                    |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | http, server, location, limit_except |

Habilita a validação de nome de usuário e senha usando o protocolo "HTTP Basic Authentication". O parâmetro especificado é usado como realm. O valor do parâmetro pode conter variáveis.

| `off`   | cancela o efeito da diretiva auth_basic herdada do nível de configuração anterior   |
|---------|-------------------------------------------------------------------------------------|

<a id="index-1"></a>

<a id="auth-basic-user-file"></a>

### auth_basic_user_file

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `auth_basic_user_file` arquivo;      |
|-------------------------------------------------------------------------------------------|--------------------------------------|
| Padrão                                                                                    | —                                    |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | http, server, location, limit_except |

Especifica um arquivo que mantém nomes de usuário e senhas. O formato é o seguinte:

```none
# comentário
nome1:senha1
nome2:senha2:comentário
nome3:senha3
```

O nome do arquivo pode conter variáveis.

Os seguintes tipos de senha são suportados:

* criptografadas com a função crypt(); podem ser geradas usando o utilitário `htpasswd` da distribuição do Apache HTTP Server ou o comando "openssl passwd";
* com hash da variante Apache do algoritmo de senha baseado em MD5 (apr1); podem ser geradas com as mesmas ferramentas;
* especificadas pela sintaxe "{scheme}data" conforme descrito na [RFC 2307](https://datatracker.ietf.org/doc/html/rfc2307#section-5.3); esquemas atualmente implementados incluem PLAIN (um exemplo, não deve ser usado), SHA (hash SHA-1 simples, não deve ser usado) e SSHA (hash SHA-1 com salt, usado por alguns pacotes de software, notavelmente OpenLDAP e Dovecot).

#### WARNING
O suporte para o esquema SHA foi adicionado apenas para auxiliar na migração de outros servidores web. Não deve ser usado para novas senhas, pois o hash SHA-1 sem salt que ele emprega é vulnerável a ataques de [rainbow table](http://en.wikipedia.org/wiki/Rainbow_attack).
