onc_certification_g10_test_kit 7.1.0 → 7.2.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 +4 -4
- data/config/presets/g10_reference_server_preset.json +708 -532
- data/lib/onc_certification_g10_test_kit/bulk_data_authorization.rb +73 -67
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_cancel_stu1.rb +1 -2
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_cancel_stu2.rb +7 -1
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_parameters.rb +1 -1
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_stu1.rb +10 -2
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_validation.rb +6 -2
- data/lib/onc_certification_g10_test_kit/bulk_export_validation_tester.rb +4 -0
- data/lib/onc_certification_g10_test_kit/configuration_checker.rb +1 -1
- data/lib/onc_certification_g10_test_kit/encounter_context_test.rb +3 -3
- data/lib/onc_certification_g10_test_kit/export_kick_off_performer.rb +7 -3
- data/lib/onc_certification_g10_test_kit/multi_patient_api_stu1.rb +0 -4
- data/lib/onc_certification_g10_test_kit/multi_patient_api_stu2.rb +8 -4
- data/lib/onc_certification_g10_test_kit/patient_context_test.rb +3 -3
- data/lib/onc_certification_g10_test_kit/restricted_resource_type_access_group.rb +3 -10
- data/lib/onc_certification_g10_test_kit/scope_constants.rb +52 -0
- data/lib/onc_certification_g10_test_kit/short_id_map.yml +11 -20
- data/lib/onc_certification_g10_test_kit/single_patient_api_group.rb +4 -4
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_4_api_group.rb +4 -4
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_5_api_group.rb +4 -4
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_6_api_group.rb +4 -4
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_7_api_group.rb +4 -4
- data/lib/onc_certification_g10_test_kit/smart_app_launch_invalid_aud_group.rb +107 -64
- data/lib/onc_certification_g10_test_kit/smart_asymmetric_launch_group.rb +41 -88
- data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group.rb +31 -41
- data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2.rb +30 -52
- data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2_2.rb +32 -53
- data/lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb +99 -142
- data/lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_group.rb +16 -54
- data/lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_group_stu2_2.rb +16 -54
- data/lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_us_core_7_group.rb +16 -54
- data/lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_us_core_7_group_stu2_2.rb +16 -54
- data/lib/onc_certification_g10_test_kit/smart_granular_scope_selection_group.rb +29 -64
- data/lib/onc_certification_g10_test_kit/smart_granular_scope_selection_test.rb +4 -3
- data/lib/onc_certification_g10_test_kit/smart_invalid_pkce_group.rb +39 -83
- data/lib/onc_certification_g10_test_kit/smart_invalid_token_group.rb +42 -86
- data/lib/onc_certification_g10_test_kit/smart_invalid_token_group_stu2.rb +50 -88
- data/lib/onc_certification_g10_test_kit/smart_invalid_token_refresh_test.rb +9 -6
- data/lib/onc_certification_g10_test_kit/smart_limited_app_group.rb +86 -278
- data/lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group.rb +30 -57
- data/lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group_stu2.rb +34 -73
- data/lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group_stu2_2.rb +34 -73
- data/lib/onc_certification_g10_test_kit/smart_scopes_test.rb +6 -1
- data/lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb +88 -116
- data/lib/onc_certification_g10_test_kit/smart_v1_scopes_group.rb +60 -114
- data/lib/onc_certification_g10_test_kit/tasks/generate_matrix.rb +2 -11
- data/lib/onc_certification_g10_test_kit/token_introspection_group.rb +12 -25
- data/lib/onc_certification_g10_test_kit/token_introspection_group_stu2_2.rb +12 -14
- data/lib/onc_certification_g10_test_kit/token_revocation_group.rb +44 -33
- data/lib/onc_certification_g10_test_kit/unrestricted_resource_type_access_group.rb +3 -3
- data/lib/onc_certification_g10_test_kit/version.rb +2 -2
- data/lib/onc_certification_g10_test_kit.rb +104 -40
- metadata +9 -8
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative 'base_token_refresh_group'
|
2
|
+
require_relative 'scope_constants'
|
2
3
|
require_relative 'smart_invalid_token_refresh_test'
|
3
4
|
require_relative 'smart_scopes_test'
|
4
5
|
require_relative 'unauthorized_access_test'
|
@@ -7,6 +8,8 @@ require_relative 'encounter_context_test'
|
|
7
8
|
|
8
9
|
module ONCCertificationG10TestKit
|
9
10
|
class SmartEHRPractitionerAppGroup < Inferno::TestGroup
|
11
|
+
include ScopeConstants
|
12
|
+
|
10
13
|
title 'EHR Practitioner App'
|
11
14
|
short_title 'EHR Practitioner App'
|
12
15
|
input_instructions %(
|
@@ -65,29 +68,36 @@ module ONCCertificationG10TestKit
|
|
65
68
|
|
66
69
|
config(
|
67
70
|
inputs: {
|
68
|
-
|
69
|
-
name: :
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
71
|
+
smart_auth_info: {
|
72
|
+
name: :ehr_smart_auth_info,
|
73
|
+
title: 'EHR Launch Credentials',
|
74
|
+
options: {
|
75
|
+
mode: 'auth',
|
76
|
+
components: [
|
77
|
+
{
|
78
|
+
name: :auth_type,
|
79
|
+
default: 'symmetric',
|
80
|
+
locked: true
|
81
|
+
},
|
82
|
+
{
|
83
|
+
name: :use_discovery,
|
84
|
+
locked: true
|
85
|
+
}
|
86
|
+
]
|
87
|
+
}
|
74
88
|
}
|
75
89
|
}
|
76
90
|
)
|
77
91
|
|
78
|
-
input_order :url,
|
79
|
-
:ehr_client_id,
|
80
|
-
:ehr_client_secret,
|
81
|
-
:ehr_requested_scopes,
|
82
|
-
:use_pkce,
|
83
|
-
:pkce_code_challenge_method,
|
84
|
-
:ehr_authorization_method,
|
85
|
-
:client_auth_type,
|
86
|
-
:client_auth_encryption_method
|
87
|
-
|
88
92
|
group from: :smart_discovery do
|
89
93
|
required_suite_options(G10Options::SMART_1_REQUIREMENT)
|
90
94
|
|
95
|
+
config(
|
96
|
+
outputs: {
|
97
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
98
|
+
}
|
99
|
+
)
|
100
|
+
|
91
101
|
test from: 'g10_smart_well_known_capabilities',
|
92
102
|
config: {
|
93
103
|
options: {
|
@@ -108,6 +118,12 @@ module ONCCertificationG10TestKit
|
|
108
118
|
group from: :smart_discovery_stu2 do
|
109
119
|
required_suite_options(G10Options::SMART_2_REQUIREMENT)
|
110
120
|
|
121
|
+
config(
|
122
|
+
outputs: {
|
123
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
124
|
+
}
|
125
|
+
)
|
126
|
+
|
111
127
|
test from: 'g10_smart_well_known_capabilities',
|
112
128
|
config: {
|
113
129
|
options: {
|
@@ -132,6 +148,12 @@ module ONCCertificationG10TestKit
|
|
132
148
|
group from: :smart_discovery_stu2_2 do # rubocop:disable Naming/VariableNumber
|
133
149
|
required_suite_options(G10Options::SMART_2_2_REQUIREMENT)
|
134
150
|
|
151
|
+
config(
|
152
|
+
outputs: {
|
153
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
154
|
+
}
|
155
|
+
)
|
156
|
+
|
135
157
|
test from: 'g10_smart_well_known_capabilities',
|
136
158
|
config: {
|
137
159
|
options: {
|
@@ -157,26 +179,19 @@ module ONCCertificationG10TestKit
|
|
157
179
|
required_suite_options(G10Options::SMART_1_REQUIREMENT)
|
158
180
|
|
159
181
|
title 'EHR Launch With Practitioner Scope'
|
160
|
-
input :client_secret,
|
161
|
-
name: :ehr_client_secret,
|
162
|
-
title: 'EHR Launch Client Secret',
|
163
|
-
description: 'Client Secret provided during registration of Inferno as an EHR launch application',
|
164
|
-
optional: false
|
165
182
|
|
166
183
|
config(
|
167
184
|
inputs: {
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
user/PractitionerRole.read
|
179
|
-
).gsub(/\s{2,}/, ' ').strip
|
185
|
+
smart_auth_info: {
|
186
|
+
name: :ehr_smart_auth_info,
|
187
|
+
options: {
|
188
|
+
components: [
|
189
|
+
{
|
190
|
+
name: :requested_scopes,
|
191
|
+
default: EHR_SMART_1_SCOPES
|
192
|
+
}
|
193
|
+
]
|
194
|
+
}
|
180
195
|
}
|
181
196
|
}
|
182
197
|
)
|
@@ -185,7 +200,6 @@ module ONCCertificationG10TestKit
|
|
185
200
|
title 'User-level access with OpenID Connect and Refresh Token scopes used.'
|
186
201
|
config(
|
187
202
|
inputs: {
|
188
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
189
203
|
received_scopes: { name: :ehr_received_scopes }
|
190
204
|
},
|
191
205
|
options: {
|
@@ -206,16 +220,14 @@ module ONCCertificationG10TestKit
|
|
206
220
|
test from: :g10_patient_context,
|
207
221
|
config: {
|
208
222
|
inputs: {
|
209
|
-
patient_id: { name: :ehr_patient_id }
|
210
|
-
access_token: { name: :ehr_access_token }
|
223
|
+
patient_id: { name: :ehr_patient_id }
|
211
224
|
}
|
212
225
|
}
|
213
226
|
|
214
227
|
test from: :g10_encounter_context,
|
215
228
|
config: {
|
216
229
|
inputs: {
|
217
|
-
encounter_id: { name: :ehr_encounter_id }
|
218
|
-
access_token: { name: :ehr_access_token }
|
230
|
+
encounter_id: { name: :ehr_encounter_id }
|
219
231
|
}
|
220
232
|
},
|
221
233
|
required_suite_options: G10Options::US_CORE_5_REQUIREMENT
|
@@ -224,8 +236,7 @@ module ONCCertificationG10TestKit
|
|
224
236
|
id: :g10_encounter_context_us_core_6, # rubocop:disable Naming/VariableNumber
|
225
237
|
config: {
|
226
238
|
inputs: {
|
227
|
-
encounter_id: { name: :ehr_encounter_id }
|
228
|
-
access_token: { name: :ehr_access_token }
|
239
|
+
encounter_id: { name: :ehr_encounter_id }
|
229
240
|
}
|
230
241
|
},
|
231
242
|
required_suite_options: G10Options::US_CORE_6_REQUIREMENT
|
@@ -234,8 +245,7 @@ module ONCCertificationG10TestKit
|
|
234
245
|
id: :g10_encounter_context_us_core_7, # rubocop:disable Naming/VariableNumber
|
235
246
|
config: {
|
236
247
|
inputs: {
|
237
|
-
encounter_id: { name: :ehr_encounter_id }
|
238
|
-
access_token: { name: :ehr_access_token }
|
248
|
+
encounter_id: { name: :ehr_encounter_id }
|
239
249
|
}
|
240
250
|
},
|
241
251
|
required_suite_options: G10Options::US_CORE_7_REQUIREMENT
|
@@ -304,45 +314,28 @@ module ONCCertificationG10TestKit
|
|
304
314
|
)
|
305
315
|
end
|
306
316
|
|
307
|
-
group from: :smart_ehr_launch_stu2
|
308
|
-
config: {
|
309
|
-
inputs: {
|
310
|
-
use_pkce: {
|
311
|
-
default: 'true',
|
312
|
-
locked: true
|
313
|
-
},
|
314
|
-
pkce_code_challenge_method: {
|
315
|
-
locked: true
|
316
|
-
},
|
317
|
-
authorization_method: {
|
318
|
-
name: :ehr_authorization_method,
|
319
|
-
default: 'post',
|
320
|
-
locked: true
|
321
|
-
}
|
322
|
-
}
|
323
|
-
} do
|
317
|
+
group from: :smart_ehr_launch_stu2 do
|
324
318
|
required_suite_options(G10Options::SMART_2_REQUIREMENT)
|
325
319
|
|
326
320
|
title 'EHR Launch With Practitioner Scope'
|
327
|
-
input :client_secret,
|
328
|
-
name: :ehr_client_secret,
|
329
|
-
title: 'EHR Launch Client Secret',
|
330
|
-
description: 'Client Secret provided during registration of Inferno as an EHR launch application',
|
331
|
-
optional: false
|
332
321
|
|
333
322
|
config(
|
334
323
|
inputs: {
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
324
|
+
smart_auth_info: {
|
325
|
+
name: :ehr_smart_auth_info,
|
326
|
+
options: {
|
327
|
+
components: [
|
328
|
+
{
|
329
|
+
name: :requested_scopes,
|
330
|
+
default: EHR_SMART_2_SCOPES
|
331
|
+
},
|
332
|
+
{
|
333
|
+
name: :auth_request_method,
|
334
|
+
default: 'POST',
|
335
|
+
locked: true
|
336
|
+
}
|
337
|
+
]
|
338
|
+
}
|
346
339
|
}
|
347
340
|
}
|
348
341
|
)
|
@@ -351,7 +344,6 @@ module ONCCertificationG10TestKit
|
|
351
344
|
title 'User-level access with OpenID Connect and Refresh Token scopes used.'
|
352
345
|
config(
|
353
346
|
inputs: {
|
354
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
355
347
|
received_scopes: { name: :ehr_received_scopes }
|
356
348
|
},
|
357
349
|
options: {
|
@@ -372,16 +364,14 @@ module ONCCertificationG10TestKit
|
|
372
364
|
test from: :g10_patient_context,
|
373
365
|
config: {
|
374
366
|
inputs: {
|
375
|
-
patient_id: { name: :ehr_patient_id }
|
376
|
-
access_token: { name: :ehr_access_token }
|
367
|
+
patient_id: { name: :ehr_patient_id }
|
377
368
|
}
|
378
369
|
}
|
379
370
|
|
380
371
|
test from: :g10_encounter_context,
|
381
372
|
config: {
|
382
373
|
inputs: {
|
383
|
-
encounter_id: { name: :ehr_encounter_id }
|
384
|
-
access_token: { name: :ehr_access_token }
|
374
|
+
encounter_id: { name: :ehr_encounter_id }
|
385
375
|
}
|
386
376
|
},
|
387
377
|
required_suite_options: G10Options::US_CORE_5_REQUIREMENT
|
@@ -390,8 +380,7 @@ module ONCCertificationG10TestKit
|
|
390
380
|
id: :g10_encounter_context_us_core_6, # rubocop:disable Naming/VariableNumber
|
391
381
|
config: {
|
392
382
|
inputs: {
|
393
|
-
encounter_id: { name: :ehr_encounter_id }
|
394
|
-
access_token: { name: :ehr_access_token }
|
383
|
+
encounter_id: { name: :ehr_encounter_id }
|
395
384
|
}
|
396
385
|
},
|
397
386
|
required_suite_options: G10Options::US_CORE_6_REQUIREMENT
|
@@ -400,8 +389,7 @@ module ONCCertificationG10TestKit
|
|
400
389
|
id: :g10_encounter_context_us_core_7, # rubocop:disable Naming/VariableNumber
|
401
390
|
config: {
|
402
391
|
inputs: {
|
403
|
-
encounter_id: { name: :ehr_encounter_id }
|
404
|
-
access_token: { name: :ehr_access_token }
|
392
|
+
encounter_id: { name: :ehr_encounter_id }
|
405
393
|
}
|
406
394
|
},
|
407
395
|
required_suite_options: G10Options::US_CORE_7_REQUIREMENT
|
@@ -470,45 +458,28 @@ module ONCCertificationG10TestKit
|
|
470
458
|
)
|
471
459
|
end
|
472
460
|
|
473
|
-
group from: :smart_ehr_launch_stu2_2
|
474
|
-
config: {
|
475
|
-
inputs: {
|
476
|
-
use_pkce: {
|
477
|
-
default: 'true',
|
478
|
-
locked: true
|
479
|
-
},
|
480
|
-
pkce_code_challenge_method: {
|
481
|
-
locked: true
|
482
|
-
},
|
483
|
-
authorization_method: {
|
484
|
-
name: :ehr_authorization_method,
|
485
|
-
default: 'post',
|
486
|
-
locked: true
|
487
|
-
}
|
488
|
-
}
|
489
|
-
} do
|
461
|
+
group from: :smart_ehr_launch_stu2_2 do # rubocop:disable Naming/VariableNumber
|
490
462
|
required_suite_options(G10Options::SMART_2_2_REQUIREMENT)
|
491
463
|
|
492
464
|
title 'EHR Launch With Practitioner Scope'
|
493
|
-
input :client_secret,
|
494
|
-
name: :ehr_client_secret,
|
495
|
-
title: 'EHR Launch Client Secret',
|
496
|
-
description: 'Client Secret provided during registration of Inferno as an EHR launch application',
|
497
|
-
optional: false
|
498
465
|
|
499
466
|
config(
|
500
467
|
inputs: {
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
468
|
+
smart_auth_info: {
|
469
|
+
name: :ehr_smart_auth_info,
|
470
|
+
options: {
|
471
|
+
components: [
|
472
|
+
{
|
473
|
+
name: :requested_scopes,
|
474
|
+
default: EHR_SMART_2_SCOPES
|
475
|
+
},
|
476
|
+
{
|
477
|
+
name: :auth_request_method,
|
478
|
+
default: 'POST',
|
479
|
+
locked: true
|
480
|
+
}
|
481
|
+
]
|
482
|
+
}
|
512
483
|
}
|
513
484
|
}
|
514
485
|
)
|
@@ -517,7 +488,6 @@ module ONCCertificationG10TestKit
|
|
517
488
|
title 'User-level access with OpenID Connect and Refresh Token scopes used.'
|
518
489
|
config(
|
519
490
|
inputs: {
|
520
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
521
491
|
received_scopes: { name: :ehr_received_scopes }
|
522
492
|
},
|
523
493
|
options: {
|
@@ -538,16 +508,14 @@ module ONCCertificationG10TestKit
|
|
538
508
|
test from: :g10_patient_context,
|
539
509
|
config: {
|
540
510
|
inputs: {
|
541
|
-
patient_id: { name: :ehr_patient_id }
|
542
|
-
access_token: { name: :ehr_access_token }
|
511
|
+
patient_id: { name: :ehr_patient_id }
|
543
512
|
}
|
544
513
|
}
|
545
514
|
|
546
515
|
test from: :g10_encounter_context,
|
547
516
|
config: {
|
548
517
|
inputs: {
|
549
|
-
encounter_id: { name: :ehr_encounter_id }
|
550
|
-
access_token: { name: :ehr_access_token }
|
518
|
+
encounter_id: { name: :ehr_encounter_id }
|
551
519
|
}
|
552
520
|
},
|
553
521
|
required_suite_options: G10Options::US_CORE_5_REQUIREMENT
|
@@ -556,8 +524,7 @@ module ONCCertificationG10TestKit
|
|
556
524
|
id: :g10_encounter_context_us_core_6, # rubocop:disable Naming/VariableNumber
|
557
525
|
config: {
|
558
526
|
inputs: {
|
559
|
-
encounter_id: { name: :ehr_encounter_id }
|
560
|
-
access_token: { name: :ehr_access_token }
|
527
|
+
encounter_id: { name: :ehr_encounter_id }
|
561
528
|
}
|
562
529
|
},
|
563
530
|
required_suite_options: G10Options::US_CORE_6_REQUIREMENT
|
@@ -566,8 +533,7 @@ module ONCCertificationG10TestKit
|
|
566
533
|
id: :g10_encounter_context_us_core_7, # rubocop:disable Naming/VariableNumber
|
567
534
|
config: {
|
568
535
|
inputs: {
|
569
|
-
encounter_id: { name: :ehr_encounter_id }
|
570
|
-
access_token: { name: :ehr_access_token }
|
536
|
+
encounter_id: { name: :ehr_encounter_id }
|
571
537
|
}
|
572
538
|
},
|
573
539
|
required_suite_options: G10Options::US_CORE_7_REQUIREMENT
|
@@ -641,9 +607,7 @@ module ONCCertificationG10TestKit
|
|
641
607
|
config: {
|
642
608
|
inputs: {
|
643
609
|
id_token: { name: :ehr_id_token },
|
644
|
-
|
645
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
646
|
-
smart_credentials: { name: :ehr_smart_credentials }
|
610
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
647
611
|
}
|
648
612
|
}
|
649
613
|
|
@@ -653,9 +617,7 @@ module ONCCertificationG10TestKit
|
|
653
617
|
config: {
|
654
618
|
inputs: {
|
655
619
|
id_token: { name: :ehr_id_token },
|
656
|
-
|
657
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
658
|
-
smart_credentials: { name: :ehr_smart_credentials }
|
620
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
659
621
|
}
|
660
622
|
}
|
661
623
|
|
@@ -664,9 +626,7 @@ module ONCCertificationG10TestKit
|
|
664
626
|
config: {
|
665
627
|
inputs: {
|
666
628
|
id_token: { name: :ehr_id_token },
|
667
|
-
|
668
|
-
requested_scopes: { name: :ehr_requested_scopes },
|
669
|
-
smart_credentials: { name: :ehr_smart_credentials }
|
629
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
670
630
|
}
|
671
631
|
}
|
672
632
|
|
@@ -675,9 +635,6 @@ module ONCCertificationG10TestKit
|
|
675
635
|
|
676
636
|
config(
|
677
637
|
inputs: {
|
678
|
-
refresh_token: { name: :ehr_refresh_token },
|
679
|
-
client_id: { name: :ehr_client_id },
|
680
|
-
client_secret: { name: :ehr_client_secret },
|
681
638
|
received_scopes: { name: :ehr_received_scopes }
|
682
639
|
},
|
683
640
|
outputs: {
|
@@ -686,7 +643,7 @@ module ONCCertificationG10TestKit
|
|
686
643
|
access_token: { name: :ehr_access_token },
|
687
644
|
token_retrieval_time: { name: :ehr_token_retrieval_time },
|
688
645
|
expires_in: { name: :ehr_expires_in },
|
689
|
-
|
646
|
+
smart_auth_info: { name: :ehr_smart_auth_info }
|
690
647
|
}
|
691
648
|
)
|
692
649
|
|
@@ -709,12 +666,12 @@ module ONCCertificationG10TestKit
|
|
709
666
|
id :g10_ehr_credentials_export
|
710
667
|
title 'Set SMART Credentials to EHR Launch Credentials'
|
711
668
|
|
712
|
-
input :
|
669
|
+
input :ehr_smart_auth_info, type: :auth_info
|
713
670
|
input :ehr_patient_id
|
714
|
-
output :
|
671
|
+
output :smart_auth_info, :patient_id
|
715
672
|
|
716
673
|
run do
|
717
|
-
output
|
674
|
+
output smart_auth_info: ehr_smart_auth_info.to_s,
|
718
675
|
patient_id: ehr_patient_id
|
719
676
|
end
|
720
677
|
end
|
@@ -92,6 +92,22 @@ module ONCCertificationG10TestKit
|
|
92
92
|
|
93
93
|
input :url
|
94
94
|
|
95
|
+
config(
|
96
|
+
inputs: {
|
97
|
+
smart_auth_info: {
|
98
|
+
options: {
|
99
|
+
components: [
|
100
|
+
Inferno::DSL::AuthInfo.default_auth_type_component_without_backend_services,
|
101
|
+
{
|
102
|
+
name: :jwks,
|
103
|
+
locked: true
|
104
|
+
}
|
105
|
+
]
|
106
|
+
}
|
107
|
+
}
|
108
|
+
}
|
109
|
+
)
|
110
|
+
|
95
111
|
children.each(&:run_as_group)
|
96
112
|
|
97
113
|
# Replace generic finer-grained scope auth group with which allows standalone or
|
@@ -125,64 +141,10 @@ module ONCCertificationG10TestKit
|
|
125
141
|
|
126
142
|
config(
|
127
143
|
inputs: {
|
128
|
-
authorization_method: {
|
129
|
-
name: :granular_scopes_authorization_method,
|
130
|
-
title: 'Granular Scopes Authorization Request Method'
|
131
|
-
},
|
132
|
-
client_auth_type: {
|
133
|
-
name: :granular_scopes_client_auth_type,
|
134
|
-
title: 'Granular Scopes Client Authentication Type'
|
135
|
-
},
|
136
144
|
received_scopes: {
|
137
145
|
name: :standalone_received_scopes
|
138
146
|
}
|
139
147
|
}
|
140
148
|
)
|
141
|
-
|
142
|
-
granular_scopes_group1.config(
|
143
|
-
inputs: {
|
144
|
-
client_id: {
|
145
|
-
name: :granular_scopes1_client_id,
|
146
|
-
title: 'Granular Scopes Group 1 Client ID'
|
147
|
-
},
|
148
|
-
client_secret: {
|
149
|
-
name: :granular_scopes1_client_secret,
|
150
|
-
title: 'Granular Scopes Group 1 Client Secret'
|
151
|
-
},
|
152
|
-
requested_scopes: {
|
153
|
-
title: 'Granular Scopes Group 1 Scopes'
|
154
|
-
}
|
155
|
-
}
|
156
|
-
)
|
157
|
-
|
158
|
-
granular_scopes_group2.config(
|
159
|
-
inputs: {
|
160
|
-
client_id: {
|
161
|
-
name: :granular_scopes2_client_id,
|
162
|
-
title: 'Granular Scopes Group 2 Client ID'
|
163
|
-
},
|
164
|
-
client_secret: {
|
165
|
-
name: :granular_scopes2_client_secret,
|
166
|
-
title: 'Granular Scopes Group 2 Client Secret'
|
167
|
-
},
|
168
|
-
requested_scopes: {
|
169
|
-
title: 'Granular Scopes Group 2 Scopes'
|
170
|
-
}
|
171
|
-
}
|
172
|
-
)
|
173
|
-
|
174
|
-
input_order :url,
|
175
|
-
:granular_scopes1_client_id,
|
176
|
-
:requested_scopes_group1,
|
177
|
-
:granular_scopes_authorization_method,
|
178
|
-
:granular_scopes_client_auth_type,
|
179
|
-
:granular_scopes1_client_secret,
|
180
|
-
:client_auth_encryption_method,
|
181
|
-
:granular_scopes2_client_id,
|
182
|
-
:requested_scopes_group2,
|
183
|
-
:granular_scopes2_client_secret,
|
184
|
-
:use_pkce,
|
185
|
-
:pkce_code_challenge_method,
|
186
|
-
:patient_ids
|
187
149
|
end
|
188
150
|
end
|
@@ -92,6 +92,22 @@ module ONCCertificationG10TestKit
|
|
92
92
|
|
93
93
|
input :url
|
94
94
|
|
95
|
+
config(
|
96
|
+
inputs: {
|
97
|
+
smart_auth_info: {
|
98
|
+
options: {
|
99
|
+
components: [
|
100
|
+
Inferno::DSL::AuthInfo.default_auth_type_component_without_backend_services,
|
101
|
+
{
|
102
|
+
name: :jwks,
|
103
|
+
locked: true
|
104
|
+
}
|
105
|
+
]
|
106
|
+
}
|
107
|
+
}
|
108
|
+
}
|
109
|
+
)
|
110
|
+
|
95
111
|
children.each(&:run_as_group)
|
96
112
|
|
97
113
|
# Replace generic finer-grained scope auth group with which allows standalone or
|
@@ -125,64 +141,10 @@ module ONCCertificationG10TestKit
|
|
125
141
|
|
126
142
|
config(
|
127
143
|
inputs: {
|
128
|
-
authorization_method: {
|
129
|
-
name: :granular_scopes_authorization_method,
|
130
|
-
title: 'Granular Scopes Authorization Request Method'
|
131
|
-
},
|
132
|
-
client_auth_type: {
|
133
|
-
name: :granular_scopes_client_auth_type,
|
134
|
-
title: 'Granular Scopes Client Authentication Type'
|
135
|
-
},
|
136
144
|
received_scopes: {
|
137
145
|
name: :standalone_received_scopes
|
138
146
|
}
|
139
147
|
}
|
140
148
|
)
|
141
|
-
|
142
|
-
granular_scopes_group1.config(
|
143
|
-
inputs: {
|
144
|
-
client_id: {
|
145
|
-
name: :granular_scopes1_client_id,
|
146
|
-
title: 'Granular Scopes Group 1 Client ID'
|
147
|
-
},
|
148
|
-
client_secret: {
|
149
|
-
name: :granular_scopes1_client_secret,
|
150
|
-
title: 'Granular Scopes Group 1 Client Secret'
|
151
|
-
},
|
152
|
-
requested_scopes: {
|
153
|
-
title: 'Granular Scopes Group 1 Scopes'
|
154
|
-
}
|
155
|
-
}
|
156
|
-
)
|
157
|
-
|
158
|
-
granular_scopes_group2.config(
|
159
|
-
inputs: {
|
160
|
-
client_id: {
|
161
|
-
name: :granular_scopes2_client_id,
|
162
|
-
title: 'Granular Scopes Group 2 Client ID'
|
163
|
-
},
|
164
|
-
client_secret: {
|
165
|
-
name: :granular_scopes2_client_secret,
|
166
|
-
title: 'Granular Scopes Group 2 Client Secret'
|
167
|
-
},
|
168
|
-
requested_scopes: {
|
169
|
-
title: 'Granular Scopes Group 2 Scopes'
|
170
|
-
}
|
171
|
-
}
|
172
|
-
)
|
173
|
-
|
174
|
-
input_order :url,
|
175
|
-
:granular_scopes1_client_id,
|
176
|
-
:requested_scopes_group1,
|
177
|
-
:granular_scopes_authorization_method,
|
178
|
-
:granular_scopes_client_auth_type,
|
179
|
-
:granular_scopes1_client_secret,
|
180
|
-
:client_auth_encryption_method,
|
181
|
-
:granular_scopes2_client_id,
|
182
|
-
:requested_scopes_group2,
|
183
|
-
:granular_scopes2_client_secret,
|
184
|
-
:use_pkce,
|
185
|
-
:pkce_code_challenge_method,
|
186
|
-
:patient_ids
|
187
149
|
end
|
188
150
|
end
|