如何在Oracle数据库中实现自定义成员资格和角色

时间:2012-05-24 06:20:25

标签: c# oracle custom-membershipprovider

如何在Oracle DB中实现自定义成员身份和角色。我们需要为Membership Function编写重载吗?如果是,那么如何?

oracle的成员资格和角色的数据库架构在哪里。

1 个答案:

答案 0 :(得分:0)

您应该使用自定义成员资格提供程序。当您创建一个继承自membershipprovider的类时,它应该自动实现所有正确的类。 如果要添加一些自定义功能,也可以覆盖成员资格用户。

public class CustomMembershipProvider : System.Web.Security.MembershipProvider

我会将自定义成员资格提供程序用作容器,因此我将使用另一个类来处理所有数据库调用等。

    public override string GetPassword(string username, string answer)
    {
        return ProfileManager.GetPassword(username);
    }

在ProfileManager中,例如:

    public static string GetPassword(string username)
    {
        if (!username.Contains("custom\\")) return String.Empty;

        MijnGazelleEntities container = new CustomEntities();
        Users gebruiker = container.Users.FirstOrDefault(g => g.Email == username.Replace("mijngazelle\\", String.Empty));
        string password = gebruiker != null ? gebruiker.Password : String.Empty;

        container.Connection.Close();
        return password;
    }