strongmind-auth 1.0.12 → 1.0.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f0de84646fc0bb458a34c17e3b6ba8e8f5754252cb5da1957822e75a7c52d4f
4
- data.tar.gz: 3f944f111eb1b254ed97a13baf7b5e0d74401bb4edce2326ed36a94742af4499
3
+ metadata.gz: 5f8024e8a6ede6f16c3ab5a900c19e0aa736a703ac36d6668287b2a27ec61928
4
+ data.tar.gz: 7d63c841f85f811124902d077989ea5bc683923258048164f10d85f79ca41b06
5
5
  SHA512:
6
- metadata.gz: cbba7ce9b16417331e9ec33a7b25225bb2ff3d3bc9651ac36936543197f1e95caec5c842100965b6564150c92015d46af23dfab26999db0f4847755d112eb775
7
- data.tar.gz: 48fa3ec4e620252c4f1dfb88cd3f58df46f0054defe2f348d3282cfde28dc58829b628b6dfa5f054c5e2681b105b92b31e5c984a5711fdb68cfd1abd5b6cc7f0
6
+ metadata.gz: 836af65fff974d2ec9b16166a72e0203f41eb7a3b59cee6054bd32b53fb7e1980b6e9f4295586731a54ab20c20d5205ba4a91687cdfe68c01d269d979d74bbd3
7
+ data.tar.gz: d4195a3e2c67eeb856e6374d0d9386af87001fa730708ba578b3f3a92ee7a15b26fd3965df6597f91680ce660744d1642f2cb1b931937e3bdc609229fe905e93
@@ -72,7 +72,7 @@ module JwtUtilities
72
72
  def validate_tokens(tokens)
73
73
  return unless tokens[:error] == 'invalid_grant' || !tokens[:refresh_token]
74
74
 
75
- raise RefreshTokenExpired, tokens[:error]
75
+ raise Strongmind::Exceptions::RefreshTokenExpired, tokens[:error]
76
76
  end
77
77
 
78
78
  def generate_tokens(session_data)
@@ -1,4 +1,5 @@
1
1
  require "strongmind/common_nav_fetcher"
2
+ require "strongmind/exceptions"
2
3
 
3
4
  module StrongMindNav
4
5
  extend ActiveSupport::Concern
@@ -10,7 +11,7 @@ module StrongMindNav
10
11
  @top_navbar_html = navbar[:top_navbar_html]
11
12
  @bottom_navbar_html = navbar[:bottom_navbar_html]
12
13
  @theme_css = navbar[:theme_css]
13
- rescue Strongmind::CommonNavFetcher::TokenNotFoundError, Strongmind::CommonNavFetcher::UserNotFoundError => e
14
+ rescue Strongmind::Exceptions::TokenNotFoundError, Strongmind::Exceptions::UserNotFoundError => e
14
15
  Sentry.capture_exception(e)
15
16
  Rails.logger.error(e)
16
17
  flash[:alert] = e.inspect if Rails.env.development?
@@ -18,6 +19,7 @@ module StrongMindNav
18
19
  render 'logins/index'
19
20
  rescue Exception => e
20
21
  Sentry.capture_exception(e)
22
+ Rails.logger.error(e)
21
23
  @top_navbar_html = render_to_string(partial: 'layouts/loading_navbar').html_safe
22
24
  end
23
25
  end
@@ -10,6 +10,8 @@ module Users
10
10
  User.auth_token_cache = auth
11
11
  @user = User.with_credentials(auth)
12
12
 
13
+ render plain: "You do not have permission to access this application.", status: :unauthorized and return if @user.nil?
14
+
13
15
  session[:refresh_token] = request.env['omniauth.auth'].credentials['refresh_token']
14
16
  flash.delete(:notice)
15
17
 
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Users
4
- class RefreshTokenExpired < StandardError
5
- end
6
4
 
7
5
  class SessionsController < Devise::SessionsController
8
6
  include JwtUtilities
@@ -1,5 +1,5 @@
1
1
  module Strongmind
2
2
  module Auth
3
- VERSION = "1.0.12"
3
+ VERSION = "1.0.13"
4
4
  end
5
5
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
-
2
+ require "strongmind/exceptions"
3
3
  require 'platform_sdk'
4
4
 
5
5
  module Strongmind
@@ -9,12 +9,8 @@ module Strongmind
9
9
 
10
10
  include Rails.application.routes.url_helpers
11
11
 
12
- class TokenNotFoundError < StandardError; end
13
-
14
- class UserNotFoundError < StandardError; end
15
-
16
12
  def initialize(user, request)
17
- raise UserNotFoundError, 'User not found' unless user.present?
13
+ raise Strongmind::Exceptions::UserNotFoundError, 'User not found' unless user.present?
18
14
  raise ArgumentError, 'Request not found' unless request.present?
19
15
 
20
16
  @user = user
@@ -54,7 +50,7 @@ module Strongmind
54
50
  cache_data = Rails.cache.fetch(user.uid)
55
51
  cache_missing_message = " - check your caching settings (switch to file or redis)" if Rails.env.development?
56
52
  unless cache_data&.key?(:access_token)
57
- raise TokenNotFoundError, "Token not found for user #{user.uid}#{cache_missing_message}"
53
+ raise Strongmind::Exceptions::TokenNotFoundError, "Token not found for user #{user.uid}#{cache_missing_message}"
58
54
  end
59
55
 
60
56
  cache_data[:access_token]
@@ -83,14 +79,12 @@ module Strongmind
83
79
  end
84
80
 
85
81
  def nav_item_data(item)
86
- url = send(item[:path_method])
82
+ url = item[:url]
87
83
  {
88
84
  name: item[:name],
89
85
  icon: item[:icon],
90
- url:,
91
- is_disabled: item[:feature_flag] ? !user.feature_flag_enabled?(item[:feature_flag]) : false,
92
- is_active: current_page?(url),
93
- is_external: false
86
+ url: url,
87
+ is_active: current_page?(url)
94
88
  }
95
89
  end
96
90
  end
@@ -0,0 +1,9 @@
1
+ module Strongmind
2
+ module Exceptions
3
+ class TokenNotFoundError < StandardError; end
4
+
5
+ class UserNotFoundError < StandardError; end
6
+
7
+ class RefreshTokenExpiredError < StandardError; end
8
+ end
9
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: strongmind-auth
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.12
4
+ version: 1.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Team Belding
@@ -128,6 +128,7 @@ files:
128
128
  - lib/strongmind/auth/engine.rb
129
129
  - lib/strongmind/auth/version.rb
130
130
  - lib/strongmind/common_nav_fetcher.rb
131
+ - lib/strongmind/exceptions.rb
131
132
  - lib/tasks/rails/auth_tasks.rake
132
133
  - lib/tasks/strongmind/auth_tasks.rake
133
134
  homepage: https://www.strongmind.com