这是我目前的设置:
本机应用程序已具有用户凭据。我想从本机应用程序提供到SPA页面的Web链接,但我不想在导航到Web时强制用户再次登录。相反,我想将他们当前的会话移动到网页。
是否可以将访问令牌“注入”到oidc-client中? (使用url片段)。或者还有其他流程或方法可以使这项工作?
一般来说,答案应该是:你走错了路。 看:您在本机应用程序中使用资源所有者密码流,这是错误的。它不是交互式的,这意味着IdP不仅可以访问凭据。通常,这种流程建议用于测试目的等,而不是一般用途。非交互流程的一个巨大限制是它不会创建用户会话。 If you switch your native app to an interactive flow such as Code flow with PKCE extension,它将创建会话。之后,只要Identity Server的会话cookie处于活动状态,您的其他应用程序就会自动进行身份验证。 注意:如果您不喜欢改进您的架构,您可以随意做任何事情,包括在链接中提供令牌。该令牌对于调用API仍然有效。但这不是隐式流程,您不会有会话,也不会使用静默刷新功能。