Packages

Library faciliating OpenID authentication flow throughout Phoenix application(s)

Current section

Files

Jump to
keen_auth lib request.ex
Raw

lib/request.ex

defmodule KeenAuth.Request do
alias Plug.Conn
@access_claims_key :access_claims
def has_claims?(conn, _client) do
Map.has_key?(conn.private, @access_claims_key)
end
def get_claims(%Conn{private: %{@access_claims_key => claims}}, _client) do
claims
end
def put_claims(conn, claims, _client) do
Conn.put_private(conn, @access_claims_key, claims)
end
def delete_claims(conn, _client) do
update_in(conn.private, &Map.drop(&1, [@access_claims_key]))
end
def fetch_bearer_token(conn, _client) do
case Conn.get_req_header(conn, "authorization") do
[bearer_token | []] when is_binary(bearer_token) -> {:ok, bearer_token}
_ -> {:error, :token_not_found}
end
end
end