Microsoft 365 - Credenciales¶
Utiliza el complemento BotCity para Credenciales de Microsoft para autenticar tu cuenta y poder utilizar los servicios de Microsoft 365.
Warning
Para poder utilizar este complemento, necesitas tener una cuenta de Microsoft 365 con un proyecto creado y configurado correctamente.
Para más detalles, consulta la sección Creación de Credenciales de Microsoft 365.
Instalación¶
Importando el Complemento¶
Después de instalar este paquete, el siguiente paso es importar el paquete en tu código y comenzar a utilizar las funciones.
Configurando las credenciales del proyecto¶
Primero, autentiquemos nuestra cuenta de Microsoft 365 utilizando las credenciales del proyecto creadas en la sección Creación de Credenciales de Microsoft 365.
En este punto, necesitaremos la información que extrajimos durante el proceso, el ID de la Aplicación (cliente) y el Valor del Secreto del proyecto.
Definiendo alcances y autenticando¶
En este paso, definiremos el alcance de los servicios que queremos utilizar.
Para definir los alcances que se utilizarán, utilizaremos los permisos que agregamos al proyecto como referencia.
Puedes crear una lista de alcances utilizando los valores definidos en la clase Scopes
, la siguiente tabla describe los alcances disponibles:
Alcance | Descripción |
---|---|
Scopes.BASIC |
Autenticación básica, utilizada para los permisos User.Read , offline_access |
Scopes.FILES_READ |
Utilizado para el permiso Files.Read.All |
Scopes.FILES_READ_WRITE_ALL |
Utilizado para el permiso Files.ReadWrite.All |
Scopes.SITES_READ_ALL |
Utilizado para el permiso Sites.Read.All |
Scopes.SITES_READ_WRITE_ALL |
Utilizado para el permiso Sites.ReadWrite.All |
Scopes.MAIL_READ |
Utilizado para el permiso Mail.Read |
Scopes.MAIL_SEND |
Utilizado para el permiso Mail.Send |
Scopes.MAIL_READ_WRITE |
Utilizado para el permiso Mail.ReadWrite (leer, escribir y enviar correos) |
Important
Al instanciar el complemento, la lista de alcances debe coincidir con los permisos agregados al proyecto.
Este paso es esencial para asegurar que no haya problemas de permisos al utilizar las APIs.
from botcity.plugins.ms365.credentials import MS365CredentialsPlugin, Scopes
# Instantiate the plugin
service = MS365CredentialsPlugin(
client_id='<APPLICATION ID>',
client_secret='<SECRET VALUE>',
)
# Defining the scopes list
scopes_list = [Scopes.BASIC, Scopes.FILES_READ_WRITE_ALL, Scopes.MAIL_READ_WRITE]
service.authenticate(scopes=scopes_list)
Tip
El alcance FILES_READ_WRITE_ALL
que se refiere al permiso Files.ReadWrite.All
, ya es suficiente para utilizar los servicios de OneDrive y Excel.
Los alcances de ejemplo anteriores serían suficientes para utilizar los servicios de OneDrive, Excel y Outlook.
Finalizando el flujo de autenticación¶
Warning
En la primera ejecución, es necesario que el proceso se realice manualmente para que se genere el archivo de token.
Para las ejecuciones posteriores, la autenticación se realiza automáticamente si el archivo de token ya existe y sigue siendo válido.
En este punto, al ejecutar el código por primera vez, se mostrará un enlace en la terminal que debe abrirse en el navegador.
En el navegador abierto, debes iniciar sesión en tu cuenta de Microsoft que se está utilizando, copiar la URL completa que se generó y pegarla en la terminal donde ejecutaste el código.
La URL generada será algo como esto:
Después de eso, se creará un archivo llamado o365_token.txt
.
Este archivo se utilizará para las siguientes autenticaciones, no es necesario realizar este proceso nuevamente hasta que el token expire.
Utilizando los servicios de Microsoft 365¶
En este punto, ya tienes una instancia de MS365CredentialsPlugin
correctamente configurada.
Puedes acceder directamente a las APIs a través de la propiedad ms365_account
, o utilizar esta instancia del complemento al instanciar los complementos de OneDrive, Excel y Outlook.