我试图将Kentor AuthServices中的示例MVC应用程序部署到Azure并使用Okta作为IDP。我已经跳了几个障碍,但偶然发现了CryptographicException"数据保护操作不成功"。我不确定如何解决它。
发生这种情况时,浏览器中的网址为https://mysite.azurewebsites.net/AuthServices/Acs
感谢任何帮助,谢谢。
以下是我的web.config的kentor部分。我没有身份服务器,因此删除了所有联合配置..
var data = jQuery.parseJSON(results );
$.each(data, function() {
//your code
});
如果我能提供任何进一步的信息以帮助您协助我,请告诉我们!
答案 0 :(得分:2)
实际上是Azure问题as Anders points out。修复是将以下内容添加到web.config:
<system.identityModel>
<identityConfiguration>
<securityTokenHandlers>
<add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</securityTokenHandlers>
</identityConfiguration>
</system.identityModel>
答案 1 :(得分:1)
看起来像Kentor.AuthServices中的错误。我最近做了一些重写,它使用了数据保护API,因此可能出现问题。请在github site提交一个问题,并提供异常的堆栈跟踪以及您正在使用的API模块的信息(MVC,HttpModule或OWIN)。