> ## 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 un provider di identità SSO (Single Sign-On) per la tua app. Supporta Google, Microsoft, GitHub, Okta e provider OIDC personalizzati. Le modifiche alla configurazione auth sono locali finché non esegui base44 auth push o...

<Warning>
  Questa pagina fa parte di una skill per agenti IA di programmazione ed è scritta per gli agenti, non per gli umani. Per la documentazione Base44 leggibile dagli umani, consulta la [documentazione per sviluppatori](/developers).
</Warning>

# base44 auth sso

Configura un provider di identità SSO (Single Sign-On) per la tua app. Supporta Google, Microsoft, GitHub, Okta e provider OIDC personalizzati. Le modifiche alla configurazione auth sono locali finché non esegui `base44 auth push` o `base44 deploy`.

## Sintassi

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

## Argomenti

| Argomento  | Descrizione          | Obbligatorio |
| ---------- | -------------------- | ------------ |
| `<action>` | `enable` o `disable` | Sì           |

## Opzioni (enable)

| Opzione                     | Descrizione                                                            | Obbligatorio                 |
| --------------------------- | ---------------------------------------------------------------------- | ---------------------------- |
| `--provider <provider>`     | Provider SSO: `google`, `microsoft`, `github`, `okta`, `custom`        | Sì (enable)                  |
| `--client-id <id>`          | Client ID OAuth                                                        | Sì (enable)                  |
| `--client-secret <secret>`  | Client secret OAuth                                                    | No\*                         |
| `--client-secret-stdin`     | Legge il client secret da stdin                                        | No\*                         |
| `--env-file <path>`         | Legge il client secret da un file `.env` (chiave: `sso_client_secret`) | No\*                         |
| `--file <path>`             | File di configurazione JSON con tutte le impostazioni SSO              | No                           |
| `--scope <scope>`           | Scope OAuth (predefiniti per provider)                                 | No                           |
| `--discovery-url <url>`     | URL di discovery OIDC                                                  | No                           |
| `--tenant-id <id>`          | Tenant ID Microsoft                                                    | Obbligatorio per `microsoft` |
| `--okta-domain <domain>`    | Dominio Okta                                                           | Obbligatorio per `okta`      |
| `--auth-endpoint <url>`     | Endpoint di autorizzazione                                             | Obbligatorio per `custom`    |
| `--token-endpoint <url>`    | Endpoint del token                                                     | Obbligatorio per `custom`    |
| `--userinfo-endpoint <url>` | Endpoint userinfo                                                      | Obbligatorio per `custom`    |
| `--jwks-uri <url>`          | JWKS URI                                                               | Obbligatorio per `custom`    |
| `--sso-name <name>`         | Nome visualizzato del provider                                         | Obbligatorio per `custom`    |

\*Il client secret deve essere fornito tramite `--client-secret`, `--client-secret-stdin`, `--env-file` o la variabile d'ambiente `sso_client_secret`.

## Esempi

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

# Enable Microsoft SSO (tenant ID required)
npx base44 auth sso enable --provider microsoft --client-id my-id --client-secret my-secret --tenant-id my-tenant

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

# Enable Okta SSO (Okta domain required)
npx base44 auth sso enable --provider okta --client-id my-id --client-secret my-secret --okta-domain mycompany.okta.com

# Enable custom OIDC provider
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

# Read client secret from stdin
echo "my-secret" | npx base44 auth sso enable --provider google --client-id my-id --client-secret-stdin

# Load all settings from a JSON config file
npx base44 auth sso enable --file sso-config.json

# Disable SSO
npx base44 auth sso disable
```

## Formato del file di configurazione JSON

Usa `--file` per fornire tutte le impostazioni da un file JSON:

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

I flag passati insieme a `--file` sovrascrivono i valori del file. Non può essere combinato con `--env-file`.

## Note

* Le modifiche sono scritte nella configurazione locale `base44/auth/`. Esegui `npx base44 auth push` o `npx base44 deploy` per applicarle.
* **SSO e social login sono mutuamente esclusivi** — abilitare SSO disabilita qualsiasi configurazione di social login attiva nella configurazione auth locale.
* `disable` rimuove SSO dalla configurazione locale ed elimina le credenziali SSO memorizzate da Base44.
* Disabilitare SSO quando nessun altro metodo di login è attivo avviserà che gli utenti saranno bloccati fuori.
* Il client secret è memorizzato nell'archivio secrets di Base44, non nel file di configurazione auth locale.

## Comandi correlati

| Comando                      | Descrizione                                                      |
| ---------------------------- | ---------------------------------------------------------------- |
| `base44 auth social-login`   | Abilita o disabilita i provider di social login                  |
| `base44 auth password-login` | Abilita o disabilita l'autenticazione con nome utente e password |
| `base44 auth push`           | Invia la configurazione auth locale a Base44                     |
| `base44 auth pull`           | Scarica la configurazione auth da Base44                         |

<Note>Questa pagina è stata tradotta utilizzando l'IA. Per informazioni più accurate e aggiornate, consulta la [versione inglese](/). </Note>
