Sha256: 0b277d2dbc162d6676c6995892a7dd08aa7da0cb682b2646c90d22de2e896807
Contents?: true
Size: 877 Bytes
Versions: 5
Compression:
Stored size: 877 Bytes
Contents
require "jwt" class Card module Auth # methods for setting current account module ApiKey def signin_with token: nil, api_key: nil if token signin_with_token token elsif api_key signin_with_api_key api_key else signin_with_session end end # set the current user based on api_key def signin_with_api_key api_key account = find_account_by_api_key api_key unless account&.authenticate_api_key api_key raise Card::Error::PermissionDenied, "API key authentication failed" end signin account.left_id end # find +\*account card by +\*api card # @param api_key [String] # @return [+*account card, nil] def find_account_by_api_key api_key find_account_by :api_key, api_key.strip end end end end
Version data entries
5 entries across 5 versions & 1 rubygems