因此,我正在构建一个需要访问最初为 asp.net 创建的数据库的站点。我想使用与已在数据库中的 asp.net 站点相同的用户名和密码。开发者提到在asp.net中使用了默认的身份验证。
来自数据库的示例密码:sYWPXNvJlVNs8EVZvIQOSaWfQ4I=
来自数据库的示例 PasswordSalt:ruNTdhelY57ghQsTFz/TIg==
这是我尝试过的:
<cfquery name="auth" datasource="ct">
SELECT userid, Password, PasswordSalt from dbo.aspnet_Membership
WHERE userid = '#auth1.userid#'
</cfquery>
<cfset cfHash = toBase64(hash(auth.PasswordSalt & cookie.password, "SHA1"))>
<cfif cfHash eq auth.Password> ...then authenticate etc.
我已经尝试了几次迭代,但是不行,生成的 cfHash 最终会太长,如下所示:
OUJBOUJENjI0MzEzNjM3M0EwQjk3Nzc3ODIzNUVGMkJCODczOEI0Qg==
有任何想法吗?