Skip to content

Mailu forward_auth handler #200

Description

@viribus-issue-bot

Issue open by Roman Dyakov via telegram message.

Есть стандарт для прокси-аутентификации, его поддерживает caddy с помощью директивы forward_auth


forward_auth /sso/login http://com_profcomff_api_auth:80 {
    uri /auth/mailu/check
    copy_headers {
        X-Auth-Request-Email>X-Auth-Email
    }
}

При запросе на mail.profcomff.com/sso/login делай запрос на http://com_profcomff_api_auth/auth/mailu/check, если результат 202 – передай значение заголовка X-Auth-Request-Email как заголовок X-Auth-Email далее. Если 403 – ничего не делай

Токен передается из Твой ФФ в виде GET-параметра и можно проставить его в куки через кэдди файл


handle /sso/login/tvoy-ff {
    header {
        Set-Cookie "TOKEN={http.request.uri.query.token}; SameSite=None; Secure;"
    }
    redir https://mail.profcomff.com/webmail
}

Итого остается написать для Mailu ручку внутри плагина авторизации, которая будет возвращать 202 если в куки TOKEN находится валидный токен с правильным скопом, иначе 403

+создать INTERNAL кнопку в services на https://mail.profcomff.com/sso/login/tvoy-ff

Metadata

Metadata

Assignees

No one assigned

    Labels

    good first issue 👶Задача подходит для новичковnew feature 🆕Новая фича или запрос на нее

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions