Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Biblioteca de autenticación de Microsoft (MSAL) Python admite dos tipos de aplicaciones cliente: aplicaciones cliente públicas y aplicaciones cliente confidenciales. Los tipos de cliente se distinguen por su capacidad de autenticarse de forma segura ante el servidor de autorización y de conservar información confidencial que permita acreditar la identidad, de modo que no pueda ser accesible ni conocida por un usuario dentro del ámbito de su acceso. En este artículo se centra en cómo inicializar estas aplicaciones mediante MSAL Python.
Prerequisites
Comprenda los conceptos básicos de las aplicaciones cliente públicas y confidenciales.
Instanciar una aplicación
Necesita un registro de aplicación para iniciar una aplicación. Registre una aplicación en el Centro de administración Microsoft Entra. Desde la página de registro, necesitará lo siguiente:
- Identificador del cliente de la aplicación. Se trata de una cadena con formato de GUID.
- La dirección URL del proveedor de identidades (la instancia) y la audiencia de inicio de sesión de su aplicación. Estos dos parámetros se conocen colectivamente como autoridad.
- Si es necesario, el identificador del inquilino (también un GUID) en caso de que vaya a escribir una aplicación de negocio destinada únicamente a su organización (también conocida como una aplicación para un único inquilino).
- Si va a crear una aplicación cliente confidencial, cree un secreto de aplicación en forma de cadena o certificado.
- En el caso de las aplicaciones web, establezca la dirección URL de redireccionamiento que Microsoft Entra ID usa para devolver el código. En el caso de las aplicaciones de escritorio, agregue
http://localhostsi no confía en agentes de autenticación.
Creación de instancias de una aplicación cliente pública
Las aplicaciones cliente públicas usan la PublicClientApplication clase .
import msal
app = msal.PublicClientApplication(
"client_id",
authority="authority",
)
Creación de una instancia de una aplicación cliente confidencial
Las aplicaciones cliente confidenciales usan la ConfidentialClientApplication clase .
import msal
app = msal.ConfidentialClientApplication(
"client_id",
authority="authority",
client_credential="client_secret",
)
Caching
Al crear una instancia de una aplicación cliente, hay dos parámetros que puede usar para definir las preferencias de almacenamiento en caché. Estos parámetros son: token_cache y http_cache.
- token_cache establece la caché de tokens usada por la instancia de aplicación cliente. De forma predeterminada, se crea y usa una caché en memoria. Para obtener más información, consulte almacenamiento en caché de tokens en MSAL Python.
- http_cache está disponible en MSAL Python versión 1.16 y posteriores. Esto almacena automáticamente en caché un número finito de respuestas HTTP no conectadas, por lo que las instancias PublicClientApplication y ConfidentialClientApplication de larga duración serían más eficaces y con capacidad de respuesta en algunas situaciones. Si no se proporciona el parámetro http_cache , MSAL usa un dict en memoria. Si su aplicación es una aplicación de línea de comandos (CLI), le interesará que su http_cache se mantenga entre diferentes ejecuciones de la CLI. Para obtener más información, consulte la guía de referencia.