【发布时间】:2018-09-12 17:40:32
【问题描述】:
我需要编写一个独立(命令行)程序来调用使用 OAuth 2 进行身份验证的 Web 服务。 Web 服务使用 IndentityServer4。我正在寻找一个可用于此的库和一些示例代码。
我是 OAuth 新手,所以不了解协议的所有细节,但通过提供这些参数,我能够使用邮递员获取令牌。我猜 Auth URL 是登录屏幕的地址。
Auth URL、Access Token URL、ClientID、Client Secret 和 Scope。
当我请求令牌时,Postman 会转到由实现 OAuth 的服务器实现的登录页面,我需要在其中输入单独的用户名和密码。
如果我的理解是正确的,为了让它工作,我们需要对服务器进行更改,以通过以某种方式向应用程序用户名传递密码来允许非交互式登录。
【问题讨论】:
-
常见的 oauth 流程是为浏览器设计的,而不是客户端应用程序。查看客户端应用程序的 Jwt Bearer 和 webapi 流程。
-
@Tracer - 我们创建的后端旨在为前端 Web 应用程序提供服务,因此有一个登录页面是有意义的,但我们也希望有一个非交互式客户端用于测试目的。是否可以设计以交互方式和非交互方式工作的 OAuth 工作流程?如果可能,我们宁愿不引入第二种身份验证方法。
标签: asp.net asp.net-core oauth identityserver4