Autenticación en las API de Vonage Business Communications
Una vez que haya creó su aplicacióny suscrito a la API de aprovisionamiento estás listo para crear un token de acceso. Las API de Vonage Business Communications utilizan OAuth para la autenticación.
Creación de claves de autenticación
Inicie sesión en Portal para desarrolladores de Business Communications utilizando sus credenciales de desarrollador.
Seleccione Applications en el menú de navegación superior.
En el Aplicaciones localice su aplicación en la tabla y haga clic en la aplicación. nombre enlace.
Seleccione Claves de producción en el menú de navegación de la izquierda:

Nota: El tipo de subvención por defecto es
Password. En tipo de subvención es el método que utiliza OAuth para generar un token de acceso. Cuando cree una aplicación de producción, normalmente querrá utilizarCodepara autenticar las solicitudes. La direcciónRefresh Tokencreará un nuevo token cuando expire el actual.Si
Codeseleccionado, en el URL de devolución de llamada introduzca una URL de devolución de llamada válida que su aplicación utilizará para recibir el código generado. Si aún no ha creado su aplicación, introduzcahttp://localhostpor ahora y recuerde introducir la URL correcta cuando esté listo para probarlo.Nota: Si usted está planeando utilizar el tipo de concesión de contraseña para su aplicación no tendrá que utilizar una URL de devolución de llamada para recuperar el token como lo haría utilizando el flujo de código de autorización. Si utiliza la concesión de contraseña, puede dejarla en blanco.
Haga clic en el botón Generar claves botón. Esto genera el Clave del consumidor y Secreto del consumidor que su aplicación utilizará para solicitar un token.
Tipos de subvenciones subvencionadas
Vonage Business Communications admite los siguientes tipos de otorgamiento para generar tokens de acceso.
- Código de autorización - El tipo de concesión Código de autorización es utilizado por clientes confidenciales y públicos para intercambiar un código de autorización por un token de acceso. Después de que el usuario vuelva al cliente a través de la URL de redirección, la aplicación obtendrá el código de autorización de la URL y lo utilizará para solicitar un token de acceso.
- Contraseña - El tipo de concesión Contraseña es una forma de intercambiar las credenciales de un usuario por un token de acceso.
¿Cuándo utilizar el tipo de concesión de contraseña?
El tipo de concesión Contraseña requiere que la aplicación recopile la contraseña del usuario. Se recomienda utilizar el tipo de concesión Contraseña únicamente para habilitar aplicaciones de servidor a servidor en las que no sea necesario recopilar credenciales de usuario.
- Mira el Ejemplos de puntos finales y Generación de tokens de acceso para aprender a solicitar el código de autenticación e intercambiarlo por un token de acceso:
En producción, debe utilizar la función código_autorización tipo de subvención (Code) y es la única opción que aparece en la pestaña Mis Applications en apimanager.uc.vonage.com. En Code requiere que tu aplicación implemente una URL de devolución de llamada válida para recuperar el código de autorización de los servidores de Vonage e intercambiarlo por un token. Consulta los ejemplos de puntos finales en la pestaña Mis aplicaciones para aprender a crear las solicitudes de autorización y token.
Autenticación con concesión de código de autorización
Advertencia: SSO no es compatible en este momento
El siguiente ejemplo muestra cómo obtener un authorization_code a través del punto final authorize.
REDIRECT_URI- La URL a la que redirigir al usuario tras la autenticación.CONSUMER_KEY- La clave de consumidor que generó en el paso 5 anterior
El siguiente ejemplo muestra cómo intercambiar un código de autorización por un token a través del punto final de token
AUTHORIZATION_CODE- El código recibido por elredirect_uridespués de iniciar sesión con éxito.REDIRECT_URI- La URL a la que redirigir al usuario después de intercambiar el código de autorización.AUTHORIZATION- Un token codificado en Base64 de las credenciales de la aplicación en el formato$CONSUMER_KEY:$CONSUMER_SECRET.
Después de intercambiar el token recibirá una respuesta JSON con el campo access_token incrustado en él. Necesita este token para utilizar las API de Account, Extension y User:
{
"access_token":"xyz123eyJ4NQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFemhrWmciLCJraWQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJhbGciOiJSUzI1NiJ9..gs7JO2RLPFIld7NXM9gnOy9CYaLs_EYXJJilxX76MFBiidoiG9sIW4RkeHLvDVLyFP1eVd_Pt7000wAr13mcXn-6x6D9oJeAH_Iz8nbzd3vmWDZ8VMHf1SueiAaChfvH0yLvwu02sp-QU-tljGYBTJ8Pr1jWQIG-o39XRrBSMis",
"refresh_token":"dde2a67f-d99f-3f03-810b-1fcae59245de",
"scope":"default",
"token_type":"Bearer",
"expires_in":86400
}
Autenticación con concesión de contraseña
Todos los fragmentos de código de la documentación de la API VBC utilizan el método tipo de concesión de contraseña en lugar del recomendado authorization_code para facilitar su ejecución. Este tipo de concesión no requiere que implemente una URL de devolución de llamada. En su lugar, usted proporciona su nombre de usuario y contraseña VBC para solicitar un token.
Sustituya los siguientes marcadores de posición del ejemplo por sus propios valores:
VBC_USERNAME- Tu nombre de usuario de Vonage Business CommunicationsVBC_PASSWORD- Tu contraseña de Vonage Business CommunicationsCONSUMER_KEY- La clave de consumidor que generó en el paso 5 anteriorCONSUMER_SECRET- El Secreto de Consumidor que generó en el paso 5 anterior
Nota: Si utiliza la concesión de contraseña, tendrá que añadir @vbc.prod a tu nombre de usuario.
Advertencia: No utilice las credenciales de su cuenta de desarrollador VBC (*.api) para la solicitud de token. Debe utilizar sus credenciales de usuario VBC para VBC_USERNAME y VBC_PASSWORD.
Cuando lo ejecute, recibirá una respuesta JSON con la información access_token incrustado en él. Necesita este token para utilizar las API de Account, Extension y User:
{
"access_token": "xyz123eyJ4NQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFemhrWmciLCJraWQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJhbGciOiJSUzI1NiJ9..gs7JO2RLPFIld7NXM9gnOy9CYaLs_EYXJJilxX76MFBiidoiG9sIW4RkeHLvDVLyFP1eVd_Pt7000wAr13mcXn-6x6D9oJeAH_Iz8nbzd3vmWDZ8VMHf1SueiAaChfvH0yLvwu02sp-QU-tljGYBTJ8Pr1jWQIG-o39XRrBSMis",
"refresh_token": "abc123-5903-3513-8d27-333daf581837",
"scope": "openid",
"id_token": "abc123eyJ4NQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFemhrWmciLCJraWQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJhbGciOiJSUzI1NiJ9..gs7JO2RLPFIld7NXM9gnOy9CYaLs_EYXJJilxX76MFBiidoiG9sIW4RkeHLvDVLyFP1eVd_Pt7000wAr13mcXn-6x6D9oJeAH_Iz8nbzd3vmWDZ8VMHf1SueiAaChfvH0yLvwu02sp-QU-tljGYBTJ8Pr1jWQIG-o39XRrBSMis",
"token_type": "Bearer",
"expires_in": 82566
}
Expiración de la ficha
- Ficha de acceso - Los tokens de acceso caducan a las 24 horas (86400 segundos). Cuando caduque una clave de acceso, deberá utilizar la clave de actualización con el tipo de concesión de actualización para solicitar una nueva clave de acceso.
- Actualizar ficha - Los tokens de actualización caducan a los 7 días (604800 segundos). Cuando se intercambia una ficha de actualización por una ficha de acceso, la ficha de actualización ya no se puede utilizar y se proporciona una nueva ficha de actualización. Si el código de actualización no se utiliza dentro del plazo de caducidad, deberá volver a autenticarse.
Uso de la ficha de actualización
Cuando el token de acceso caduque, tendrá que regenerar un nuevo token de acceso, utilizando el token de actualización. El token de actualización se enviará la primera vez que realice una solicitud a la aplicación /token punto final.
Para regenerar el token de acceso:
Sustituya los siguientes marcadores de posición del ejemplo por sus propios valores:
VBC_CLIENT_ID- El ID de cliente de su aplicación de desarrolloVBC_CLIENT_SECRET- El secreto de tu aplicación para desarrolladoresREFRESH_TOKEN- El token de actualización de su solicitud inicial para recuperar un token de acceso.
Esto devolverá un nuevo token de acceso y un token de actualización
{
"access_token": "xyz123eyJ4NQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFemhrWmciLCJraWQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJhbGciOiJSUzI1NiJ9..gs7JO2RLPFIld7NXM9gnOy9CYaLs_EYXJJilxX76MFBiidoiG9sIW4RkeHLvDVLyFP1eVd_Pt7000wAr13mcXn-6x6D9oJeAH_Iz8nbzd3vmWDZ8VMHf1SueiAaChfvH0yLvwu02sp-QU-tljGYBTJ8Pr1jWQIG-o39XRrBSMis",
"refresh_token": "abc123-5903-3513-8d27-333daf581837",
"scope": "openid",
"id_token": "abc123eyJ4NXQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJraWQiOiJNemcxTnpZeU5UTXhPR1kxTlRNMU1HUTBPR1ZsTVRnM05XRXlZamRpWVdRNE1XSTFNemhrWmciLCJhbGciOiJSUzI1NiJ9..kpFXRg4qSW9sntliysg-3EGO8KwZ8Vk5jGvOwqq0gJEyPQHL5BQKKrF799VL6Z9OJfCne564N42UWnrQqUmNyU0q8l0td1E3zPA0L5iQQEbaVsbxRf5NCZUwYY9Pb7bXjINCiGF4Xy7wCw2SRpv9iQvg3G68qI5Z8f_25QmxSTY",
"token_type": "Bearer",
"expires_in": 86400
}
Para todas las solicitudes de API posteriores, deberá utilizar este código de acceso. Cuando este token de acceso caduque, tendrá que volver a generar un nuevo token de acceso utilizando el token de actualización más reciente.
Próximos pasos
Ahora que ha creado un token de acceso, está listo para realizar una solicitud API.