Module: JwtAuthCognito
- Defined in:
- lib/jwt_auth_cognito.rb,
lib/jwt_auth_cognito/railtie.rb,
lib/jwt_auth_cognito/version.rb,
lib/jwt_auth_cognito/error_utils.rb,
lib/jwt_auth_cognito/ssm_service.rb,
lib/jwt_auth_cognito/jwks_service.rb,
lib/jwt_auth_cognito/configuration.rb,
lib/jwt_auth_cognito/jwt_validator.rb,
lib/jwt_auth_cognito/redis_service.rb,
lib/jwt_auth_cognito/api_key_validator.rb,
lib/jwt_auth_cognito/user_data_service.rb,
lib/jwt_auth_cognito/token_blacklist_service.rb,
lib/generators/jwt_auth_cognito/install_generator.rb
Defined Under Namespace
Modules: ErrorUtils, Generators Classes: ApiKeyValidator, BlacklistError, Configuration, ConfigurationError, Error, JWKSError, JwksService, JwtValidator, Railtie, RedisConnectionError, RedisService, SSMService, TokenBlacklistService, TokenExpiredError, TokenFormatError, TokenNotActiveError, TokenRevokedError, UserDataService, ValidationError
Constant Summary collapse
- VERSION =
'0.3.0'
Class Method Summary collapse
- .configuration ⇒ Object
-
.configure {|configuration| ... } ⇒ Object
Configure the gem.
-
.create_cognito_validator(region:, user_pool_id:, client_id: nil, client_secret: nil, redis_config: {}, enable_api_key_validation: false, enable_user_data_retrieval: false) ⇒ Object
Convenience factory method to create a Cognito validator.
- .reset_configuration! ⇒ Object
Class Method Details
.configuration ⇒ Object
33 34 35 |
# File 'lib/jwt_auth_cognito.rb', line 33 def self.configuration @configuration ||= Configuration.new end |
.configure {|configuration| ... } ⇒ Object
Configure the gem
29 30 31 |
# File 'lib/jwt_auth_cognito.rb', line 29 def self.configure yield(configuration) end |
.create_cognito_validator(region:, user_pool_id:, client_id: nil, client_secret: nil, redis_config: {}, enable_api_key_validation: false, enable_user_data_retrieval: false) ⇒ Object
Convenience factory method to create a Cognito validator
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/jwt_auth_cognito.rb', line 42 def self.create_cognito_validator(region:, user_pool_id:, client_id: nil, client_secret: nil, redis_config: {}, enable_api_key_validation: false, enable_user_data_retrieval: false) old_config = configuration.dup configure do |config| config.cognito_region = region config.cognito_user_pool_id = user_pool_id config.cognito_client_id = client_id if client_id config.cognito_client_secret = client_secret if client_secret config.enable_api_key_validation = enable_api_key_validation config.enable_user_data_retrieval = enable_user_data_retrieval # Apply Redis configuration config.redis_host = redis_config[:host] if redis_config[:host] config.redis_port = redis_config[:port] if redis_config[:port] config.redis_password = redis_config[:password] if redis_config[:password] config.redis_ssl = redis_config[:tls] if redis_config.key?(:tls) config.redis_ca_cert_path = redis_config[:ca_cert_path] if redis_config[:ca_cert_path] config.redis_ca_cert_name = redis_config[:ca_cert_name] if redis_config[:ca_cert_name] end validator = JwtValidator.new # Restore original configuration @configuration = old_config validator end |
.reset_configuration! ⇒ Object
37 38 39 |
# File 'lib/jwt_auth_cognito.rb', line 37 def self.reset_configuration! @configuration = Configuration.new end |