module Kemal::Hmac
Defined in:
kemal-hmac.crkemal-hmac/client.cr
kemal-hmac/handler.cr
kemal-hmac/hmac_algorithm.cr
kemal-hmac/token.cr
Constant Summary
-
ALGORITHM =
algorithm((ENV.fetch("HMAC_ALGORITHM", "SHA256")).upcase) -
HMAC_CLIENT_HEADER =
ENV.fetch("HMAC_CLIENT_HEADER", "hmac-client") -
HMAC_KEY_DELIMITER =
ENV.fetch("HMAC_KEY_DELIMITER", "_") -
HMAC_KEY_SUFFIX_LIST =
((ENV.fetch("HMAC_KEY_SUFFIX_LIST", "HMAC_SECRET_BLUE,HMAC_SECRET_GREEN")).split(",")).map(&.strip) -
HMAC_REJECTED_CODE =
(ENV.fetch("HMAC_REJECTED_CODE", 401)).to_i -
HMAC_REJECTED_MESSAGE_PREFIX =
ENV.fetch("HMAC_REJECTED_MESSAGE_PREFIX", "Unauthorized:") -
HMAC_TIMESTAMP_HEADER =
ENV.fetch("HMAC_TIMESTAMP_HEADER", "hmac-timestamp") -
HMAC_TIMESTAMP_SECOND_WINDOW =
(ENV.fetch("HMAC_TIMESTAMP_SECOND_WINDOW", 30)).to_i -
HMAC_TOKEN_HEADER =
ENV.fetch("HMAC_TOKEN_HEADER", "hmac-token") -
KEY_VALIDATION_REGEX =
/^[A-Z0-9][A-Z0-9_-]+[A-Z0-9]$/ -
MD4 =
0 -
MD5 =
1 -
RIPEMD160 =
2 -
SHA1 =
3 -
SHA224 =
4 -
SHA256 =
5 -
SHA384 =
6 -
SHA512 =
7
Class Method Summary
- .algorithm(algorithm : String) : OpenSSL::Algorithm
-
.algorithms(algorithm) : Int32
select the algorithm based on the string name and falls back to SHA256 if no match is found
Class Method Detail
def self.algorithms(algorithm) : Int32
#
select the algorithm based on the string name and falls back to SHA256 if no match is found