> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# base44 auth sso

> Configura um provedor de identidade SSO (Single Sign-On) para seu aplicativo. Suporta Google, Microsoft, GitHub, Okta e provedores OIDC personalizados. As alterações na configuração de autenticação são locais até você executar base44 auth push o...

<Warning>
  Esta página faz parte de uma habilidade de agente de código IA e é escrita para agentes, não para humanos. Para a documentação legível por humanos da Base44, veja a [documentação para desenvolvedores](/developers).
</Warning>

# base44 auth sso

Configura um provedor de identidade SSO (Single Sign-On) para seu aplicativo. Suporta Google, Microsoft, GitHub, Okta e provedores OIDC personalizados. As alterações na configuração de autenticação são locais até você executar `base44 auth push` ou `base44 deploy`.

## Sintaxe

```bash theme={null}
npx base44 auth sso <action> [options]
```

## Argumentos

| Argumento  | Descrição             | Obrigatório |
| ---------- | --------------------- | ----------- |
| `<action>` | `enable` ou `disable` | Sim         |

## Opções (enable)

| Opção                       | Descrição                                                                 | Obrigatório                  |
| --------------------------- | ------------------------------------------------------------------------- | ---------------------------- |
| `--provider <provider>`     | Provedor SSO: `google`, `microsoft`, `github`, `okta`, `custom`           | Sim (enable)                 |
| `--client-id <id>`          | ID do cliente OAuth                                                       | Sim (enable)                 |
| `--client-secret <secret>`  | Segredo do cliente OAuth                                                  | Não\*                        |
| `--client-secret-stdin`     | Lê o segredo do cliente do stdin                                          | Não\*                        |
| `--env-file <path>`         | Lê o segredo do cliente de um arquivo `.env` (chave: `sso_client_secret`) | Não\*                        |
| `--file <path>`             | Arquivo de configuração JSON com todas as configurações SSO               | Não                          |
| `--scope <scope>`           | Escopo OAuth (padrões por provedor)                                       | Não                          |
| `--discovery-url <url>`     | URL de descoberta OIDC                                                    | Não                          |
| `--tenant-id <id>`          | ID do tenant Microsoft                                                    | Obrigatório para `microsoft` |
| `--okta-domain <domain>`    | Domínio Okta                                                              | Obrigatório para `okta`      |
| `--auth-endpoint <url>`     | Endpoint de autorização                                                   | Obrigatório para `custom`    |
| `--token-endpoint <url>`    | Endpoint de token                                                         | Obrigatório para `custom`    |
| `--userinfo-endpoint <url>` | Endpoint de userinfo                                                      | Obrigatório para `custom`    |
| `--jwks-uri <url>`          | URI JWKS                                                                  | Obrigatório para `custom`    |
| `--sso-name <name>`         | Nome de exibição do provedor                                              | Obrigatório para `custom`    |

\*O segredo do cliente deve ser fornecido via `--client-secret`, `--client-secret-stdin`, `--env-file` ou a variável de ambiente `sso_client_secret`.

## Exemplos

```bash theme={null}
# Ativa Google SSO
npx base44 auth sso enable --provider google --client-id my-id --client-secret my-secret

# Ativa Microsoft SSO (ID do tenant obrigatório)
npx base44 auth sso enable --provider microsoft --client-id my-id --client-secret my-secret --tenant-id my-tenant

# Ativa GitHub SSO
npx base44 auth sso enable --provider github --client-id my-id --client-secret my-secret

# Ativa Okta SSO (domínio Okta obrigatório)
npx base44 auth sso enable --provider okta --client-id my-id --client-secret my-secret --okta-domain mycompany.okta.com

# Ativa provedor OIDC personalizado
npx base44 auth sso enable --provider custom \
  --client-id my-id --client-secret my-secret \
  --sso-name "My IdP" \
  --auth-endpoint https://idp.example.com/authorize \
  --token-endpoint https://idp.example.com/token \
  --userinfo-endpoint https://idp.example.com/userinfo \
  --jwks-uri https://idp.example.com/.well-known/jwks.json

# Lê o segredo do cliente do stdin
echo "my-secret" | npx base44 auth sso enable --provider google --client-id my-id --client-secret-stdin

# Carrega todas as configurações de um arquivo de configuração JSON
npx base44 auth sso enable --file sso-config.json

# Desativa SSO
npx base44 auth sso disable
```

## Formato do arquivo de configuração JSON

Use `--file` para fornecer todas as configurações de um arquivo JSON:

```json theme={null}
{
  "provider": "google",
  "clientId": "my-client-id",
  "clientSecret": "my-client-secret",
  "scope": "openid email profile"
}
```

As flags passadas junto com `--file` sobrescrevem os valores do arquivo. Não pode ser combinado com `--env-file`.

## Notas

* As alterações são gravadas na configuração local `base44/auth/`. Execute `npx base44 auth push` ou `npx base44 deploy` para aplicá-las.
* **SSO e login social são mutuamente exclusivos** — ativar SSO desativa qualquer configuração de login social ativa na configuração local de autenticação.
* `disable` remove SSO da configuração local e exclui as credenciais SSO armazenadas da Base44.
* Desativar SSO quando nenhum outro método de login está ativo avisará que os usuários serão bloqueados.
* O segredo do cliente é armazenado no armazenamento de segredos da Base44, não no arquivo de configuração de autenticação local.

## Comandos relacionados

| Comando                      | Descrição                                                 |
| ---------------------------- | --------------------------------------------------------- |
| `base44 auth social-login`   | Ativa ou desativa provedores de login social              |
| `base44 auth password-login` | Ativa ou desativa autenticação de nome de usuário e senha |
| `base44 auth push`           | Envia a configuração de autenticação local para a Base44  |
| `base44 auth pull`           | Extrai a configuração de autenticação da Base44           |

<Note>Esta página foi traduzida usando IA. Para informações mais precisas e atualizadas, consulte a [versão em inglês](/). </Note>
