Задать вопрос
Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (6)

Лучшие ответы пользователя

Все ответы (3)
  • Yandex календарь и синхронизация с Android?

    @rv82
    ASP.NET Core разработчик
    Есть и бесплатная и программа - DAVDroid. Причём, есть как на Google Play, так и в репозитории f-droid, что позволяет без проблем ставить её на устройства без сервисов google. Регулярно обновляется. Пользуюсь уже около года. Ни разу не подвела.
    Ответ написан
    2 комментария
  • Как добавить авторизацию через Active Directory в приложение, в котором уже есть авторизация на основе JWT?

    @rv82 Автор вопроса
    ASP.NET Core разработчик
    Решение, как оказалось, очень простое и было найдено по горячим следам. Сложнее было настроить сеть с тестовым доменом AD. Только сейчас дошли руки написать ответ. Итак:

    1. Добавить к проекту nuget-пакет Microsoft.AspNetCore.Authentication.Negotiate.

    2. В файл Startup.cs, в методе ConfigureServices, вслед за services.AddAuthentication(...).AddJwtBearer(...) добавить .AddNegotiate(). Аутентификация JwtBearer остаётся по умолчанию. Больше никаких настроек выполнять не требуется!

    3. В контроллере, отвечающем за аутентификацию (в нашем случае AccountController) добавляется метод, например LoginByActiveDirectory, с атрибутом [Authorize(AuthenticationSchemes = NegotiateDefaults.AuthenticationScheme)]. Атрибут указывает, что для доступа к этому методу нужна аутентификация через AD.

    4. Перед запуском приложения необходимо задать переменную окружения KRB5_KTNAME с указанием пути к keytab-файлу. Этот файл создаётся на контроллере домена.

    PS. Если нужны подробности, то могу набросать более развёрнутую статейку с описанием процесса настройки тестового домена и создания keytab-файла на примере Debian и Samba.
    Ответ написан
    1 комментарий

Лучшие вопросы пользователя

Все вопросы (2)