identikey 0.4.2 → 0.4.3
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 +4 -4
- data/.gitignore +2 -0
- data/README.md +5 -0
- data/identikey.gemspec +1 -0
- data/lib/identikey/administration/digipass.rb +31 -2
- data/lib/identikey/administration.rb +13 -0
- data/lib/identikey/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7250ec019f47150ff6dd6c34436cda2615daad7cc2ab27a9ff24b92a8d412985
|
4
|
+
data.tar.gz: dc079e945e696d1480f80e90ab1ecf339a8b441c243cca201332c199c22ed570
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 348dc3966a4bf3e9d31afefc738a0f698572035f2fed833de9f5260d115bd2b528eb546a69599cf67982ed23561691554055b1d998255f69454c681b26f48956
|
7
|
+
data.tar.gz: 8afac75cce4902ce9e3939505c7f1a6707555b7ba1e9906cec0645d136a820fb8f6108c906c76982753499adec8fcd1a9c7a771e1e3861be6c15b7f25f7ec8fa
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -190,6 +190,11 @@ After checking out the repo, run `bin/setup` to install dependencies. Then,
|
|
190
190
|
run `rake` to run the tests. You can also run `bin/console` for an interactive
|
191
191
|
prompt that will allow you to experiment.
|
192
192
|
|
193
|
+
To run specs, please copy `spec/test.env.example` into `spec/test.env` and
|
194
|
+
populate it with your Identikey Authentication Server host, username, password
|
195
|
+
and domain. You also need the Identikey SDK, that can be placed in `/sdk` and
|
196
|
+
its WSDL paths as well referenced in the `spec/test.env` file.
|
197
|
+
|
193
198
|
To install this gem onto your local machine, run `bundle exec rake install`.
|
194
199
|
|
195
200
|
To release a new version, update the version number in `version.rb`, and then
|
data/identikey.gemspec
CHANGED
@@ -77,9 +77,11 @@ module Identikey
|
|
77
77
|
replace(digipass)
|
78
78
|
end
|
79
79
|
|
80
|
-
def test_otp(otp)
|
80
|
+
def test_otp(otp, application: nil)
|
81
|
+
application ||= self.default_application!
|
82
|
+
|
81
83
|
stat, appl, error = @session.execute(
|
82
|
-
:digipassappl_execute_TEST_OTP, serial_no: self.serial, appl:
|
84
|
+
:digipassappl_execute_TEST_OTP, serial_no: self.serial, appl: application, otp: otp)
|
83
85
|
|
84
86
|
# Stat is useless here - it reports whether the call or not has
|
85
87
|
# succeeded, not whether the OTP is valid
|
@@ -90,6 +92,33 @@ module Identikey
|
|
90
92
|
appl['DIGIPASSAPPLFLD_RESULT_CODE'] == '0'
|
91
93
|
end
|
92
94
|
|
95
|
+
def set_pin(pin, application: nil)
|
96
|
+
application ||= self.default_application!
|
97
|
+
|
98
|
+
stat, _, error = @session.execute(
|
99
|
+
:digipassappl_execute_SET_PIN, serial_no: self.serial, appl: application, pin: pin)
|
100
|
+
|
101
|
+
if stat != 'STAT_SUCCESS'
|
102
|
+
raise Identikey::OperationFailed, "Set PIN failed: #{stat} - #{error}"
|
103
|
+
end
|
104
|
+
|
105
|
+
true
|
106
|
+
end
|
107
|
+
|
108
|
+
def default_application!
|
109
|
+
if self.applications.size == 1
|
110
|
+
self.applications.first
|
111
|
+
else
|
112
|
+
raise Identikey::UsageError,
|
113
|
+
"Digipass #{self.serial} has more than one application. " \
|
114
|
+
"Please specify which one to use out of #{applications.join(', ')}"
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
def applications
|
119
|
+
@_applications ||= @attributes.fetch(:application).split(',')
|
120
|
+
end
|
121
|
+
|
93
122
|
def method_missing(name, *args, &block)
|
94
123
|
if @attributes.key?(name)
|
95
124
|
@attributes.fetch(name)
|
@@ -219,5 +219,18 @@ module Identikey
|
|
219
219
|
)
|
220
220
|
end
|
221
221
|
|
222
|
+
def digipassappl_execute_SET_PIN(session_id:, serial_no:, appl:, pin:)
|
223
|
+
digipassappl_execute(
|
224
|
+
session_id: session_id,
|
225
|
+
cmd: 'DIGIPASSAPPLCMD_SET_PIN',
|
226
|
+
attributes: typed_attributes_list_from(
|
227
|
+
DIGIPASSAPPLFLD_SERNO: serial_no,
|
228
|
+
DIGIPASSAPPLFLD_APPL_NAME: appl,
|
229
|
+
DIGIPASSAPPLFLD_NEW_PIN: pin,
|
230
|
+
DIGIPASSAPPLFLD_NEW_PIN_CONF: pin
|
231
|
+
)
|
232
|
+
)
|
233
|
+
end
|
234
|
+
|
222
235
|
end
|
223
236
|
end
|
data/lib/identikey/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: identikey
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marcello Barnaba
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-07-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: savon
|
@@ -122,6 +122,20 @@ dependencies:
|
|
122
122
|
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: dotenv
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
125
139
|
description: This gem contains a SOAP client to consume Identikey API
|
126
140
|
email:
|
127
141
|
- vjt@openssl.it
|