C# IdentityServer4外部身份验证令牌

C# IdentityServer4外部身份验证令牌,c#,asp.net-identity,identityserver4,C#,Asp.net Identity,Identityserver4,我有一个IdentityServer4设置,可以使用google进行身份验证,这非常有效,包括将令牌存储在AspNetUserTokens中 此外,我还有一个单独的服务,需要能够在用户未登录时使用access和refresh令牌代表用户调用google的API 我不明白如何从identityserver请求令牌,并使它们保持最新,以交换访问令牌和过期日期。我可以直接通过向identityserver添加端点来请求令牌来实现这一点,但是identityserver中的外部访问令牌永远不会更新 最佳

我有一个IdentityServer4设置,可以使用google进行身份验证,这非常有效,包括将令牌存储在AspNetUserTokens中

此外,我还有一个单独的服务,需要能够在用户未登录时使用access和refresh令牌代表用户调用google的API


我不明白如何从identityserver请求令牌,并使它们保持最新,以交换访问令牌和过期日期。我可以直接通过向identityserver添加端点来请求令牌来实现这一点,但是identityserver中的外部访问令牌永远不会更新

最佳选择是使用混合流,其中刷新令牌直接存储在您的服务数据库中。IDS在这里只是一个代理,不负责存储非自身发布的刷新令牌。

您最好使用混合流,其中刷新令牌直接存储在您的服务数据库中。IDS在这里只是一个代理,不负责存储非自身发布的刷新令牌。

如果我理解正确,您希望使用非交互流对IdentityServer验证API。也许是客户端凭据流?我不确定你是否应该把谷歌的代币透露给API。也许您应该将它们保存在IdentityServer中,并根据需要刷新它们我已经使用交互流对用户进行了身份验证,并且他们已经授予了应用程序权限。我想将它们保存在identityserver中,但需要在单独的服务中使用access/refresh令牌来代表userYes执行工作。我的意思是,您必须以某种方式验证API,因为它需要在用户注销后运行。因此,也许您可以执行客户端凭据并请求一个作用域,该作用域将令牌作为声明返回给API。每次进行身份验证时,identity server都会返回最新的令牌。你认为呢?这绝对是可能的。我正在阅读关于扩展授权的文章,这似乎是我在寻找的,但是-我是一个n00b到identityserver的人,所以有一个问题,您是否能够发布ID4的配置设置,以及到目前为止您是如何配置资源的?当有一些代码需要排除故障时总是有帮助的。如果我理解正确,您希望使用针对IdentityServer的非交互式流对API进行身份验证。也许是客户端凭据流?我不确定你是否应该把谷歌的代币透露给API。也许您应该将它们保存在IdentityServer中,并根据需要刷新它们我已经使用交互流对用户进行了身份验证,并且他们已经授予了应用程序权限。我想将它们保存在identityserver中,但需要在单独的服务中使用access/refresh令牌来代表userYes执行工作。我的意思是,您必须以某种方式验证API,因为它需要在用户注销后运行。因此,也许您可以执行客户端凭据并请求一个作用域,该作用域将令牌作为声明返回给API。每次进行身份验证时,identity server都会返回最新的令牌。你认为呢?这绝对是可能的。我正在阅读关于扩展授权的文章,这似乎是我在寻找的,但是-我是一个n00b到identityserver的人,所以有一个问题,您是否能够发布ID4的配置设置,以及到目前为止您是如何配置资源的?当有一些代码需要排除故障时,总是有帮助的。