Role assigning events
Roles determine which parts of Sitefinity CMS a user can view. When a website administrator assigns or modifies the roles assigned to a user, a number of role assigning events are fired. You can subscribe to any of the role assigning events listed below.
For more information about managing roles, see Overview: Roles.
RoleAssignEventBase
This is the base class for events that notifies for changes in roles assigned to users.
In the event handler, you can access the following information:
- ID of the role
- Name of the role
- Name of the role provider
- ID of the user
- Name of the user provider
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<RoleAssignEventBase>(evt => RoleAssignEventHandler(evt));
}
public void RoleAssignEventHandler(RoleAssignEventBase eventInfo)
{
var roleId = eventInfo.RoleId;
var roleName = eventInfo.RoleName;
var roleProviderName = eventInfo.RoleProviderName;
var userId = eventInfo.UserId;
var membershipProviderName = eventInfo.MembershipProviderName;
}
}
}
RoleAssigning
This event fires when a role is being assigned to a user, that is, it is pending approval.
Your event handler looks like this:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<RoleAssigning>(evt => RoleAssigningEventHandler(evt));
}
public void RoleAssigningEventHandler(RoleAssigning eventInfo)
{
// your logic
}
}
}
RoleAssigned
This event fires when a profile is already assigned to a user.
Your event handler looks like this:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<RoleAssigned>(evt => RoleAssignedEventHandler(evt));
}
public void RoleAssignedEventHandler(RoleAssigned eventInfo)
{
// your logic
}
}
}
RoleUnassigning
This event fires when a role is being unassigned from a user.
Your event handler looks like this:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<RoleUnassigning>(evt => RoleUnassigningEventHandler(evt));
}
public void RoleUnassigningEventHandler(RoleUnassigning eventInfo)
{
// your logic
}
}
}
RoleUnassigned
This event fires when a role is already unassigned from a user.
Your event handler looks like this:
using System;
using Telerik.Sitefinity.Abstractions;
using Telerik.Sitefinity.Security.Events;
using Telerik.Sitefinity.Services;
namespace SitefinityWebApp
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;
}
private void Bootstrapper_Bootstrapped(object sender, EventArgs e)
{
EventHub.Subscribe<RoleUnassigned>(evt => RoleUnassignedEventHandler(evt));
}
public void RoleUnassignedEventHandler(RoleUnassigned eventInfo)
{
// your logic
}
}
}