En este tema, aprenderá cómo obtener un client_id
y client_secret
utilizando curl
y la API de OAuth. Su client_id y client_secret se utilizan para obtener un access_token, que proporciona la autorización para realizar una llamada a una API de Brightcove en particular. Puede ver un ejemplo de cómo se recupera el access_token en el Inicio rápido de OAuth.
Resumen
El mejor y primer paso para comprender la información de este documento es mirar la Descripción general de OAuth si aún no lo ha hecho.
También hay una interfaz de usuario para obtener la client_id
y client_secret
:
Requisitos
- Una cuenta de Video Cloud válida
- Una cuenta Perform válida
- Habilidad para correr
curl
desde una línea de comando (ver el nota sobrecurl
sobre)
Resumen
Conseguir el client_id
y client_secret
es solo una llamada POST al servicio OAuth, pero deberá tener su identificación de cuenta y también su BC_TOKEN
, que puede encontrar en una cookie temporal cuando inicia sesión en Studio.
Nota: La BC_TOKEN
value es un conjunto de cookies cuando abre Studio. No tiene relación con los tokens de administración de API con los que trabaja en Studio.
Pasos
Conseguir su BC_TOKEN
y número de cuenta
Deberá iniciar sesión en Studio para obtener su BC_TOKEN
.
- Inicie sesión en Studio como lo hace normalmente.
- Necesita su número de cuenta (denominado ID de editor en Studio), que puede obtener yendo al perfil de su cuenta en Studio:
- Con cualquier página de Studio abierta, abra las herramientas de desarrollo para el navegador, vaya a la Consola y pegue el siguiente código:
y presione regreso.
- Debería ver aparecer un mensaje que contiene su
BC_TOKEN
: - Si tiene su BC_TOKEN, vaya a la Obtenga las credenciales del cliente sección; Si por alguna razón no obtuvo su BC_TOKEN siguiendo los pasos anteriores, simplemente vaya a la Consola, escriba
document.cookie
y presione regresar. - Todas las cookies de la página se devolverán en una lista separada por punto y coma. Busque la cookie BC_TOKEN en la lista y copie el valor:
Obtener client_credentials
Ahora estamos listos para realizar la llamada al servicio OAuth para recuperar las credenciales del cliente. Tenemos que especificar un nombre de aplicación cliente para el que estamos solicitando credenciales (el nombre es arbitrario, con la intención de ayudarlo a realizar un seguimiento de para qué son las credenciales) y aquí solo usaremos "AnalyticsClient". También tenemos que especificar el alcance de las operaciones a las que queremos acceder, y aquí usaremos video-nube / reproductor / todos
realizar / jugador / todo
(para la API de administración de jugadores). Ver Operaciones de API para solicitudes de credenciales de cliente para obtener una lista de todas las operaciones admitidas actualmente.
- Edite el siguiente comando curl, luego péguelo en la línea de comando y presione Regreso. Debe proporcionar sus valores específicos para los siguientes tres valores:
- tu BC_TOKEN
- su nombre de credencial
- su identificación de cuenta
curl \ --include \ --header "Authorization: BC_TOKEN YOUR_BC_TOKEN" \ --data {'name=YOUR_CREDENTIAL_NAME_GOES_HERE&maximum_scope=[{ "identity": { "type": "video-cloud-account","type": "perform-account", "account-id": YOUR_ACCOUNT_ID }, "operations": [ "LIST_OF_OPERATIONS"[1] ] }]'} \ https://oauth.brightcove.com/v4/client_credentials
[1] Ver Operaciones API para las operaciones disponibles.
- La respuesta debería verse así (formato agregado):
{ "client_secret":"HHxp9xn0yxMqktLEG2DhzjYB4g6AN2cl02KudMvfK-3dT6JRtiR1tUZ7LiwtHI5vqo4VT7LuD6tM4c0llEw2Rw", "issued_at":"2014-08-11T17:37:24Z", "name":"Test Client", "redirect_url":null, "description_html":"My my test players app", "issued_to":"your email address", "client_id":"9309bb5d-90fb-4d3a-aba4-1795dd5fa0b8", "maximum_scope":[{ "identity":{"type":"video-cloud-account"perform-account, "account-id":57838016001}, "operations":["video-cloud/player/all"]["perform/player/all"] }], "trusted":null, "type":"credential", "description":"My my test players app", "expires_at":null, "revoked":null, "name_html":"Test Client", "issued_user":53255203001 }
- Copie y guarde el
client_id
yclient_secret
, ya que los necesitará cada vez que necesite obtener unaccess_token
.