diff options
Diffstat (limited to 'lib/gitlab/jwt_authenticatable.rb')
-rw-r--r-- | lib/gitlab/jwt_authenticatable.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/gitlab/jwt_authenticatable.rb b/lib/gitlab/jwt_authenticatable.rb index d7a341b3ba2..b8282163cbc 100644 --- a/lib/gitlab/jwt_authenticatable.rb +++ b/lib/gitlab/jwt_authenticatable.rb @@ -13,10 +13,12 @@ module Gitlab module ClassMethods include Gitlab::Utils::StrongMemoize - def decode_jwt(encoded_message, jwt_secret = secret, algorithm: 'HS256', issuer: nil, iat_after: nil) + def decode_jwt( + encoded_message, jwt_secret = secret, algorithm: 'HS256', issuer: nil, iat_after: nil, audience: nil) options = { algorithm: algorithm } options = options.merge(iss: issuer, verify_iss: true) if issuer.present? options = options.merge(verify_iat: true) if iat_after.present? + options = options.merge(aud: audience, verify_aud: true) if audience.present? decoded_message = JWT.decode(encoded_message, jwt_secret, true, options) payload = decoded_message[0] |