Ограничение Glimpse для определенных IP-адресов?

Я хотел бы использовать Glimpse для нашего рабочего сайта, но я хочу ограничить круг лиц, которые могут его включить. Об этом упоминается здесь, но в настоящее время на нашем сайте нет логин и не настроен для проверки подлинности Windows. Могу ли я ограничить доступ по IP-адресу? Кроме того, если я включу проблеск, кто увидит результаты на странице? Только я или все?


person Mr Smith    schedule 18.11.2014    source источник


Ответы (1)


Вы должны создать пользовательскую политику времени выполнения. Это на самом деле довольно тривиально. Вот быстрый и грязный мод для примера политики времени выполнения в документации Glimpse, который разрешает только конкретный IP:

using Glimpse.AspNet.Extensions;
using Glimpse.Core.Extensibility;

namespace Users.Web.Application.Namespace
{
    public class GlimpseSecurityPolicy:IRuntimePolicy
    {
        public RuntimePolicy Execute(IRuntimePolicyContext policyContext)
        {
            var httpContext = policyContext.GetHttpContext();

            if (httpContext.Request.UserHostAddress == "123.123.123.123")
                return RuntimePolicy.Off;

            return RuntimePolicy.On;
        }

        public RuntimeEvent ExecuteOn
        {
            get { return RuntimeEvent.EndRequest; }
        }
    }
}
person Chris Pratt    schedule 18.11.2014