masks-server 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/concerns/masks/server/scim_endpoint.rb +2 -2
  3. data/app/controllers/masks/server/account_exports_controller.rb +2 -2
  4. data/app/controllers/masks/server/addresses_controller.rb +2 -3
  5. data/app/controllers/masks/server/authenticator_apps_controller.rb +2 -3
  6. data/app/controllers/masks/server/authorize_controller.rb +2 -2
  7. data/app/controllers/masks/server/device_authorizations_controller.rb +2 -2
  8. data/app/controllers/masks/server/device_verifications_controller.rb +2 -2
  9. data/app/controllers/masks/server/enrollments_controller.rb +4 -4
  10. data/app/controllers/masks/server/forward_auth_controller.rb +2 -2
  11. data/app/controllers/masks/server/introspections_controller.rb +2 -2
  12. data/app/controllers/masks/server/logins_controller.rb +10 -12
  13. data/app/controllers/masks/server/organization_members_controller.rb +2 -2
  14. data/app/controllers/masks/server/passwords_controller.rb +2 -3
  15. data/app/controllers/masks/server/pushed_authorizations_controller.rb +2 -2
  16. data/app/controllers/masks/server/received_signals_controller.rb +2 -2
  17. data/app/controllers/masks/server/registrations_controller.rb +2 -2
  18. data/app/controllers/masks/server/revocations_controller.rb +2 -2
  19. data/app/controllers/masks/server/saml_controller.rb +2 -2
  20. data/app/controllers/masks/server/sign_in_approvals_controller.rb +2 -3
  21. data/app/controllers/masks/server/tokens_controller.rb +2 -2
  22. data/app/controllers/masks/server/verifications_controller.rb +2 -3
  23. data/app/graphql/masks/server/manage/types/health_check_type.rb +1 -1
  24. data/app/ldap/masks/server/ldap/gate.rb +14 -16
  25. data/app/models/masks/server/app_passwords.rb +7 -13
  26. data/app/models/masks/server/client_metadata_document.rb +4 -8
  27. data/app/models/masks/server/confirmation_code.rb +2 -2
  28. data/app/models/masks/server/declared.rb +3 -1
  29. data/app/models/masks/server/event.rb +2 -2
  30. data/app/models/masks/server/health.rb +70 -3
  31. data/app/models/masks/server/saml_identity/farewells.rb +1 -0
  32. data/app/models/masks/server/tenant.rb +48 -4
  33. data/app/models/masks/server/throttle.rb +165 -0
  34. data/config/locales/de/manage/health.yml +9 -2
  35. data/config/locales/en/manage/health.yml +9 -2
  36. data/config/locales/es/manage/health.yml +9 -2
  37. data/config/locales/fr/manage/health.yml +9 -2
  38. data/db/migrate/20261031100000_default_key_rotation_to_ninety_days.rb +5 -0
  39. data/lib/generators/masks/server/install/install_generator.rb +19 -0
  40. data/lib/masks/server/configuration.rb +14 -8
  41. data/lib/masks/server/engine.rb +2 -1
  42. data/lib/masks/server/forwarding.rb +26 -3
  43. data/lib/masks/server/tenancy/middleware.rb +4 -7
  44. data/lib/masks/server/tenant_isolation.rb +12 -0
  45. data/version.txt +1 -1
  46. metadata +3 -1
@@ -4,11 +4,23 @@ module Masks
4
4
  SETTING = "masks.tenant_id".freeze
5
5
 
6
6
  def self.adopt(connection)
7
+ return unless masks?(connection)
8
+
7
9
  connection.exec_query("SELECT set_config($1, $2, false)", "tenant", [ SETTING, Current.tenant&.id.to_s ])
8
10
  rescue ActiveRecord::NoDatabaseError, ActiveRecord::ConnectionNotEstablished, ActiveRecord::ConnectionFailed
9
11
  nil
10
12
  end
11
13
 
14
+ def self.masks?(connection)
15
+ database = Server.config.database
16
+
17
+ return true if database.nil?
18
+
19
+ pool = connection.pool
20
+
21
+ pool.respond_to?(:db_config) && pool.db_config.name == database.to_s
22
+ end
23
+
12
24
  def enable_row_level_security(table)
13
25
  execute <<~SQL
14
26
  ALTER TABLE #{table} ENABLE ROW LEVEL SECURITY;
data/version.txt CHANGED
@@ -1 +1 @@
1
- 0.12.0
1
+ 0.13.0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: masks-server
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - the masks authors
@@ -687,6 +687,7 @@ files:
687
687
  - app/models/masks/server/tenant_logo.rb
688
688
  - app/models/masks/server/texting.rb
689
689
  - app/models/masks/server/themes.rb
690
+ - app/models/masks/server/throttle.rb
690
691
  - app/models/masks/server/token.rb
691
692
  - app/models/masks/server/user_codes.rb
692
693
  - app/models/masks/server/verifications.rb
@@ -1120,6 +1121,7 @@ files:
1120
1121
  - db/migrate/20261020140000_create_health_checks.rb
1121
1122
  - db/migrate/20261020150000_add_link_lifetimes_to_tenants.rb
1122
1123
  - db/migrate/20261021100000_add_pinned_origin_to_tenants.rb
1124
+ - db/migrate/20261031100000_default_key_rotation_to_ninety_days.rb
1123
1125
  - lib/generators/masks/server/install/install_generator.rb
1124
1126
  - lib/generators/masks/server/install/templates/masks_server.rb.tt
1125
1127
  - lib/masks-server.rb