我从关于如何使用jwt进行授权的演练中获取了第2节,这样我就可以从我的客户端获得一个访问令牌,并授权他们使用该api。然而,我似乎不能让这个工作。我不断收到邮递员发来的401消息,还附有一句:
{
"Message": "Authorization has been denied for this request."
}
教程链接:http://bitoftech.net/2014/10/27/json-web-token-asp-net-web-api-2-jwt-owin-authorization-server/
访问令牌来自我用Java创建的授权服务,所以本教程的第一部分不适用于我。
JWT公司
{
"exp": 1489641048,
"user_name": "testuser",
"authorities": [
"USER"
],
"jti": "2dde11c3-2f06-496c-9b36-4dbf71cdc2e2",
"client_id": "webreport_service",
"scope": [
"USER"
]
}
Web API代码段
public void ConfigureOAuth(IAppBuilder app)
{
var audience = "webreport_service";
// Api controllers with an [Authorize] attribute will be validated with JWT
app.UseJwtBearerAuthentication(
new JwtBearerAuthenticationOptions
{
AuthenticationMode = AuthenticationMode.Active,
AllowedAudiences = new[] { audience },
IssuerSecurityTokenProviders = new IIssuerSecurityTokenProvider[]
{
new SymmetricKeyIssuerSecurityTokenProvider("Any", "abc123")
}
});
}
它与第2节中的链接略有不同,但这是因为我没有对我的秘密进行base64编码,也没有将发布者放在我的jwt中。
邮递员
GET /api/protected HTTP/1.1
Host: localhost:54706
Authenticate: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0ODk2NDEyOTAsInVzZXJfbmFtZSI6InRlc3R1c2VyIiwiYXV0aG9yaXRpZXMiOlsiVVNFUiJdLCJqdGkiOiJlMDNkNWZmZC1hZWI4LTRkODctOGQ3My0zNjhjYjQ2ZDg2OWUiLCJjbGllbnRfaWQiOiJ3ZWJyZXBvcnRfc2VydmljZSIsInNjb3BlIjpbIlVTRVIiXX0.C4hivwA1VF-0GO0xCVUoDIheWQWlAcVWvAzChZTgrHY
Cache-Control: no-cache
Postman-Token: ff628109-d5f4-76e0-41c2-e0c7d377b93f
任何帮助都将不胜感激。
谢谢!
我认为可以检查以下内容:
首先:
请检查您的密码,'abc123'是真的吗?我在您的密码jwt.io网站上检查您的令牌。但是无效的签名
其次:
检查有效载荷值。你的jwt有效载荷是什么?/颁发者验证集“Any”
你的jwt有效载荷是什么?/你的观众验证集webreport_service
想想吧。
最诚挚的问候
例如,将username设置为简单字符串username,也可以使用username@jabber.org(或@jabber.de) 我的上的、、。 还要配置SASL机制: null 所有这些尝试,我也都评说得一干二净。 我搜索了很多,发现这是旧的Smack库上的一个bug,但应该在新的Smack版本4.0以上的版本中修复。所以我不得不假设这个错误不是Smack中的bug。 我认为这个错误可能是因
这是代码: 这是logcat的一个片段:
问题内容: 我从Nexus存储库中检出了代码。我更改了帐户密码,并在文件中正确设置了密码。在执行时,我收到错误消息,说明它尝试从该存储库下载文件。 任何想法如何解决此错误?我在Maven 3.04中使用Windows 7 问题答案: 这里的问题是所使用的密码出现错字错误,由于密码中使用了字符/字母,因此很难识别。
我想写一个应用程序,允许与数据交互的两种RESTful形式;常规REST CRUDendpoint和Web-UI。 过去,我在JS中实现了UI的大部分功能,这将调用常规的RESTendpoint。这很好,但对于这个应用程序,我想使用Qute来执行生成页面内容的大部分基本功能。但是,为了正确地管理endpoint并确保正确的RBAC控制,我需要通过cookie而不是普通的头来访问JWT。这似乎是可能
Using a delegation key The collaborator can now push to the repository using Docker Content Trust. Docker will automatically choose and pick the right key for the targets/release role. Edit the file o