问题标签 [custom-membershipprovider]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6352 浏览

wcf - 如何使用 WCF 和自定义 ASP.NET 成员资格提供程序调试“找不到默认成员资格提供程序”错误?

这对我来说是在 IIS7.5 64 位上运行的 .Net 3.5 SP1 的问题(我尝试强制使用 32 位但得到了相同的结果)。

我有一个想要使用身份验证服务的 WCF 服务。当我没有任何行为时,WCF 服务会在没有任何错误的情况下进行绘制(回复)。其他服务也适用于其他行为

只要我将 userNameAuthentication 添加到指定自定义 MembershipProvider 以对服务进行身份验证的行为...

该服务崩溃并返回以下错误:

事件日志有这个错误:

我很确定这不是提供程序或提供程序配置的问题,因为我有这个自定义提供程序与 ASP MVC 站点一起使用。

有什么想法吗?

0 投票
2 回答
1384 浏览

model-view-controller - 摆脱自定义会员提供程序中区分大小写的用户名

我在 ASP.net MVC 中实现了一个自定义成员资格提供程序,但无法弄清楚如何使用户名在登录时不区分大小写。因此,例如,“Solomon”可以登录,但“solomon”不能。

我的实现非常简单。我基本上只是为 ValidateUser() 和 Change Password() 编写了代码。

谢谢您的帮助!

0 投票
2 回答
1056 浏览

c# - ASP.NET custom MembershipProvider

I have a client server application. The client is an asp.net c# site and the server is simply a command line application in c#. I plan on using .NET remoting to access and expose information that is on the server application and preset it to the user viewing the client.

The server application has user objects that i want to use for authentication with the asp.net login controls etc.

I implemented created a custom class "MyMembershipProvider" which implements MembershipProvider but i'm getting very confused now. What do i do next?

i know i need to update the Web.config with a "membership" node but all the examples i've seen have a reference to a connection string, mine does not need a connection string as it will not be using a database etc.

0 投票
2 回答
2395 浏览

c# - ASP.NET:具有自定义用户表的自定义 MembershipProvider

我最近开始修补 ASP.NET MVC,但这个问题也应该适用于经典的 ASP.NET。对于它的价值,我也不太了解表单身份验证和成员资格提供程序。

我正在尝试编写我自己的MembershipProvider,它将连接到我自己的数据库中的自定义用户表。我的用户表包含所有基本用户信息,如用户名、密码、密码盐、电子邮件地址等,还包含名字、姓氏和居住国家等信息。

据我了解,在 ASP.NET 中执行此操作的标准方法是创建一个 没有额外信息的用户表,然后创建一个包含额外信息的“配置文件”表。但是,这对我来说听起来不是很好,因为每当我需要访问这些额外信息时,我都必须进行一次额外的数据库查询才能获得它。

我在“C# 2008 中的 Pro ASP.NET 3.5”一书中读到,如果您需要大量访问配置文件表并且在您的网站中有许多不同的页面,那么为配置文件创建一个单独的表并不是一个好主意。

现在解决手头的问题...正如我所说,我正在编写自己的自定义MembershipProvider子类,到目前为止进展顺利,但现在我意识到这CreateUser不允许我以这种方式创建用户我想要。该方法只接受固定数量的参数,名字、姓氏和居住国家不是其中的一部分。

那么,如果没有这些信息,我将如何在我的自定义表中为新用户创建一个CreateUser条目MembershipProvider

0 投票
1 回答
723 浏览

.net - 如何微调会员提供者?

在我最后一个关于微调的问题的所有答案被证明比我预期的更有用之后,我想我也会问另一个关于 MembershipProviders 的类似问题。

好的,首先要澄清一下:我知道什么是会员、角色和个人资料提供者,如何实现我自己的,如何配置它们,以及关于它们的大部分内容。
实现角色和配置文件提供者非常简单,因为它们大多数时候只需要简单的 CRUD。(对于 RoleProvider 的大约一半方法来说,一行 LINQ 就足够了。)

但是,会员资格提供者是一个不同的野兽。你们中的许多人可能意识到它违反了 SR(单一责任)原则,因为它必须做与用户管理相关的所有事情。虽然这为自定义留下了很大的空间,但它也有其缺点。Internet 上没有关于它们的确切预期行为是什么的信息,例如它们应该何时抛出异常或简单地返回 null 等等。

我使用这个示例实现作为参考,但它也包含一些矛盾。

  • 例如,它使用自己的 ValidateUser 方法检查 ChangePassword 方法中的凭据。但 ValidateUser 还将用户的 LastLoginDate 更新为当前日期。那么,框架是否希望我也将它设置在我自己的提供程序中,或者它只是示例中的一个错误?
  • 另一种是:ChangePassword 方法每次验证新密码时都会抛出异常,但 CreateUser 不会抛出异常,它只是返回 false。
  • 最后但并非最不重要的一点是:它计算用户的无效密码尝试并在超过阈值时锁定它们。虽然这很好,但它需要手动操作来解锁用户。如果我的提供商在一定时间后自动解锁用户是否有问题?

  • (编辑)我差点忘了:示例中的 CreateUser 方法从方法参数中插入了 ID。我实际上认为这是不好的做法,因为我使用带有自动 incement 的 inters 作为 ID,所以从某个方法参数插入它们不是一种选择。我应该忽略该参数,还是要求其值为 null 并在不是时抛出异常?

总而言之,ASP.NET 是否对 MembershipProvider 的行为有任何假设?
是否有任何文档描述了我应该何时抛出异常或只返回 null?

我还试图找到一组通用单元测试,它们可以为预期的行为提供一些指导,但没有运气,我找到了很多关于“单元测试很好”和“如何对 MembershipProvider 进行单元测试”的文章,但没有一个会有任何实际测试的地方。

提前感谢大家!

0 投票
4 回答
52660 浏览

c# - 如何为 ASP.NET MVC 2 创建自定义成员资格提供程序?

如何基于 ASP.NET 成员资格提供程序为 ASP.NET MVC 2 创建自定义成员资格?

0 投票
3 回答
1777 浏览

asp.net - 如何使用 Ninject 注入一个 asp.net (mvc2) 自定义成员提供程序?

好的,所以我已经为此工作了几个小时。我在这里找到了几篇文章,但没有什么能真正解决问题。所以,让我再试一次……

我有一个使用 Ninject 和自定义会员提供程序的 MVC2 应用程序。

如果我尝试使用 ctor 注入提供程序,则会收到错误消息:“没有为此对象定义无参数构造函数。”

我也一直在玩工厂和 Initialize(),但一切都是空白。

有什么想法/例子吗?

0 投票
1 回答
977 浏览

wcf - Can you use a custom membership provider with userNamePasswordValidationMode?

Every example I see uses the default Membership Provider with the userNamePasswordValidationMode, but can I specify MembershipProvider for userNamePasswordValidationMode in the ServiceCredentials for a WCF REST Service if I have a Custom Membership Provider? Is the following route the best to take if this is possible:

  1. Create a custom membership provider that implements Membership Provider.

  2. Create a CustomUserNamePasswordValidator that implements UserNamePasswordValidator and override the Validate Method.

  3. In the Validate method, validate whether a user exists in the database.

Issues I am having are, if I have a login method in my service and it is called from an a web browser with the url http://test.com/service.svc/login, how can I get the username and password. Assume that it the username and password can be typed into a web page or it can come from a smart device application (android, iphone, etc)

0 投票
1 回答
2922 浏览

asp.net - 无法为自定义 MembershipProvider 创建 MembershipUser

我创建了一个自定义成员资格提供程序,并在尝试创建新的“MembershipUser”时遇到以下错误。

无法从程序集“System.Web,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”加载类型“MyTestApp.Membership.TestMembershipProvider”。

我从一个单元测试项目运行它,所以我不确定这是否导致了问题,但我确实包含了 System.Web、System.Web.ApplicationServices 以及对 MyApp.Membership 和 MyApp.DataModels 的引用(实体对象)。

错误发生在下面的“GetUser”函​​数中,我的配置也在下面。

0 投票
1 回答
858 浏览

c# - 带有数据提供程序接口问题的 ASP.NET MVC2 自定义成员资格提供程序

我正在创建一个自定义成员资格提供程序类库,它为我的 Web 项目定义了一个数据提供程序接口来实现。

我在创建实现接口的类的实例时遇到问题。

我在 web.config 中添加了一行来提取数据提供者类型,但它正在成员库中寻找该类型(但它在我的 Web 项目中定义)。

网页配置

错误:

我对此采取了正确的方法吗?如果我想要通用的自定义会员库,我不应该在我的网络/数据项目中实现适当的数据提供者(在这个例子中,我在网络中制作一个用于测试)?