动态添加角色到asp.net角色提供者

时间:2015-05-20 15:04:56

标签: asp.net roleprovider isinrole

我正在使用包含某些角色的Asp.Net角色提供程序。我想添加一些来自另一个数据库的其他角色。有没有办法在来自角色提供者的角色和来自我的其他数据库的角色之间进行某种“联合”?

更确切地说,我正在使用表单身份验证,我从其他数据库中检索角色并将它们存储在FormsAuthenticationTicket中。然后在Global.Asax的AuthenticateRequest中,我生成带有角色列表的主体。但是后来使用User.IsInRole时,它不适用于我在AuthenticateRequest中指定的角色列表。什么是正确的方向?

基督教

1 个答案:

答案 0 :(得分:1)

您可以在运行时创建角色:

Dim strNewRole as String = "NEW"

If Not Roles.RoleExists(strNewRole) Then
    Roles.CreateRole(strNewRole)
End If

因此,您仍然可以使用您的代码从另一个数据库中检索角色,然后对每个角色使用上面的代码。