【发布时间】:2011-08-24 14:57:43
【问题描述】:
我为 Azure 云编写了一个 Web 应用程序,该应用程序使用表存储 asp.net 成员资格提供程序来确保安全。
我可以让它在 Developer Fabric 中本地运行,应用程序指向使用云中的存储帐户,例如在 web.config 中
<membership defaultProvider="TableStorageMembershipProvider" userIsOnlineTimeWindow="20">
<providers>
<clear/>
<add name="TableStorageMembershipProvider"
type="Microsoft.Samples.ServiceHosting.AspProviders.TableStorageMembershipProvider"
description="Membership provider using table storage"
applicationName="AspProvidersDemo"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
requiresUniqueEmail="true"
passwordFormat="Hashed"/>
</providers>
</membership>
并在此处的 ServiceConfiguration 中:
<Setting name="DataConnectionString" value="DefaultEndpointsProtocol=https;AccountName=MyAccount;AccountKey=MyAccountKeyHere" />
它可以在本地运行,但是当我部署到云时,由于密码无效,即使我使用的帐户和代码与 DevFabric 中的相同,我也无法登录。我唯一能想到的是它与 Salt 有关,因为我尝试登录的帐户是在本地创建的。
有谁知道这可能是什么原因造成的?我很感激我可以遍历并在任何地方放置跟踪语句 - 只是想为自己节省一些时间!
更新:使用明文密码时似乎有效。一定是我的本地机器和 Azure 计算哈希的方式不同。
【问题讨论】:
标签: c# asp.net azure asp.net-membership