Table of contents
TOC
Collapse the table of content
Expand the table of content
Última actualización: 25/07/2018

Entender la autenticación con las API de Office 365

Se aplica a: Office 365

Para que su aplicación obtenga acceso a los datos de Office 365 de un usuario, su aplicación debe probar antes que es la aplicación que dice ser y que tiene permiso para acceder a los datos del usuario. Este tema proporciona una breve introducción sobre cómo los servicios de Office 365 implementan este proceso de autenticación e incluye sugerencias sobre recursos donde puede obtener más información sobre el manejo de la autenticación para sus aplicaciones.

Conceptos de autenticación

Antes de analizar la autorización, hay varios términos con los que debe estar familiarizado.

  • Autenticación se refiere a verificar la identidad de una aplicación o usuario.

    Todas las cuentas de usuario, registros de aplicaciones y permisos se almacenan en Azure AD. Esto le permite proporcionar credenciales de inicio de sesión y ser confirmado como un usuario válido.

    Para obtener información sobre la autenticación, consulte Escenarios de autenticación para Azure AD.

  • Autorización es el proceso de conceder acceso a los recursos, así como especificar el nivel de acceso permitido.

    Por ejemplo, su aplicación puede necesitar acceso para enumerar los eventos de calendario de un usuario. Cuando especifica Permiso delectura para el calendario, la aplicación tendrá permiso para generar una lista de los eventos del calendario del usuario.

    Para obtener más información sobre la autorización, consulte Utilice Active Directory para la autenticación en Azure App Service

  • Consentimiento, como la autorización, se refiere a conceder permiso para que una aplicación o usuario use ciertos recursos. Da al usuario la oportunidad de conceder o denegar el acceso a recursos específicos.

    Un ejemplo es cuando un usuario instala una aplicación. El marco de consentimiento le preguntará al usuario si desea permitir que la aplicación acceda a su buzón. El usuario verá la solicitud para que la aplicación acceda a su buzón de correo en un cuadro de diálogo. El usuario acepta o rechaza la solicitud.

Office 365 usa Azure AD para la autenticación

Los servicios API de Office 365 utilizan Azure Active Directory (Azure AD) para proporcionar autenticación segura a los datos de Office 365 de los usuarios. Azure AD implementa flujos de autorización según el Protocolo OAuth 2.0.

Por lo tanto, permitir que su aplicación se autentique para acceder a los datos de Office 365 consta de dos pasos básicos:

  • Registrar su aplicación con Azure AD
  • Implemente código en su aplicación que maneje el flujo de autenticación apropiado

Registre su aplicación con Azure AD para acceder a los servicios API de Office 365

Cuando crea una aplicación que necesita acceso a los servicios API de Office 365, debe buscar el modo de hacer al servicio que su aplicación tiene derechos para acceder a ella. Las API de Office 365 usan Azure AD para proporcionar servicios de autenticación que usted puede usar para conceder derechos a la aplicación para acceder a esos servicios.

Para permitir que su aplicación tenga acceso a las API de Office 365, necesita registrar su aplicación con Azure AD. El registro de su aplicación le permite:

  • Establecer una identidad para su aplicación. Esto incluye una ID de cliente, un identificador único para su aplicación dentro de Azure.
  • Especificar el/los puntos de conexión de la aplicación que Azure utilizará para el redireccionamiento durante la autenticación.
  • Especificar a qué recursos necesita acceder y establecer niveles de permisos, o ámbitos, para acceder a esos recursos.

    Para obtener una lista completa de los ámbitos de la API de Office 365 disponibles, consulte Referencia de permisos de API de Office 365.

Información general sobre el flujo de autenticación

Azure AD implementa el Protocolo OAuth 2.0 para autorizar el acceso desde su aplicación a los recursos de Office 365. El protocolo OAuth 2.0 define varios flujos de autorización. El flujo que implemente variará según el tipo de aplicación que cree, ya sea una aplicación web, como una solución MVC o Web Forms, o una aplicación nativa, como un smartphone u otro dispositivo móvil.

Como introducción, a continuación se muestra una descripción más específica de un flujo de autenticación típico; en este caso, el flujo de concesión de código de autorización, que a menudo se usa para aplicaciones web.

El manejo correcto de la autorización en su aplicación requiere que usted comprenda el flujo de autenticación para su tipo de aplicación. Para obtener información detallada acerca de cómo Azure AD implementa OAuth 2.0, consulte OAuth 2.0 en Azure AD.

Ejemplo: flujo de concesión de código de autorización

DescripciónFlujo
El usuario visita su aplicación web, que requiere información de Office 365. Su aplicación los redirecciona al punto de conexión de autenticación de Azure AD.El usuario llama a la aplicación y la aplicación llama al extremo de autorización en Azure AD.

El usuario autentica y concede el consentimiento, si la aplicación está configurada con derechos de acceso restringido.

Azure AD emite un código de autorización. Los códigos de autorización se utilizan para solicitar códigos de acceso para recursos específicos.

Después de que el usuario dé el consentimiento, Azure AD emite un código de autorización para la aplicación.

Después de que su aplicación tenga el código de autorización, la aplicación puede solicitar tokens de acceso y actualización. Su aplicación pasa el código de autorización al extremo de emisión del token de Azure AD.

Azure AD devuelve tokens de acceso y actualización.

La aplicación pasa el código de autorización a Azure AD y Azure AD devuelve un token de acceso y actualización a la aplicación.

Su aplicación puede usar los tokens de acceso y actualización para acceder a los puntos de conexión de la API de Office 365 y devolver datos.

Su aplicación puede presentar estos tokens, en nombre del usuario, a los servicios de la API de Office 365. El recurso especificado devuelve entonces la información solicitada por la aplicación.

Después, la aplicación usa los tokens de acceso y el token de actualización para acceder a los extremos de la API de Office 365.

Para reducir el número de llamadas que una aplicación debe realizar a Azure AD, y también para reducir el número de autorizaciones que debe realizar un usuario, el servicio de autorización emite un token de actualización de múltiples recursos. Después de recibir este token de actualización, se puede usar para solicitar tokens de acceso (y tokens de actualización adicionales) a múltiples recursos.

Para obtener más información sobre los tokens de actualización, vea Tokens de actualización para recursos múltiples.

Explorar cómo funciona OAuth 2.0 en el espacio aislado para OAuth de Office 365

Si desea explorar cómo funciona OAuth 2.0 con las API REST de Office 365, hemos creado una aplicación web, la Espacio aislado para OAuth de Office 365, que le permite observar los mensajes y tokens pasados ​​mientras la aplicación se autentica con Azure AD. También puede realizar llamadas de muestra a las API de Office 365 y observar los datos devueltos. Para obtener más información sobre el uso del Espacio aislado, consulte OAuth2 en acción con el calendario, los contactos y el correo de Office 365.

Ejemplos de código API de Office 365 que implementan autorización

Los Repositorio para desarrolladores de Office en GitHub incluyen numerosos ejemplos de códigos que acceden a las API de Office 365 mediante Azure AD, que incluyen:

Además, la Guía del desarrollador de Azure Active Directory incluye inicios rápidos y tutoriales que ilustran cómo implementar la autenticación Azure AD en varias plataformas para desarrolladores, incluyendo iOS, Android, .NET, Xamariny Cordova.

Recursos adicionales

© 2018 Microsoft