ZpAuth

static class · пространство имён z3n7 · исходник Server/ZpAuth.cs

public static class ZpAuth

Токен доступа ZpServer: хранение, выдача, проверка запросов. Секрет один на машину, хранится под ZP_TOKEN в .env рядом со сборкой (тот же файл, что читает Env.ReadEnv(global: true)). Токен печатается в строке узла, чтобы строку можно было целиком вставить в панель DevDeck.

Свойства

Token

public static string Token { get; }

исходник

Текущий токен. Пустая строка, пока не вызван Load.

Методы

Authorized

public static bool Authorized(HttpListenerRequest req)

исходник

Проверяет токен запроса: заголовок Authorization: Bearer, иначе параметр ?token= — он нужен для ссылок на скачивание, где заголовок не задать.

Возвращает: false, если Load не вызывался или токен не совпадает.

Load

public static void Load(IZennoPosterProjectModel project, bool log)

исходник

Читает токен из .env; если его нет, генерирует (32 случайных байта в hex) и пытается сохранить. Вызывай до того, как занимать порт: проверка конфигурации дешёвая, и держать ресурс, если с ней что-то не так, незачем. Неудачная запись не останавливает сервер: узлом по-прежнему можно управлять, но токен живёт только в памяти процесса.

Параметр Описание
log Записать в лог путь к сохранённому токену.

Поля

EnvKey

public const string EnvKey = "ZP_TOKEN";

исходник

Ключ токена в .env.