令牌提供程序无法提供安全令牌。令牌提供程序返回消息:ACS50009:SWT令牌无效

时间:2013-08-30 14:07:54

标签: token servicebus simple-web-token

我无法通过以下代码验证SWT令牌并在第3行引发错误

Line 1: var managementUri = ServiceBusEnvironment.CreateServiceUri("https", <myServiceBusNameSpace>, string.Empty);
Line 2: var tokenProvider = TokenProvider.CreateSharedSecretTokenProvider(<...issuerName...>, <...issuerSecret...>);
Line 3: var namespaceManager = new NamespaceManager(managementUri, tokenProvider);

这是错误: 令牌提供程序在访问......- sb.accesscontrol.windows.net/WRAPv0.9/时无法提供安全令牌。令牌提供程序返回消息:'错误:代码:401:子代码:T0:详细信息:ACS50009:SWT令牌无效。:TraceID:d56b987a-90f4-4c20-8de1-9e2d55107e6c:TimeStamp:2013-13-30 13:56:52Z ”。

我通过服务总线共享访问密钥名称和共享访问密钥作为发行者名称和发行者分泌但相同的错误

我还传递了ACS服务身份名称和对称密钥作为发行人名称和发行人分泌但同样的错误

我不知道为什么令牌未经过验证。在这个问题上,微软网站几乎没有任何帮助。我查看了MSDN上的ACS错误代码,对此问题没有帮助

我还使用sb连接字符串配置了BizTalk接收位置,并且具有相同的问题

我感谢您对此问题的帮助以及可能导致此错误的根本原因

1 个答案:

答案 0 :(得分:0)

Linesh, 以上API仅适用于ACS服务标识和对称密钥。根据错误,可能需要对以下代码行进行更改:

ServiceBusEnvironment.CreateServiceUri("https", <myServiceBusNameSpace>, string.Empty);

您可以将“https”替换为“sb”并尝试一下吗?