json_web_token v0.2.10 JsonWebToken.Jwt
Encode claims for transmission as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure, enabling the claims to be integrity protected with a Message Authentication Code (MAC), to be later verified
see http://tools.ietf.org/html/rfc7519
Link to this section Summary
Functions
Given an options map, return a map of header options
Return a JSON Web Token (JWT), a string representing a set of claims as a JSON object that is encoded in a JWS
Return a tuple {ok: claims (map)} if the signature is verified, or {:error, “invalid”} otherwise
Link to this section Functions
Given an options map, return a map of header options
Example
iex> JsonWebToken.Jwt.config_header(alg: "RS256", key: "key")
%{typ: "JWT", alg: "RS256"}
Filters out unsupported claims options and ignores any encryption keys
Return a JSON Web Token (JWT), a string representing a set of claims as a JSON object that is encoded in a JWS
Example
iex> claims = %{iss: "joe", exp: 1300819380, "http://example.com/is_root": true}
...> key = "gZH75aKtMN3Yj0iPS4hcgUuTwjAzZr9C"
...> JsonWebToken.Jwt.sign(claims, %{key: key})
"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqb2UiLCJodHRwOi8vZXhhbXBsZS5jb20vaXNfcm9vdCI6dHJ1ZSwiZXhwIjoxMzAwODE5MzgwfQ.Ktfu3EdLz0SpuTIMpMoRZMtZsCATWJHeDEBGrsZE6LI"
see http://tools.ietf.org/html/rfc7519#section-7.1
Return a tuple {ok: claims (map)} if the signature is verified, or {:error, “invalid”} otherwise
Example
iex> jwt = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqb2UiLCJodHRwOi8vZXhhbXBsZS5jb20vaXNfcm9vdCI6dHJ1ZSwiZXhwIjoxMzAwODE5MzgwfQ.Ktfu3EdLz0SpuTIMpMoRZMtZsCATWJHeDEBGrsZE6LI"
...> key = "gZH75aKtMN3Yj0iPS4hcgUuTwjAzZr9C"
...> JsonWebToken.Jwt.verify(jwt, %{key: key})
{:ok, %{iss: "joe", exp: 1300819380, "http://example.com/is_root": true}}
see http://tools.ietf.org/html/rfc7519#section-7.2