我在绕圈跑。我正在我们的HealthVault MVC应用程序中使用ASP.NET SDK (来自NuGet的最新版本)。我的目标是向用户授权我们的HealthVault应用程序,检索他们的PersonID和RecordID,并将它们存储在我们的数据库中。我无法获得PersonInfo。
首先,根据http://msdn.microsoft.com/en-us/library/ff803620.aspx#AUTH,我将用户重定向到HealthVault以登录。
https://account.healthvault-ppe.com/redirect.aspx?target=AUTH&targetqs=?appid={AppId}%26redirect%3d{ReturnUrl}
我正在成功地被重定向,我授权我的记录和应用程序,我被重定向回来。
var target = Request.QueryString[ "target" ];
if (target == "APPAUTHSUCCESS") {
var token = Request.QueryString[ "wctoken" ];
var p = WebApplicationUtilities.GetPersonInfo( token );
}上述代码失败。抛出行var p = WebApplicationUtilities.GetPersonInfo( token )。
Microsoft.Health.HealthServiceAccessDeniedException:访问被拒绝。
令牌不为空,应用程序具有所有权限,并返回成功,但访问拒绝始终被抛出。有什么可能是错的?
发布于 2013-02-21 21:36:30
在我的例子中,当PFX文件中的私钥(在web.config中配置)与应用程序的公钥不匹配时,就会发生这种情况。
我仍然在使用测试环境并使用https://config.healthvault-ppe.com来配置我的应用程序。
尝试从PFX文件中提取公钥(生成.cer文件),并将其作为应用程序的公钥上载。
https://stackoverflow.com/questions/14282822
复制相似问题