This repository was archived by the owner on Sep 7, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathconfig.yml
More file actions
311 lines (292 loc) · 19.7 KB
/
config.yml
File metadata and controls
311 lines (292 loc) · 19.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
resources:
- name: fhir_apis
type: solutions.api
properties:
inputs:
- name: org
prompt: Edge Org name
- name: username
prompt: Edge Username
ifNotPresent: token
- name: password
prompt: Edge Password
ifNotPresent: token
- name: env
prompt: Edge Org Environment
- name: target_server_host
prompt: Target server host URL
- name: target_server_port
prompt: Target server port
default: 80
- name: target_server_basepath
prompt: Target server basepath
configurations:
- env: test
edge_host: https://api.enterprise.apigee.com
host: '{{ org }}-{{ env }}.apigee.net'
- env : prod
edge_host: https://api.enterprise.apigee.com
host: '{{ org }}-{{ env }}.apigee.net'
edgeOrg:
script: gulpfile.js
basePath: .
dependencies:
subResources:
- name: target_server
type: targetServer
items:
- name: target_server_1
payload: '{ "host": "{{ target_server_host }}","isEnabled": true,"name": "fhirserver","port": "{{ target_server_port }}"}'
- name: replace_variables_fhir
type: configSubstitutions
items:
- name: connector_domain
filePaths: ['src/gateway/fhir-api/target/apiproxy/policies/HPX_SetConnector.xml']
value: '{{ org }}-{{ env }}.apigee.net'
- name: connector_basepath
filePaths: ['src/gateway/fhir-api/target/apiproxy/policies/HPX_SetConnector.xml']
value: 'hapi-dstu2'
- name: targetBaseURI
filePaths: ['src/gateway/fhir-connector-hapi-dstu2/target/apiproxy/policies/HPX_SetTargetBasepath.xml']
value: '{{ target_server_basepath }}'
- name: insurance_proxies
type: proxy
items:
- name: fhir-api
- name: fhir-connector-hapi-dstu2
- name: catch-all
- name: oauth-b2b
- name: developers
type: developer
items:
- payload: '{"email":"testuser@apigee.com", "firstName":"test","lastName":"user","userName":"testuser"}'
email: testuser@apigee.com
- payload: '{"email":"user@identity.com", "firstName":"Identity","lastName":"User","userName":"iuser"}'
email: user@identity.com
- name: apiProducts
type: product
items:
- name: testFHIRproduct
payload: '{"approvalType":"auto","attributes": [{"name": "RATE_LIMIT_OVERRIDE_LIMIT","value": "100ps"}],"displayName":"testFHIRproduct","name":"testFHIRproduct","environments":["{{ env }}"],"proxies": ["fhir-api"],"apiResources":["/","/**"],"quota": "10000", "quotaInterval": "1", "quotaTimeUnit": "minute","scopes" : ["patient/Allergyintolerance.read","patient/Allergyintolerance.write","patient/Careplan.read","patient/Careplan.write","patient/Condition.read","patient/Condition.write","patient/Diagnosticorder.read","patient/Diagnosticorder.write","patient/Diagnosticreport.read","patient/Diagnosticreport.write","patient/Documentreference.read","patient/Documentreference.write","patient/Encounter.read","patient/Encounter.write","patient/Immunization.read","patient/Immunization.write","patient/Medicationadministration.read","patient/Medicationadministration.write","patient/Medicationdispense.read","patient/Medicationdispense.write","patient/Medicationorder.read","patient/Medicationorder.write","patient/Medicationstatement.read","patient/Medicationstatement.write","patient/Observation.read","patient/Observation.write","patient/Patient.read","patient/Patient.write","patient/Practitioner.read","patient/Practitioner.write","patient/Procedure.read","patient/Procedure.write","user/Allergyintolerance.read","user/Allergyintolerance.write","user/Careplan.read","user/Careplan.write","user/Condition.read","user/Condition.write","user/Diagnosticorder.read","user/Diagnosticorder.write","user/Diagnosticreport.read","user/Diagnosticreport.write","user/Documentreference.read","user/Documentreference.write","user/Encounter.read","user/Encounter.write","user/Immunization.read","user/Immunization.write","user/Medicationadministration.read","user/Medicationadministration.write","user/Medicationdispense.read","user/Medicationdispense.write","user/Medicationorder.read","user/Medicationorder.write","user/Medicationstatement.read","user/Medicationstatement.write","user/Observation.read","user/Observation.write","user/Patient.read","user/Patient.write","user/Practitioner.read","user/Practitioner.write","user/Procedure.read","user/Procedure.write","patient/Schedule.read","patient/Schedule.write","user/Schedule.read","user/Schedule.write","patient/Coverage.read","patient/Coverage.write","user/Coverage.read","user/Coverage.write"]}'
- name: identityproduct
payload: '{"approvalType":"auto","attributes": [{"name": "RATE_LIMIT_OVERRIDE_LIMIT","value": "100ps"}],"displayName":"Identity App Product","name":"identityproduct","environments":["{{ env }}"], "quota": "100", "quotaInterval": "1", "quotaTimeUnit": "minute","scopes" :["patient/Allergyintolerance.read","patient/Allergyintolerance.write","patient/Careplan.read","patient/Careplan.write","patient/Condition.read","patient/Condition.write","patient/Diagnosticorder.read","patient/Diagnosticorder.write","patient/Diagnosticreport.read","patient/Diagnosticreport.write","patient/Documentreference.read","patient/Documentreference.write","patient/Encounter.read","patient/Encounter.write","patient/Immunization.read","patient/Immunization.write","patient/Medicationadministration.read","patient/Medicationadministration.write","patient/Medicationdispense.read","patient/Medicationdispense.write","patient/Medicationorder.read","patient/Medicationorder.write","patient/Medicationstatement.read","patient/Medicationstatement.write","patient/Observation.read","patient/Observation.write","patient/Patient.read","patient/Patient.write","patient/Practitioner.read","patient/Practitioner.write","patient/Procedure.read","patient/Procedure.write","patient/Schedule.read","patient/Schedule.write","patient/Coverage.read","patient/Coverage.write"]}'
- name: developerApps
type: app
items:
- name: testFHIRApp
payload: '{"name":"testFHIRApp","callback":"https://{{ org }}-{{ env }}.apigee.net","email":"testuser@apigee.com","apiProducts":"testFHIRproduct"}'
- name: IdentityApp
payload: '{"name":"IdentityApp", "callback":"https://{{ org }}-{{ env }}.apigee.net/identity_app/callback","email":"user@identity.com","apiProducts":"identityproduct"}'
assignResponse:
- from: credentials.0.consumerKey
to: apiKey_identity
- from: credentials.0.consumerSecret
to: apiSecret_identity
- name: cacheResources
type: cache
items:
- name: consent-session-cache
payload: '{ "name": "consent-session-cache"}'
- name: application-session-cache
payload: '{ "name": "auth-req-param-cache"}'
- name: sms-token-cache
payload: '{ "name": "session-cookie-cache"}'
- name: nonce-cache
payload: '{ "name": "nonce-cache"}'
- name: message_kvm
type: kvm
items:
- name: GoogleServiceAccountKVM
payload: '{ "name" : "GoogleServiceAccountKVM", "entry" : [ { "name" : "privateKey", "value" : "<% serviceaccount_private_key %>" } ] , "encrypted": "true"}'
- name: replaceDatastoreProject
type: configSubstitutions
items:
- name: datastoreProject
filePaths: ['src/gateway/datastore-connector/target/apiproxy/targets/default.xml','src/gateway/datastore-connector/target/apiproxy/policies/Service-Callout-Get-Entity.xml']
value: '<% serviceaccount_project %>'
- name: client_email
filePaths: ['src/gateway/datastore-connector/target/apiproxy/policies/Generate-JWT-Datastore.xml']
value: '<% serviceaccount_client_email %>'
- name: token_uri
filePaths: ['src/gateway/datastore-connector/target/apiproxy/policies/Generate-JWT-Datastore.xml','src/gateway/datastore-connector/target/apiproxy/policies/Service-Callout-Get-Access-Token.xml']
value: '<% serviceaccount_token_uri %>'
- name: datastore-connector api
type: proxy
items:
- name: datastore-connector
apiName: datastore-connector
- name: fhirsandbox-connector
apiName: fhirsandbox-connector
- name: dsApiProducts
type: product
items:
- payload: '{"approvalType":"auto", "attributes":[{"name":"access","value":"private"}], "displayName":"Internal Datastore Product","name":"datastore_product","environments":["test","prod"],"scopes":[]}'
name: datastore_api
- name: dsDeveloperApps
type: app
items:
- name: internal_DS
payload: '{"name":"internal_datastore_app","callback":"http://localhost/","email":"user@identity.com","apiProducts":"datastore_product"}'
assignResponse:
- from: credentials.0.consumerKey
to: apiKey_DS
- name: generate_auth
type: util
items:
- action: base64.encode
value: '{{ apiKey_identity }}:{{ apiSecret_identity }}'
assignTo: base64_auth
- name: replace_variables_consent_app
type: configSubstitutions
items:
- name: consent_app_RedirectToConsent
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_redirectToConsent.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/openid/index?sessionid={sessionid}'
- name: AssignSendSMSAPIRequest_apikey
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_AssignSendSMSAPIRequest.xml']
value: '{{ apiKey_identity }}'
- name: logoutRedircetUri
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_AssignlogoutRedircetUri.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/openid/index'
- name: hostName
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_AddVariablesToTargetRequest.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net'
- name: base64_auth
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_CheckAlreadyConsented.ServiceCallout.xml','src/gateway/identity-consent-app/target/apiproxy/policies/HPX_GetUserApps.ServiceCallout.xml','src/gateway/identity-consent-app/target/apiproxy/policies/HPX_RevokeUserConsent.ServiceCallout.xml','src/gateway/identity-consent-app/target/apiproxy/policies/HPX_ValidatePin.ServiceCallout.xml']
value: 'Basic {{ base64_auth }}'
- name: HPX_CheckAlreadyConsented_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_CheckAlreadyConsented.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity/consents/validate'
- name: CheckMSISDNExists_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_CheckMSISDNExists.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{msisdn}'
- name: HPX_CheckUserExists_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_CheckUserExists.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{username}'
- name: HPX_CreateUser_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_CreateUser.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users'
- name: HPX_GenerateAuthCode_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_GenerateAuthCode.Callout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/oauth/v2/code'
- name: HPX_GetUserApps_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_GetUserApps.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity/consents'
- name: HPX_GetUserProfileFromUserManagement_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_GetUserProfileFromUserManagement.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{userid}'
- name: HPX_ResetPassword_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_ResetPassword.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{reset_username}/password'
- name: HPX_RevokeUserConsent_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_RevokeUserConsent.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity/consents/{request.queryparam.consentid}'
- name: HPX_SendSMS_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_SendSMS.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/v1/token/sms/{msisdn}'
- name: HPX_ServiceCallout_IdentifyUser_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_ServiceCallout.IdentifyUser.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/authenticate/identify'
- name: HPX_ServiceCallout_ValidateUser_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_ServiceCallout.ValidateUser.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/authenticate'
- name: HPX_SetPassword_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_SetPassword.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{username}/password'
- name: HPX_UpdateUserProfile_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_UpdateUserProfile.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{request.formparam.email}'
- name: HPX_ValidatePin_url
filePaths: ['src/gateway/identity-consent-app/target/apiproxy/policies/HPX_ValidatePin.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/v1/token/sms/{msisdn}/{request.formparam.pin}'
- name: replace_variables_identity_consent_mgnt_api
type: configSubstitutions
items:
- name: hostName
filePaths: ['src/gateway/identity-consentmgmt-api/target/apiproxy/resources/node/package.json']
value: 'https://{{ org }}-{{ env }}.apigee.net'
- name: HPX_DeleteExistingSimilarConsent_url
filePaths: ['src/gateway/identity-consentmgmt-api/target/apiproxy/policies/HPX_DeleteExistingSimilarConsent.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net<%datastore_basepath%>/apis/internal/datastore/consents'
- name: apiKey_DS
filePaths: ['src/gateway/identity-consentmgmt-api/target/apiproxy/policies/HPX_DeleteExistingSimilarConsent.xml','src/gateway/identity-consentmgmt-api/target/apiproxy/resources/node/package.json']
value: '{{ apiKey_DS }}'
- name: basepath_DS
filePaths: ['src/gateway/identity-consentmgmt-api/target/apiproxy/resources/node/package.json']
value: '<%datastore_basepath%>/apis/internal/datastore'
- name: replace_variables_identity_usermgnt_api
type: configSubstitutions
items:
- name: hostName
filePaths: ['src/gateway/identity-usermgmt-api/target/apiproxy/resources/node/package.json']
value: '{{ org }}-{{ env }}.apigee.net'
- name: apiKey_DS
filePaths: ['src/gateway/identity-usermgmt-api/target/apiproxy/resources/node/package.json']
value: '{{ apiKey_DS }}'
- name: basepath_DS
filePaths: ['src/gateway/identity-usermgmt-api/target/apiproxy/resources/node/package.json']
value: '<%datastore_basepath%>/apis/internal/datastore'
- name: replace_variables_identity_oauthv2-api
type: configSubstitutions
items:
- name: oauth_RedirectToConsent
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_redirectToConsent.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/openid/onnet?sessionid={sessionid}'
- name: HPX_GetUserProfileFromAppServices_url
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_GetUserProfileFromAppServices.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity-users/v1/users/{accesstoken.userid}'
- name: base64_auth
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_AssignStoreConsentRequest.xml']
value: 'Basic {{ base64_auth }}'
- name: HPX_StoreConsent_url
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_StoreConsent.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity/consents'
- name: HPX_AssignIssuer
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_AssignIssuer.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/'
- name: HPX_CheckAlreadyConsented_url
filePaths: ['src/gateway/identity-oauthv2-api/target/apiproxy/policies/HPX_CheckAlreadyConsented.ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity/consents/validate'
- name: replace_variables_demo_app
type: configSubstitutions
items:
- name: app_client_id
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AddAuthorizationReqVarInReq.xml','src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AssignGetAccessTokenRequest.xml']
value: '{{ apiKey_identity }}'
- name: app_client_secret
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AssignGetAccessTokenRequest.xml']
value: '{{ apiSecret_identity }}'
- name: demo_app_redirect_uri
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AddAuthorizationReqVarInReq.xml','src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AssignGetAccessTokenRequest.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/identity_app/callback'
- name: demo_app_authorization_req_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AddAuthorizationReqVarInReq.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/oauth/v2/authorize'
- name: HPX_GetAccessToken_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_GetAccessToken_ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/oauth/v2/accesstoken'
- name: HPX_GetUserDetails_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_GetUserDetails_ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/oauth/v2/getdetails'
- name: HPX_ReadPatient_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_ReadPatient_Service-Callout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/fhir/v1/Patient'
- name: HPX_ReadEncounterById_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_ReadEncounterById_ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/fhir/v1/Encounter'
- name: HPX_ReadPatientEncounterDetails_url
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_ReadPatientEncounterDetails_ServiceCallout.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net/fhir/v1/Encounter'
- name: edgeHost
filePaths: ['src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AddPatientDetailsToRequest.xml', 'src/gateway/identity-demo-app/target/apiproxy/policies/HPX_AddPatientEncounterDetailsToRequestt.xml']
value: 'https://{{ org }}-{{ env }}.apigee.net'
- name: identity_proxies
type: proxy
items:
- name: identity-usermgmt-api
- name: identity-consentmgmt-api
- name: identity-sms-token-api
- name: identity-consent-app
- name: identity-oauthv2-api
- name: identity-authentication-spi
- name: identity-demo-app