login_radius 11.3.0 → 11.4.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1548a06b5a983aa27237e2a227f3c689f14fb510ad380764d93c562c68f60259
4
- data.tar.gz: 4f37e09e9ed84615b939afca5c02ce0f4e20d91b312f665a3dafea42c4bd21cc
3
+ metadata.gz: b0f37dbd647854caec292ac3a27dae1cc46f379843a34f56c923bd92db81e294
4
+ data.tar.gz: cd9f01b10e3f61b63ff6dc8938856a35622f73399b5509b0986f3b4d76d93a5c
5
5
  SHA512:
6
- metadata.gz: e205518ba3bb793bc30745ac85ef18473e7b0af4d8888c7add521d1dfaf6152960715ae2af0ae6848d27e3fa67552fff8227b57f34fa6b41c249377fa91da2ae
7
- data.tar.gz: e6889286f27fcbe71a12e4736015619a2d2472e546217fee7d022d420fbc42ebf9b8907d94265dfc4185f0bfb86f4f9a8d668fe7c678acf1a89ee33d0f8976f0
6
+ metadata.gz: 40f3b4f32ab8fd4e634060e35f3de1c3e3da90f27d6db2fd3f6a51a38f75ca02100f784ca8ecfd41e38fb5e6e9dad749b8038017ab91eacf322d418bc20bb06e
7
+ data.tar.gz: 295da43200cbcbb3d5167386ec9bb67871ce2ba85af8daa49fd8d5cb915c0248bca2d762951c9e0fb90ad2c5b5686cc753ab0c16701909758eadbf5f76502c63
data/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  Install the SDK by adding LoginRadius to your application's `Gemfile`.
4
4
 
5
- ```
6
- gem 'login_radius', '~> 11.3.0'
5
+ ```shell
6
+ gem 'login_radius', '~> 11.4.0'
7
7
  ```
8
8
 
9
9
  Then, run `$ bundle`. A copy of the SDK can also be found on our [Github](https://github.com/LoginRadius/ruby-on-rails-gem/tree/master).
@@ -12,7 +12,7 @@ Then, run `$ bundle`. A copy of the SDK can also be found on our [Github](https:
12
12
 
13
13
  1)Before using any of the functions available in the library, its corresponding module must first define the global constant in `config/application.yml`:
14
14
 
15
- ```
15
+ ```ruby
16
16
  SITE_NAME: "<site name>"
17
17
  API_KEY: "<api-key>"
18
18
  API_SECRET: "<api-secret>"
@@ -26,7 +26,7 @@ Create `login_radius.rb` in `/config/initializers`:
26
26
 
27
27
 
28
28
 
29
- ```
29
+ ```ruby
30
30
  require 'login_radius'
31
31
 
32
32
  ::AccountApi = LoginRadius::AccountApi.new
@@ -279,6 +279,46 @@ module LoginRadius
279
279
  return headers
280
280
  end
281
281
 
282
+ # Local - Generate SOTT:
283
+ # Generates a Secured One Time Token manually.
284
+ #
285
+ # Do not pass the time difference if you are passing start_time & end_time.
286
+ # @params time_difference [Integer] (Optional)The time_difference will be used to set the expiration time of SOTT, If you do not pass time_difference then the default expiration time of SOTT is 10 minutes.
287
+ # @params api_key [String] (Optional) LoginRadius Api Key.
288
+ # @params api_secret [String] (Optional) LoginRadius Api Secret.
289
+ # You can pass the start_time , end_time interval and the SOTT will be valid for this time duration.
290
+ # @params start_time [String] (Optional) The start time of the SOTT.
291
+ # @params end_time [String] (Optional) The end time of the SOTT.
292
+ # @returns sott [String] LoginRadius Secured One Time Token
293
+ def get_sott(time_difference="", api_key="", api_secret="",start_time="",end_time="")
294
+
295
+ key= !isNullOrWhiteSpace(api_key) ? api_key:ENV['API_KEY']
296
+ time_difference= !isNullOrWhiteSpace(time_difference) ? time_difference.to_i : 10
297
+ secret=!isNullOrWhiteSpace(api_secret) ? api_secret:ENV['API_SECRET']
298
+ start_date_time=!isNullOrWhiteSpace(start_time)&&!isNullOrWhiteSpace(end_time)? start_time:Time.now.getutc().strftime('%Y/%m/%d %H:%M:%S')
299
+ end_date_time =!isNullOrWhiteSpace(start_time)&&!isNullOrWhiteSpace(end_time)? end_time:(Time.now.getutc() + (time_difference*60)).strftime('%Y/%m/%d %H:%M:%S')
300
+
301
+
302
+ plain_text = start_date_time + '#' + key + '#' + end_date_time
303
+ iter = 10000
304
+ salt = "\x00\x00\x00\x00\x00\x00\x00\x00"
305
+ key_len = KEY_SIZE / 8
306
+ cipher_key = OpenSSL::PKCS5.pbkdf2_hmac_sha1(secret, salt, iter, key_len)
307
+
308
+ cipher = OpenSSL::Cipher.new('aes-' + KEY_SIZE.to_s + '-cbc')
309
+ cipher.encrypt
310
+ cipher.key = cipher_key
311
+ cipher.iv = INIT_VECTOR
312
+
313
+ encrypted = cipher.update(plain_text) + cipher.final
314
+ encrypted_b64 = Base64.strict_encode64(encrypted)
315
+
316
+ hash = Digest::MD5.hexdigest(encrypted_b64)
317
+ sott = encrypted_b64 + '*' + hash
318
+ return sott
319
+ end
320
+
321
+ # DEPRECATED: Please use get_sott instead.
282
322
  # Local - Generate SOTT:
283
323
  # Generates a Secured One Time Token manually.
284
324
  #
@@ -1,3 +1,3 @@
1
1
  module LoginRadius
2
- VERSION = "11.3.0"
2
+ VERSION = "11.4.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: login_radius
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.3.0
4
+ version: 11.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - LoginRadius
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-01-31 00:00:00.000000000 Z
11
+ date: 2022-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler