Registro de un cliente de OAuth (OAuth)

Registre un cliente OAuth para generar credenciales para acceder al servidor A2A de Oracle Autonomous AI Database y activar la autenticación segura para la integración de cliente A2A.

Nota

Nota: solo el usuario ADMIN de la base de datos puede crear credenciales de cliente.

Punto final

POST https://dataaccess.adb.{region-identifier}.oraclecloudapps.com/adb/auth/v1/connect/databases/{database-ocid}/register
  1. Envíe una solicitud POST al punto final de registro para {database-ocid}.

  2. Proporcione la carga útil de solicitud con el URI de redirección y el nombre del cliente. La carga útil de solicitud soporta el atributo client_secret_expires_in_mins opcional para controlar el tiempo de caducidad del secreto de cliente de OAuth.

    Cuerpo de solicitud

    {
      "redirect_uris": ["{customer-provided-redirect-url}"],
      "client_name": "{customer-provided-client name}",
      "client_secret_expires_in_mins": 123456
    }

    Sustituya los marcadores de posición por sus valores específicos.

    • redirect_uris: URL donde el proveedor de OAuth 2.0 u OpenID Connect redirige a los usuarios después de la autenticación correcta

    • client_name: nombre definido por el usuario para identificar el cliente (por ejemplo, DbA2AClient)
    • client_secret_expires_in_mins: (opcional) número de minutos antes de que caduque el secreto de cliente. Si se omite, el secreto de cliente no caduca. Especifique un entero positivo. No se admite el valor 0.
  3. Revise la respuesta de registro y registre las credenciales de cliente generadas.

    Formato de Respuesta

    {
    "client_name": "{customer-provided-client name}",
    "client_id": "{generated-client-id}",
    "client_secret": "{generated-client-secret}",
    "client_id_issued_at": {issue-timestamp},
    "client_secret_expires_at": {expiration-timestamp},
    "redirect_uris": ["{customer-provided-redirect-url}"],
    "response_types": ["code"],
    "grant_types": [
                "authorization_code",
                "refresh_token"
                    ],
    "token_endpoint_auth_method": "client_secret_post",
    "scope": "openid"
    }

    La respuesta incluye los valores client_id y client_secret generados, que son necesarios para la autenticación OAuth. Si el secreto de cliente tiene una hora de caducidad, client_secret_expires_at contiene el registro de hora de caducidad. client_secret_expires_at es un registro de hora absoluto que representa el número de segundos desde la época de Unix (1 de enero de 1970, UTC) cuando caduca el secreto de cliente. Un valor de 0 significa que el secreto no caduca.

  4. Almacene las credenciales de cliente de OAuth devueltas y redirija los URI de forma segura.

  5. Utilice los valores devueltos client_id, client_secret y redirect_uris para configurar la autenticación OAuth en agentes de cliente A2A.

Ejemplo: registro de un cliente OAuth (OAuth)

curl -X POST 'https://dataaccess.adb.{region-identifier}.oraclecloudapps.com/adb/auth/v1/connect/databases/{database-ocid}/register' \
  -u 'db-admin-username:password' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -d '{
    "redirect_uris": ["{customer-provided-redirect-url}"],
    "client_name": "{customer-provided-client name}",
    "client_secret_expires_in_mins": 123456
  }'

Respuesta para la solicitud de cliente de OAuth:

{
  "client_name": "DbA2AClient",
  "client_id": "ocid1.a2a.client.oc1..exampleuniqueID",
  "client_secret": "AbCdEf1234567890SecretValue",
  "client_id_issued_at": 1712345678,
  "client_secret_expires_at": 0,
  "redirect_uris": ["https://myapp.example.com/oauth/callback"],
  "response_types": ["code"],
  "grant_types": [
    "authorization_code",
    "refresh_token"
		],
  "token_endpoint_auth_method": "client_secret_post",
  "scope": "openid"
}

Configurar cliente de OAuth mediante la respuesta de registro: la respuesta de API devuelve las credenciales de cliente de OAuth (como client_id y client_secret) y los URI de redirección para el cliente registrado.

Utilice client_id, client_secret y redirect_uris devueltos para configurar la autenticación OAuth en los agentes de cliente A2A (por ejemplo, la aplicación empresarial Google Gemini u otro cliente compatible con A2A). Consulte Configuración del agente mediante Google Marketplace (administrador) y Configuración del agente personalizado (administrador) para obtener más información.