Obtención y eliminación de cuentas de la caché de tokens mediante MSAL para Java

MSAL para Java proporciona una caché de tokens en memoria de forma predeterminada. La caché de tokens en memoria persiste durante la ejecución de la aplicación.

Ver qué cuentas están en la memoria caché

Puede comprobar qué cuentas están en la memoria caché llamando a PublicClientApplication.getAccounts() como se muestra en el ejemplo siguiente:

PublicClientApplication pca = new PublicClientApplication.Builder(
                labResponse.getAppId()).
                authority(TestConstants.ORGANIZATIONS_AUTHORITY).
                build();

Set<IAccount> accounts = pca.getAccounts().join();

Quitar cuentas de la memoria caché

Para quitar una cuenta de la memoria caché, busque la cuenta que debe quitarse y, a continuación, llame PublicClientApplication.removeAccount() a como se muestra en el ejemplo siguiente:

Set<IAccount> accounts = pca.getAccounts().join();

IAccount accountToBeRemoved = accounts.stream().filter(
                x -> x.username().equalsIgnoreCase(
                        UPN_OF_USER_TO_BE_REMOVED)).findFirst().orElse(null);

pca.removeAccount(accountToBeRemoved).join();

Aprende más

Si usa MSAL para Java, obtenga más información sobre la serialización personalizada de la caché de tokens en MSAL para Java.