Ben*_*ter 6 dotnetopenauth oauth-2.0
我们希望根据以下角色设置自己的OAuth 2.0授权服务器:
我们计划使用密码授予类型(资源所有者密码凭证授权),以便资源所有者将其凭据提交给客户,客户将依次发出授权请求.我们想要使用基本身份验证来验证客户端请求.
我正在努力如何使用支持此授权类型的DNOA设置授权服务器.我已经下载了Authorization Server示例项目,但这似乎是使用基于令牌的授权(用户直接使用授权服务器进行身份验证 - 在示例中,通过OpenID).
当我尝试使用fiddler进行授权请求时,我只是重定向到登录页面,所以我假设此示例不支持此授权类型:
POST http://localhost:50172/oauth/authorize HTTP/1.1
User-Agent: Fiddler
Host: localhost:50172
Content-Length: 103
grant_type=password&client_id=sampleconsumer&client_secret=samplesecret&username=user&password=password
Run Code Online (Sandbox Code Playgroud)
如果我使用基本身份验证,情况也是如此.
任何帮助,将不胜感激.我过去使用过DNOA非常成功地使用OAuth服务,但我发现有关设置/配置服务器的文档非常稀疏.
看起来您正在将密码授予发送到授权服务器的授权端点,这是错误的。授权应该直接发送到令牌端点,该端点必须位于授权服务器不需要经过身份验证的请求即可访问的 URL(即不会导致 ASP.NET 重定向到登录页面)。
也就是说,基于 Web 的客户端应用程序要求用户提供另一个 Web 服务的密码是非常不寻常的(并且不鼓励)。对于您所描述的场景,授权代码流程是迄今为止的首选流程。
| 归档时间: |
|
| 查看次数: |
2945 次 |
| 最近记录: |