【问题标题】:Add a token I already have to MSAL token cache?将我已经拥有的令牌添加到 MSAL 令牌缓存?
【发布时间】:2021-07-14 01:18:32
【问题描述】:

我正在写一些东西,我想使用 MSAL.NET 来处理缓存和刷新我在其他地方获得的令牌,这可能吗?情况是我正在处理的系统的另一个组件(不是用 .NET 编写且不使用 MSAL)获取令牌和刷新令牌并将它们传递给我的代码,在 .NET Core 和我想使用 MSAL 的地方。理想情况下,我只想将它们放入 MSAL 令牌缓存中并继续进行,就好像 MSAL 已为我获取它们一样。有什么办法吗?

【问题讨论】:

    标签: msal


    【解决方案1】:

    您需要为 msal 实现 custom token serializer 以控制令牌缓存和获取行为。

    【讨论】:

    • 这似乎是可能的,尽管这更多地用于存储和检索您通过 MSAL 获得的令牌。我的意思是,我似乎可以通过以 MSAL 的令牌序列化格式创建一些东西,然后注册一个反序列化回调,当它要求它时将它呈现给 MSAL。但是这种格式有记录吗?我编写了一个快速程序来获取令牌并序列化缓存以查看它的外观,并且它包含除了令牌之外的许多其他信息。它看起来像是可能来自令牌的东西,但我不确定它们来自哪里。
    • 似乎令牌缓存序列化并不意味着以这种方式使用。这样做和真正的缓存序列化是有问题的。例如,您最初可以通过创建一个采用序列化缓存的序列化程序来加载缓存,然后在第一次调用“访问前”回调时返回该缓存,而不是在通常的序列化程序中获取它。但是没有办法告诉它把它写到你真正序列化到的任何地方(至少如果你想使用 MSAL 给你的 SuggestedCacheKey,因为你不会在访问前回调中拥有它)。
    • 请在 MSAL 库的(问题)[github.com/AzureAD/microsoft-authentication-library-for-dotnet/… 页面上发布详细信息。我会尽量让开发者感兴趣。
    猜你喜欢
    • 2021-04-29
    • 2013-07-02
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 2021-10-26
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多