語言

TokenCache 類別

定義

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

public sealed class TokenCache
type TokenCache = class
    interface ITokenCache
    interface ITokenCacheSerializer
Public NotInheritable Class TokenCache
繼承
TokenCache
實作

建構函式

名稱 Description
TokenCache()
已淘汰.

標記快取的建構器。 此建構器保留以兼容 MSAL 2.x。 建議的快取方法是使用 UserTokenCache 並 IConfidentialClientApplication.AppTokenCache 完成應用程式。

方法

名稱 Description
SetAfterAccess(TokenCacheCallback)

設定一個代理,在任何函式庫方法存取快取後會被通知。 此功能允許委派指定 TokenCacheNotificationArgs 中的應用程式和帳戶的快取項目進行序列化。 請參閱 https://aka.ms/msal-net-token-cache-serialization

SetAfterAccessAsync(Func<TokenCacheNotificationArgs,Task>)

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

SetBeforeAccess(TokenCacheCallback)

設定一個代理,在任何函式庫方法存取快取前會被通知。 這可為委派提供選項,以將快取項目反序列化,針對TokenCacheNotificationArgs中指定的應用程式和帳戶。 請參閱 https://aka.ms/msal-net-token-cache-serialization

SetBeforeAccessAsync(Func<TokenCacheNotificationArgs,Task>)

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

SetBeforeWrite(TokenCacheCallback)

在任何函式庫方法寫入快取之前,先設定一個代理。 這讓代理可以選擇從資料庫中某一列重新載入快取狀態並鎖定該列。 該資料庫列可解鎖註冊代理人 SetAfterAccess(TokenCacheCallback)

SetBeforeWriteAsync(Func<TokenCacheNotificationArgs,Task>)

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

SetIosKeychainSecurityGroup(String)

將安全群組設定為與 iOS 鑰匙圈一起使用。 此功能不應被外部客戶使用。 未來版本的 MSAL 將移除 此功能。

明確介面實作

名稱 Description
ITokenCacheSerializer.DeserializeAdalV3(Byte[])

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

ITokenCacheSerializer.DeserializeMsalV2(Byte[])

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

ITokenCacheSerializer.DeserializeMsalV3(Byte[], Boolean)

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

ITokenCacheSerializer.SerializeAdalV3()

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

ITokenCacheSerializer.SerializeMsalV2()

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

ITokenCacheSerializer.SerializeMsalV3()

憑證快取儲存存取權杖及帳號的刷新憑證。此類別用於 和 ConfidentialClientApplication的PublicClientApplication建構子。 以 ConfidentialClientApplication 為例,會使用兩個實例,一個用於使用者令牌快取,另一個用於應用程式令牌快取(用於使用用戶端憑證流程的應用程式)。

擴充方法

名稱 Description
SetCacheOptions(ITokenCache, CacheOptions)

MSAL 代幣快取的選項。

MSAL 在記憶體中內部維護一個標記快取。 預設情況下,此快取物件是每個 或 PublicClientApplication實ConfidentialClientApplication例的一部分。 此方法允許自訂 MSAL 記憶體中的令牌快取。

MSAL 的記憶體快取與令牌快取序列化不同。 快取序列化是將標記從快取(例如 Redis、Cosmos 或磁碟上的檔案)拉取,這些標記以 JSON 格式儲存,並存入 MSAL 的內部記憶體快取。 記憶體快取操作不涉及 JSON 操作。

外部快取序列化仍是處理桌面應用程式、網站及網頁 API 的推薦方式,因為它提供持久性。 這些選項目前無法控制外部快取序列化。

針對各類應用程式及平台的詳細指引: https://aka.ms/msal-net-token-cache-serialization

適用於