【发布时间】:2013-08-16 21:35:28
【问题描述】:
我已经使用 SiteCore 7 大约一个月或更短时间了。
我无法从其中的外部数据库设置 .Net 成员资格提供程序。
这就是我的班级的样子:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.Web.Security;
namespace MProvider
{
public abstract class MemberProvider : MembershipProvider
{
public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
{
base.Initialize(name, config);
}
public override MembershipUser GetUser(object providerUserKey, bool userIsOnline)
{
throw new NotImplementedException();
}
public override bool ValidateUser(string username, string password)
{
throw new NotImplementedException();
}
}
}
}
这是 SiteCore 中的 web.config
<switchingProviders>
<membership>
<provider providerName="sql" storeFullNames="true" wildcard="%" domains="*"/>
<provider providerName="MProvider" storeFullNames="true" wildcard="%" domains="*"/>
<membership defaultProvider="sitecore" hashAlgorithmType="SHA1">
<providers>
<clear/>
<add name="sitecore" type="Sitecore.Security.SitecoreMembershipProvider, Sitecore.Kernel" realProviderName="MProvider" providerWildcard="%" raiseEvents="true"/>
<add name="sql" type="System.Web.Security.SqlMembershipProvider" connectionStringName="core" applicationName="sitecore" minRequiredPasswordLength="1" minRequiredNonalphanumericCharacters="0" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="256"/>
<add name="MProvider" type="Sitecore.Security.SitecoreMembershipProvider" realProviderName="MProvider"
applicationName="sitecore" minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"></add>
</providers>
</membership>}
我的问题是:
- 是否有人曾在 SiteCore 中与 .Net Membership Provider 合作过? 一种。如果是这样,我做错了什么?
- 有人知道 SiteCore 中 .Net 成员资格的工作示例吗?
非常感谢!
戴夫
【问题讨论】:
-
MProvider 成员资格提供程序的 type 属性...不应该指向您的新自定义类吗?另外...我认为您的会员资格提供商中有一些实际代码?
-
Bartlomiejs 的答案是正确的。但是,您可以考虑是否真的需要会员提供者。考虑使用虚拟用户,正如我在这里描述的那样:stackoverflow.com/questions/7159731/…
标签: c# asp.net content-management-system asp.net-membership sitecore