Java 版 MSAL 預設提供記憶體中的令牌快取。 記憶體中的標記快取會持續到應用程式執行期間。
查看快取中有哪些帳號
你可以透過呼叫 PublicClientApplication.getAccounts() 來檢查快取中有哪些帳號,如以下範例所示:
PublicClientApplication pca = new PublicClientApplication.Builder(
labResponse.getAppId()).
authority(TestConstants.ORGANIZATIONS_AUTHORITY).
build();
Set<IAccount> accounts = pca.getAccounts().join();
將帳號從快取中移除
要從快取中移除帳號,請找到需要移除的帳號,然後如以下範例所顯示的那樣呼叫 PublicClientApplication.removeAccount() :
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();
瞭解更多資訊
如果你使用 MSAL for Java,請學習 MSAL for Java 中的自訂令牌快取序列化。