auth_hash_check_token
Директива `auth_hash_check_token` используется для указания значения токена для аутентификации хеша защищённой ссылки в NGINX.
Описание
Директива auth_hash_check_token является частью модуля NGINX Secure Link Hash, который расширяет функциональность защищённых ссылок, позволяя выполнять проверку токена на основе хеша для повышения безопасности. Эта директива обычно используется в контекстах, таких как http, server, and location blocks, и принимает один или два аргумента. Первый аргумент — строка токена, которая будет проверяться, а необязательный второй параметр позволяет задать формат токена, который может быть hexadecimal (hex), base64, base64url или binary (bin). Если аргумент формата опущен, по умолчанию предполагается hexadecimal формат.
Эта директива работает в сочетании с другими связанными директивами, такими как auth_hash_message, auth_hash_secret и auth_hash_algorithm, обеспечивая полную функциональность для проверки защищённого хеша. Токен используется для проверки запросов, чтобы убедиться, что они не были подделаны. При успешной проверке специальная переменная $auth_hash получает непустое значение, в противном случае она остаётся пустой. Это имеет решающее значение для поддержания безопасности в средах, где осуществляется доступ или обработка чувствительных данных.
Пример конфига
location ^~ /secure/ {
auth_hash on;
auth_hash_check_token $arg_st format=hex;
auth_hash_secret "my_secret_key";
auth_hash_message "$uri|$arg_ts|$auth_hash_secret";
auth_hash_algorithm sha256;
if ($auth_hash != "1") {
return 403;
}
}Убедитесь, что формат токена указан правильно, поскольку несоответствия могут привести к ошибкам проверки.
Будьте осторожны при использовании секретного ключа; если он будет раскрыт, безопасность хэшей может быть поставлена под угрозу.
Токены должны генерироваться с использованием того же алгоритма и того же секретного ключа, которые применяются при проверке, чтобы обеспечить согласованность.