# Autenticación

MoreLogin utiliza diferentes métodos de autenticación para sus dos tipos de API.

## Autenticación de API local

La API local se ejecuta en `http://127.0.0.1:40000` y solo se puede acceder a ella desde la máquina local.

### Modo predeterminado (sin autenticación)

De forma predeterminada, la API local no requiere autenticación. Puedes realizar solicitudes directamente:

```bash
curl -X POST http://127.0.0.1:40000/api/env/page \
  -H "Content-Type: application/json" \
  -d '{
    "pageNo": 1,
    "pageSize": 10
  }'
```

### Habilitar la autenticación

Para mayor seguridad, puede habilitar la autenticación de API local en el cliente MoreLogin:

1. Abra el cliente MoreLogin
2. Vaya a **Configuración** → **API y MCP**
3. Habilite **Autenticación de API local**
4. Copie el token de autorización generado


![Habilitar autenticación de API local](/assets/image.590455fe8c04c7aec45454ddba2524af46ee8128e15fbef43221c071f4863f91.ca9235dd.png)

Después de habilitarlo, incluya el encabezado `Authorization` en todas las solicitudes:

```bash
curl -X POST http://127.0.0.1:40000/api/env/page \
  -H "Content-Type: application/json" \
  -H "Authorization: YOUR_AUTH_TOKEN" \
  -d '{
    "pageNo": 1,
    "pageSize": 10
  }'
```

> **Nota de seguridad**: La API local solo está disponible en `localhost`. No se puede acceder a él de forma remota.


## Autenticación de API abierta (OAuth2)

Open API utiliza el flujo de credenciales del cliente OAuth2 para autenticar solicitudes.

> Abrir punto final del servidor API: `https://api.morelogin.com`


### Paso 1: Obtenga ID de API y clave de API

1. Abra el cliente MoreLogin
2. Vaya a **Configuración** → **API y MCP**
3. Copie el **ID de API** y la **Clave de API**


ID y clave de API
### Paso 2: Obtenga el token de acceso

Cambie su ID de API y clave de API por un token de acceso:

```bash
curl -X POST https://api.morelogin.com/oauth2/token \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "YOUR_API_ID",
    "client_secret": "YOUR_API_KEY",
    "grant_type": "client_credentials"
  }'
```

**Respuesta de muestra:**

```json
{
    "code": 0,
    "msg": null,
    "data": {
        "scope": "cloudphone",
        "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOi...",
        "token_type": "Bearer",
        "expires_in": 3600,
        "client_metadata": {
            "name": "Example Team"
        }
    },
    "requestId": "4b727b1d53a445d0a46389465b562360"
}
```

### Paso 3: use el token de acceso

Incluya el token de acceso en el encabezado `Authorization` para todas las solicitudes de Open API:

```bash
curl -X POST https://api.morelogin.com/cloudphone/app/page \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{
    "pageNum": 1,
    "pageSize": 10
  }'
```

> **Nota**: Los tokens de acceso caducan después de **3600 segundos** (1 hora). Solicite un nuevo token cuando caduque el actual.


## Comparación de autenticación

| Característica | API locales | API abierta |
|  --- | --- | --- |
| **Método** | Token estático (opcional) | token de acceso OAuth2 |
| **Vida útil del token** | Permanente (hasta que se regenere) | 1 hora |
| **Dónde conseguir** | MásConfiguración del cliente de inicio de sesión | ID de API de Exchange + clave |
| **Formato de encabezado** | CODIGO_PH_0 | CODIGO_PH_0 |
| **Requerido** | Opcional (se puede desactivar) | Siempre requerido |