¿Por qué Hangfire requiere autenticación para ver el tablero?

Estoy ejecutando HangFire dentro de mi aplicación web MVC, pero cada vez que intento navegar ahttp: // MyApp / hangfire, me redirige a la página de inicio de sesión de mi aplicación como si no hubiera iniciado sesión.

No he configurado explícitamente ningún requisito de autorización ... por ejemplo. Tenía lo siguiente en web.config, pero luego lo saqué en un intento de hacer que esto funcione.

<location path="hangfire">
<system.web>
  <authorization>
    <allow roles="Administrator" />
    <deny users="*" />  
  </authorization>
</system.web>

En teoría, esto es lo que querría, y cuando inicie sesión en mi aplicación web principal, iniciaré sesión con unAdministrator rol, por lo que esta regla debería funcionar.

Pero si tengo eso configurado en web.config o no, cada vez que intento navegar ahttp: // MyApp / hangfire, me redirige a la página de inicio de sesión de mis aplicaciones como está configurado en web.config:

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="960" />
</authentication>

NO hace esto en mi máquina local, justo cuando publico en mi host. ¿HangFire no reconoce la cookie de autenticación que proporciona mi aplicación principal cuando inicio sesión? En general, pensé que la aplicación hangfire no requiere autenticación, entonces, ¿qué otra configuración podría estar pensando que sí?

ACTUALIZACIÓN 1:

Agregué los filtros de autorización por eldocumentos de hangfire, pero sucede lo mismo. Aquí está mi código en Startup.cs:

using Hangfire;
using Hangfire.Logging;
using Hangfire.Dashboard;
using Hangfire.SqlServer;
using Microsoft.Owin;
using OTIS.Web.AppCode;
using OTISScheduler.AppServ;
using Owin;
using System.Web.Security;

[assembly: OwinStartup(typeof(OTIS.Web.App_Start.Startup))]
namespace OTIS.Web.App_Start
{
    public class Startup
    {
        public void Configuration(IAppBuilder app) {

            app.UseHangfire(config => {
                config.UseSqlServerStorage("DefaultConnection");
                config.UseServer();

                //Dashboard authorization
                config.UseAuthorizationFilters(new AuthorizationFilter
                {
                    Users = "USERA", // allow only specified users (comma delimited list)
                    Roles = "Account Administrator, Administrator" // allow only specified roles(comma delimited list)
                });


            });

            LogProvider.SetCurrentLogProvider(new StubLogProviderForHangfire());

            GlobalJobFilters.Filters.Add(new AutomaticRetryAttribute { Attempts = 0 });

            var scheduleTasksInitializer = new ScheduleTasksInitializer();

            scheduleTasksInitializer.ScheduleTasks();
        }
    }
}

ACTUALIZACIÓN 2:

Por el másinstrucciones detalladas que muestran la autenticación básica, También probé esto ... todavía no tuve suerte ... me redirige a la página de inicio de sesión de mi aplicación.

config.UseAuthorizationFilters(
new BasicAuthAuthorizationFilter(
    new BasicAuthAuthorizationFilterOptions
    {
        // Require secure connection for dashboard
        RequireSsl = false,
        SslRedirect = false,

        // Case sensitive login checking
        LoginCaseSensitive = true,

        // Users
        Users = new[]
        {
            new BasicAuthAuthorizationUser
            {
                Login = "MyLogin",

                // Password as plain text
                PasswordClear = "MyPwd"
            }
        }
    }));          

Respuestas a la pregunta(3)

Su respuesta a la pregunta