ConfidentialClientApplication class
Esta clase se usará para adquirir tokens para aplicaciones cliente confidenciales (webApp, webAPI). Las aplicaciones cliente confidenciales configurarán secretos de aplicación, certificados de cliente o aserciones según corresponda.
- Extends
Constructores
| Confidential |
Constructor para ConfidentialClientApplication Los atributos necesarios en el objeto Configuration son:
En Azure AD, authority es una dirección URL que indica el formato En Azure B2C, la autoridad tiene el formato https://{instance}/tfp/{tenant}/{policyName}/ La funcionalidad B2C completa estará disponible en esta biblioteca en versiones futuras. |
Métodos
| acquire |
Adquiere tokens de la autoridad de la aplicación (no para un usuario final). |
| acquire |
Adquiere tokens de la entidad de la aplicación. Se usa en escenarios en los que la aplicación actual es un servicio de nivel intermedio al que se llamó con un token que representa a un usuario final. La aplicación actual puede usar el token (oboAssertion) para solicitar otro token para acceder a la API web de bajada, en nombre de ese usuario. La aplicación de nivel intermedio actual no tiene ninguna interacción del usuario para obtener el consentimiento. Consulte cómo obtener el consentimiento por adelantado para la aplicación de nivel intermedio de este artículo. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application |
| Set |
Este punto de extensibilidad solo funciona para el flujo de client_credential, es decir, acquireTokenByClientCredential y está diseñado para SDK de Azure para mejorar la compatibilidad con identidades administradas. |
Métodos heredados
| acquire |
Adquiere un token intercambiando el código de autorización recibido del primer paso del flujo de código de autorización de OAuth2.0.
|
| acquire |
Adquiere un token intercambiando el token de actualización proporcionado para un nuevo conjunto de tokens. Esta API solo se proporciona para escenarios en los que desea migrar de ADAL a MSAL. De lo contrario, se recomienda usar |
| acquire |
Adquiere tokens con concesión de contraseña intercambiando el nombre de usuario y la contraseña de las aplicaciones cliente para las credenciales. El procedimiento actual de seguridad de OAuth 2.0 más reciente no permite la concesión de contraseña por completo. Encontrará más información sobre esta recomendación en https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 la documentación y las recomendaciones de Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword |
| acquire |
Adquiere un token de forma silenciosa cuando un usuario especifica la cuenta para la que se solicita el token. Esta API espera que el usuario proporcione un objeto de cuenta y busque la memoria caché para recuperar el token si está presente.
También hay un booleano opcional "forceRefresh" que el usuario puede enviar para omitir la memoria caché de access_token y id_token.
En caso de que el refresh_token haya expirado o no se encuentre, se produce un error y la guía es que el usuario llame a cualquier API de adquisición de tokens interactiva (por ejemplo: |
| clear |
Borrar la memoria caché |
| get |
Crea la dirección URL de la solicitud de autorización, lo que permite al usuario escribir las credenciales y dar su consentimiento a la aplicación. La dirección URL tiene como destino el punto de conexión /authorize de la autoridad configurada en el objeto de aplicación. Una vez que el usuario escriba sus credenciales y consentimientos, la autoridad enviará una respuesta al URI de redireccionamiento enviado en la solicitud y debe contener un código de autorización, que luego se puede usar para adquirir tokens a través |
| get |
Devuelve la instancia del registrador. |
| get |
Obtiene la caché de tokens de la aplicación. |
| set |
Reemplaza el registrador predeterminado establecido en configuraciones por el nuevo registrador por nuevas configuraciones. |
Detalles del constructor
ConfidentialClientApplication(Configuration)
Constructor para ConfidentialClientApplication
Los atributos necesarios en el objeto Configuration son:
- clientID: el identificador de aplicación de la aplicación. Puede obtener uno registrando la aplicación con nuestro portal de registro de aplicaciones.
- authority: la dirección URL de autoridad de la aplicación.
- credencial de cliente: debe establecer el secreto de cliente, el certificado o la aserción para los clientes confidenciales. Puede obtener un secreto de cliente desde el portal de registro de aplicaciones.
En Azure AD, authority es una dirección URL que indica el formato https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.
Si la aplicación admite cuentas en un directorio organizativo, reemplace el valor "Enter_the_Tenant_Info_Here" por el identificador de inquilino o el nombre del inquilino (por ejemplo, contoso.microsoft.com).
Si la aplicación admite cuentas en cualquier directorio organizativo, reemplace el valor de "Enter_the_Tenant_Info_Here" por organizaciones.
Si la aplicación admite cuentas en cualquier directorio organizativo y cuentas de Microsoft personales, reemplace el valor "Enter_the_Tenant_Info_Here" por común.
Para restringir el soporte técnico solo a las cuentas de Personal Microsoft, reemplace el valor de "Enter_the_Tenant_Info_Here" por los consumidores.
En Azure B2C, la autoridad tiene el formato https://{instance}/tfp/{tenant}/{policyName}/ La funcionalidad B2C completa estará disponible en esta biblioteca en versiones futuras.
new ConfidentialClientApplication(configuration: Configuration)
Parámetros
- configuration
- Configuration
Detalles del método
acquireTokenByClientCredential(ClientCredentialRequest)
Adquiere tokens de la autoridad de la aplicación (no para un usuario final).
function acquireTokenByClientCredential(request: ClientCredentialRequest): Promise<null | AuthenticationResult>
Parámetros
- request
- ClientCredentialRequest
Devoluciones
Promise<null | AuthenticationResult>
acquireTokenOnBehalfOf(OnBehalfOfRequest)
Adquiere tokens de la entidad de la aplicación.
Se usa en escenarios en los que la aplicación actual es un servicio de nivel intermedio al que se llamó con un token que representa a un usuario final. La aplicación actual puede usar el token (oboAssertion) para solicitar otro token para acceder a la API web de bajada, en nombre de ese usuario.
La aplicación de nivel intermedio actual no tiene ninguna interacción del usuario para obtener el consentimiento. Consulte cómo obtener el consentimiento por adelantado para la aplicación de nivel intermedio de este artículo. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application
function acquireTokenOnBehalfOf(request: OnBehalfOfRequest): Promise<null | AuthenticationResult>
Parámetros
- request
- OnBehalfOfRequest
Devoluciones
Promise<null | AuthenticationResult>
SetAppTokenProvider(IAppTokenProvider)
Este punto de extensibilidad solo funciona para el flujo de client_credential, es decir, acquireTokenByClientCredential y está diseñado para SDK de Azure para mejorar la compatibilidad con identidades administradas.
function SetAppTokenProvider(provider: IAppTokenProvider)
Parámetros
- provider
- IAppTokenProvider
Detalles de los métodos heredados
acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)
Adquiere un token intercambiando el código de autorización recibido del primer paso del flujo de código de autorización de OAuth2.0.
getAuthCodeUrl(AuthorizationCodeUrlRequest) se puede usar para crear la dirección URL para el primer paso del flujo de código de autorización de OAuth2.0. Asegúrese de que los valores de redirectUri y ámbitos de AuthorizationCodeUrlRequest y AuthorizationCodeRequest son los mismos.
function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>
Parámetros
- request
- AuthorizationCodeRequest
- authCodePayLoad
- AuthorizationCodePayload
Devoluciones
Promise<AuthenticationResult>
Heredado deClientApplication.acquireTokenByCode
acquireTokenByRefreshToken(RefreshTokenRequest)
Adquiere un token intercambiando el token de actualización proporcionado para un nuevo conjunto de tokens.
Esta API solo se proporciona para escenarios en los que desea migrar de ADAL a MSAL. De lo contrario, se recomienda usar acquireTokenSilent() para escenarios silenciosos. Al usar acquireTokenSilent(), MSAL controlará el almacenamiento en caché y la actualización de tokens automáticamente.
function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>
Parámetros
- request
- RefreshTokenRequest
Devoluciones
Promise<null | AuthenticationResult>
Heredado deClientApplication.acquireTokenByRefreshToken
acquireTokenByUsernamePassword(UsernamePasswordRequest)
Advertencia
Esta API ya está en desuso.
- Use a more secure flow instead
Adquiere tokens con concesión de contraseña intercambiando el nombre de usuario y la contraseña de las aplicaciones cliente para las credenciales.
El procedimiento actual de seguridad de OAuth 2.0 más reciente no permite la concesión de contraseña por completo. Encontrará más información sobre esta recomendación en https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 la documentación y las recomendaciones de Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword
function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>
Parámetros
- request
- UsernamePasswordRequest
UsenamePasswordRequest
Devoluciones
Promise<null | AuthenticationResult>
acquireTokenSilent(SilentFlowRequest)
Adquiere un token de forma silenciosa cuando un usuario especifica la cuenta para la que se solicita el token.
Esta API espera que el usuario proporcione un objeto de cuenta y busque la memoria caché para recuperar el token si está presente.
También hay un booleano opcional "forceRefresh" que el usuario puede enviar para omitir la memoria caché de access_token y id_token.
En caso de que el refresh_token haya expirado o no se encuentre, se produce un error y la guía es que el usuario llame a cualquier API de adquisición de tokens interactiva (por ejemplo: acquireTokenByCode()).
function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>
Parámetros
- request
- SilentFlowRequest
Devoluciones
Promise<AuthenticationResult>
Heredado deClientApplication.acquireTokenSilent
clearCache()
getAuthCodeUrl(AuthorizationUrlRequest)
Crea la dirección URL de la solicitud de autorización, lo que permite al usuario escribir las credenciales y dar su consentimiento a la aplicación. La dirección URL tiene como destino el punto de conexión /authorize de la autoridad configurada en el objeto de aplicación.
Una vez que el usuario escriba sus credenciales y consentimientos, la autoridad enviará una respuesta al URI de redireccionamiento enviado en la solicitud y debe contener un código de autorización, que luego se puede usar para adquirir tokens a través acquireTokenByCode(AuthorizationCodeRequest)de .
function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>
Parámetros
- request
- AuthorizationUrlRequest
Devoluciones
Promise<string>
Heredado deClientApplication.getAuthCodeUrl
getLogger()
Devuelve la instancia del registrador.
function getLogger(): Logger
Devoluciones
Heredado deClientApplication.getLogger
getTokenCache()
Obtiene la caché de tokens de la aplicación.
function getTokenCache(): TokenCache
Devoluciones
Heredado deClientApplication.getTokenCache
setLogger(Logger)
Reemplaza el registrador predeterminado establecido en configuraciones por el nuevo registrador por nuevas configuraciones.
function setLogger(logger: Logger)
Parámetros
- logger
- Logger
Instancia del registrador
Heredado deClientApplication.setLogger