首先,我知道这个问题可能是边缘性复制这一个,是的,这是一个有点讽刺的是,我要求的东西,我连回答自己的问题.
现在,我在谈论ASP.net配置文件.我正在使用MVC构建应用程序,如果这很重要,我相信内置的Profile Provider是无用的.
所以目前,我在问自己:我应该遵循自己的建议并编写自定义配置文件提供程序,还是应该完全推送自己的个人资料?
一些假设:
我仍然需要调查是否可以将ASP.net成员资格与非标准身份验证提供程序(OpenID)一起使用,因为我认为ASP.net配置文件仅在我使用ASP.net成员资格时才有意义,所以我最终可能最终都会编写OpenID的自定义成员资格提供程序(基本上只是作为桥梁)和自定义配置文件提供程序.
所以,是的,我认为这可能是一个好方法,因为我继续使用框架已经给我的东西,但我接下来没有会员和个人资料的经验,所以也许这里的人有一些洞察我是否应该完全滚动我自己的身份验证和/或配置文件,或者如果我更好地编写自定义成员资格和配置文件提供程序,这显然是SO所做的?
我有一个连接到单个数据库的应用程序.
该应用程序现在需要挂钩到多个数据库.我们想要做的是,使用相同的应用程序/域/主机名/虚拟目录为用户提供登录屏幕上的选项,以选择他们想要连接的"应用程序/数据库".
每个数据库都有App表/ data/procs/etc以及aspnet成员资格/角色.
当用户输入用户名/密码并选择(选择列表)应用程序时,我想根据所选应用程序数据库验证用户.
目前,成员资格服务的数据库连接字符串保存在web.config中.有什么办法可以在登录时覆盖这个吗?另外,我还需要"记住我"功能才能顺利工作.当用户在5小时内回到应用程序时,这是如何工作的...此过程应该能够识别用户和应用程序并正确登录.
我目前正在使用asp.net成员资格提供程序(存储在db中的登录名)来保护我网站的某些页面.但是,我也希望保护非.aspx资源 - word docs,excel电子表格,pdf等.这甚至可能吗?如果是这样,我该怎么做呢?
谢谢!
我正在使用ASP.NET MVC构建一个多租户应用程序,并且在验证用户方面存在问题.
情况
我有:
- 具有用户的表(ID,名称,名字,电子邮件)此表已生成,因此在两个租户中注册的用户无需再次登录.
-a具有Tentantuser的表(ID,TenantID,UserID(FK到表用户),UserName,Loginname,Password,Active)此表包含一个租户的de login en密码.
例:
我的问题:
如何创建自定义提供程序,以便检查租户中的登录名和密码?例如:
public abstract bool ValidateUser(string username,string password);
Run Code Online (Sandbox Code Playgroud)
如何向我的提供商说明用户是哪个租户?
我怎样才能改变这种情况:
public overrides bool ValidateUser(string username,string password, string tenant); ?
Run Code Online (Sandbox Code Playgroud)
或者解决这个问题的另一种方法是什么?
我想验证一个密码字段,用于在asp.net(.net 3.5)中创建/更新用户.密码将用于a MembershipProvider.
实现此目的的最佳方法是什么,以便验证将使用成员资格提供程序的配置设置?当然我可以编写代码,但这似乎是一个非常重要的东西,必须有一个简单的方法来做到这一点.
[编辑]澄清这是新用户或更改密码的密码字段,因此ValidateUser没有帮助.
我正在使用EF Code First,现在在实现自定义MembershipProvider时遇到了麻烦.
对于EF Code First,我创建了自己的用户类,如下所示:
public class User
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
[Required]
public string Email { get; set; }
[Required]
public bool IsApproved { get; set; }
public DateTime? LastLoginDate { get; set; }
public DateTime? LastActivityDate { get; set; }
[Required]
public DateTime CreationDate { get; set; }
[Required]
public string ApplicationName { get; set; …Run Code Online (Sandbox Code Playgroud) c# asp.net entity-framework asp.net-membership membership-provider
Webforms的会员提供商和MVC 3的会员提供商之间的工作是否存在差异?
model-view-controller webforms asp.net-membership membership-provider asp.net-mvc-3
HttpContext.Current.User.IsInRole 在AuthenticateRequest中不可用; 但是,Roles.IsUserInRole可用.
是因为在AuthenticateRequest之后将新的GenericPrincipal分配给HttpContext.Current.User?有人可以解释一下吗?感谢您的帮助!
void Application_AuthenticateRequest(object sender, EventArgs e)
{
if(HttpContext.Current.Request.IsAuthenticated)
{
// Return False
bool result1 = HttpContext.Current.User.IsInRole("Administrators");
// Return True
bool result2 = Roles.IsUserInRole("Administrators");
}
}
Run Code Online (Sandbox Code Playgroud) membership asp.net-membership roleprovider membership-provider
团队,我有一个我正在部署的ASP.NET MVC应用程序.当我部署它时,应用程序工作正常,但是当我调用Membership.CreateUser它时,最终尝试创建数据库,即使它已经存在.CreateMembershipEntities由于数据库已经存在,我需要做什么才能使它不会尝试调用?
我试过Database.SetInitializer一个什么都不做的初始化程序,我已经尝试删除defaultConnectionFactory了Web.config - 我目前没有选择.
我期待着你的帮助!
UPDATE
我昨天刚刚发现,它试图创建数据库的原因是因为主机服务器不允许连接查询sysdatabases,因此数据库永远不存在,因此总是试图创建它.看来我可能不得不回到老式的AspNet会员提供商那里,并且还要远离EF代码的第一个模型.
<rant>
从更个人的角度来说,我想让微软知道,谢谢你!这个代码第一个模型适用于部署在您拥有的服务器上的应用程序 - 但是将它们放在云中(无论如何都是这样)并且您运气不好.干得好微软!为什么不尝试实际连接到数据库以查看它是否存在?!?如果连接成功,它必须存在 - 否则我猜它没有.
</rant>
我使用StructureMap做了一点工作,我设法在我的控制器中注入(通过构造函数注入)一个接口的具体类型存储库.
现在,我需要将存储库类型注入我的自定义成员资格提供程序.但是怎么样?我的自定义成员资格提供程序是通过Membership.Provider.ValidateUser(例如)创建的.
对于控制器我创建了一个这样的类:
public class IocControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(
System.Web.Routing.RequestContext requestContext,
Type controllerType)
{
return (Controller)
ObjectFactory.GetInstance(controllerType);
}
}
Run Code Online (Sandbox Code Playgroud)
并在Global.asax在Application_Start():
//...
ObjectFactory.Initialize(x =>
{
x.AddRegistry(new ArticleRegistry());
}
);
ControllerBuilder.Current.SetControllerFactory(
new IocControllerFactory());
//...
Run Code Online (Sandbox Code Playgroud)
但是如何使用StructureMap在我的自定义成员资格提供程序中注入具体类型?
c# structuremap asp.net-mvc membership-provider asp.net-mvc-2
asp.net ×6
c# ×3
asp.net-mvc ×2
.net ×1
membership ×1
multi-tenant ×1
roleprovider ×1
structuremap ×1
validation ×1
webforms ×1