Merge branch 'main' into glitch-soc/merge-upstream
Conflicts: - `README.md`: Upstream added some text, but our README is completely different. Kept our README unchanged.
This commit is contained in:
@@ -107,9 +107,9 @@ Rails.application.configure do
|
||||
:authentication => ENV['SMTP_AUTH_METHOD'] == 'none' ? nil : ENV['SMTP_AUTH_METHOD'] || :plain,
|
||||
:ca_file => ENV['SMTP_CA_FILE'].presence || '/etc/ssl/certs/ca-certificates.crt',
|
||||
:openssl_verify_mode => ENV['SMTP_OPENSSL_VERIFY_MODE'],
|
||||
:enable_starttls_auto => ENV['SMTP_ENABLE_STARTTLS_AUTO'] || true,
|
||||
:tls => ENV['SMTP_TLS'].presence,
|
||||
:ssl => ENV['SMTP_SSL'].presence,
|
||||
:enable_starttls_auto => ENV['SMTP_ENABLE_STARTTLS_AUTO'] != 'false',
|
||||
:tls => ENV['SMTP_TLS'].presence && ENV['SMTP_TLS'] == 'true',
|
||||
:ssl => ENV['SMTP_SSL'].presence && ENV['SMTP_SSL'] == 'true',
|
||||
}
|
||||
|
||||
config.action_mailer.delivery_method = ENV.fetch('SMTP_DELIVERY_METHOD', 'smtp').to_sym
|
||||
|
@@ -1,11 +1,8 @@
|
||||
require 'devise/strategies/authenticatable'
|
||||
|
||||
Warden::Manager.after_set_user except: :fetch do |user, warden|
|
||||
if user.session_active?(warden.cookies.signed['_session_id'] || warden.raw_session['auth_id'])
|
||||
session_id = warden.cookies.signed['_session_id'] || warden.raw_session['auth_id']
|
||||
else
|
||||
session_id = user.activate_session(warden.request)
|
||||
end
|
||||
session_id = warden.cookies.signed['_session_id'] || warden.raw_session['auth_id']
|
||||
session_id = user.activate_session(warden.request) unless user.session_activations.active?(session_id)
|
||||
|
||||
warden.cookies.signed['_session_id'] = {
|
||||
value: session_id,
|
||||
@@ -17,9 +14,13 @@ Warden::Manager.after_set_user except: :fetch do |user, warden|
|
||||
end
|
||||
|
||||
Warden::Manager.after_fetch do |user, warden|
|
||||
if user.session_active?(warden.cookies.signed['_session_id'] || warden.raw_session['auth_id'])
|
||||
session_id = warden.cookies.signed['_session_id'] || warden.raw_session['auth_id']
|
||||
|
||||
if session_id && (session = user.session_activations.find_by(session_id: session_id))
|
||||
session.update(ip: warden.request.remote_ip) if session.ip != warden.request.remote_ip
|
||||
|
||||
warden.cookies.signed['_session_id'] = {
|
||||
value: warden.cookies.signed['_session_id'] || warden.raw_session['auth_id'],
|
||||
value: session_id,
|
||||
expires: 1.year.from_now,
|
||||
httponly: true,
|
||||
secure: (Rails.env.production? || ENV['LOCAL_HTTPS'] == 'true'),
|
||||
|
@@ -55,7 +55,7 @@ class Rack::Attack
|
||||
end
|
||||
|
||||
throttle('throttle_api_media', limit: 30, period: 30.minutes) do |req|
|
||||
req.authenticated_user_id if req.post? && req.path.start_with?('/api/v1/media')
|
||||
req.authenticated_user_id if req.post? && req.path.match?('^/api/v\d+/media')
|
||||
end
|
||||
|
||||
throttle('throttle_media_proxy', limit: 30, period: 10.minutes) do |req|
|
||||
|
Reference in New Issue
Block a user