protected override void ExecuteStatement(ExecutionContext context)
{
//if (!context.User.CanManageRoles())
// throw new SecurityException(String.Format("User '{0}' has not enough rights to create roles.", context.User.Name));
if (context.DirectAccess.RoleExists(RoleName))
throw new InvalidOperationException(String.Format("Role '{0}' already exists.", RoleName));
context.DirectAccess.CreateRole(RoleName);
context.DirectAccess.AddUserToRole(context.User.Name, RoleName, true);
}