· 6 years ago · May 02, 2019, 04:28 AM
1#!/bin/bash
2
3#-------------------------------------------------------------------------------
4# Copyright (c) 2019, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
5#
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15# See the License for the specific language governing permissions and
16# limitations under the License.
17#--------------------------------------------------------------------------------
18
19set -e
20
21# bash variables
22k8s_obj_file="deployment.yaml"; str_sec=""
23WSO2_SUBSCRIPTION_USERNAME=''
24WSO2_SUBSCRIPTION_PASSWORD=''
25NODE_IP=''
26
27# bash functions
28function usage(){
29 echo "Usage: "
30 echo -e "-d, --deploy Deploy WSO2 API Manager"
31 echo -e "-u, --undeploy Undeploy WSO2 API Manager"
32 echo -e "-h, --help Display usage instrusctions"
33}
34function undeploy(){
35 echoBold "Undeploying WSO2 API Manager ... \n"
36 kubectl delete -f deployment.yaml
37 exit 0
38}
39function echoBold () {
40 echo -en $'\e[1m'"${1}"$'\e[0m'
41}
42
43function display_msg(){
44 msg=$@
45 echoBold "${msg}"
46 exit 1
47}
48
49function st(){
50 cycles=${1}
51 i=0
52 while [[ i -lt $cycles ]]
53 do
54 echoBold "* "
55 let "i=i+1"
56 done
57}
58function sp(){
59 cycles=${1}
60 i=0
61 while [[ i -lt $cycles ]]
62 do
63 echoBold " "
64 let "i=i+1"
65 done
66}
67function product_name(){
68 #wso2apim
69 echo -e "\n"
70 st 1; sp 8; st 1; sp 2; sp 1; st 3; sp 3; sp 2; st 3; sp 4; sp 1; st 3; sp 3; sp 8; sp 2; st 3; sp 1; sp 3; st 3; sp 3; st 5; sp 2; st 1; sp 8; st 1;
71 echo ""
72 st 1; sp 8; st 1; sp 2; st 1; sp 4; st 1; sp 2; st 1; sp 6; st 1; sp 2; st 1; sp 4; st 1; sp 2; sp 8; sp 1; st 1; sp 4; st 1; sp 3; st 1; sp 4; st 1; sp 2; sp 3; st 1; sp 6; st 2; sp 4; st 2;
73 echo ""
74 st 1; sp 3; st 1; sp 3; st 1; sp 2; st 1; sp 8; st 1; sp 6; st 1; sp 2; sp 6; st 1; sp 2; sp 8; st 1; sp 6; st 1; sp 2; st 1; sp 4; st 1; sp 2; sp 3; st 1; sp 6; st 1; sp 1; st 1; sp 2; st 1; sp 1; st 1;
75 echo ""
76 st 1; sp 2; st 1; st 1; sp 2; st 1; sp 2; sp 1; st 3; sp 3; st 1; sp 6; st 1; sp 2; sp 4; st 1; sp 4; st 3; sp 2; st 5; sp 2; st 3; sp 3; sp 4; st 1; sp 6; st 1; sp 2; st 2; sp 2; st 1;
77 echo ""
78 st 1; sp 1; st 1; sp 2; st 1; sp 1; st 1; sp 2; sp 6; st 1; sp 2; st 1; sp 6; st 1; sp 2; sp 2; st 1; sp 6; sp 8; st 1; sp 6; st 1; sp 2; st 1; sp 7; sp 4; st 1; sp 6; st 1; sp 3; st 1; sp 3; st 1;
79 echo ""
80 st 2; sp 4; st 2; sp 2; st 1; sp 4; st 1; sp 2; st 1; sp 6; st 1; sp 2; st 1; sp 8; sp 8; st 1; sp 6; st 1; sp 2; st 1; sp 7; sp 4; st 1; sp 6; st 1; sp 8; st 1;
81 echo ""
82 st 1; sp 8; st 1; sp 2; sp 1; st 3; sp 3; sp 2; st 3; sp 4; st 4; sp 2; sp 8; st 1; sp 6; st 1; sp 2; st 1; sp 7; st 5; sp 2; st 1; sp 8; st 1;
83 echo -e "\n"
84}
85function create_yaml(){
86
87cat > $k8s_obj_file << "EOF"
88apiVersion: v1
89kind: Namespace
90metadata:
91 name: wso2
92spec:
93 finalizers:
94 - kubernetes
95---
96
97apiVersion: v1
98kind: ServiceAccount
99metadata:
100 name: wso2svc-account
101 namespace: wso2
102secrets:
103 - name: wso2svc-account-token-t7s49
104---
105
106apiVersion: v1
107data:
108EOF
109
110echo " .dockerconfigjson: $str_sec" >> $k8s_obj_file
111
112cat >> $k8s_obj_file << "EOF"
113kind: Secret
114metadata:
115 name: wso2creds
116 namespace: wso2
117type: kubernetes.io/dockerconfigjson
118---
119
120apiVersion: v1
121data:
122 api-manager.xml: |
123 <APIManager>
124 <DataSourceName>jdbc/WSO2AM_DB</DataSourceName>
125 <GatewayType>Synapse</GatewayType>
126 <EnableSecureVault>false</EnableSecureVault>
127 <AuthManager>
128 <ServerURL>https://localhost:${mgt.transport.https.port}${carbon.context}services/</ServerURL>
129 <Username>${admin.username}</Username>
130 <Password>${admin.password}</Password>
131 <CheckPermissionsRemotely>false</CheckPermissionsRemotely>
132 </AuthManager>
133 <JWTConfiguration>
134 <JWTHeader>X-JWT-Assertion</JWTHeader>
135 <JWTGeneratorImpl>org.wso2.carbon.apimgt.keymgt.token.JWTGenerator</JWTGeneratorImpl>
136 </JWTConfiguration>
137 <APIGateway>
138 <Environments>
139 <Environment type="hybrid" api-console="true">
140 <Name>Production and Sandbox</Name>
141 <Description>This is a hybrid gateway that handles both production and sandbox token traffic.</Description>
142 <ServerURL>https://localhost:${mgt.transport.https.port}${carbon.context}services/</ServerURL>
143 <Username>${admin.username}</Username>
144 <Password>${admin.password}</Password>
145EOF
146
147echo ' <GatewayEndpoint>http://'$NODE_IP':30243,https://'$NODE_IP':30243</GatewayEndpoint>' >> $k8s_obj_file
148
149cat >> $k8s_obj_file << "EOF"
150 <GatewayWSEndpoint>ws://${carbon.local.ip}:9099</GatewayWSEndpoint>
151 </Environment>
152 </Environments>
153 </APIGateway>
154 <CacheConfigurations>
155 <EnableGatewayTokenCache>true</EnableGatewayTokenCache>
156 <EnableGatewayResourceCache>true</EnableGatewayResourceCache>
157 <EnableKeyManagerTokenCache>false</EnableKeyManagerTokenCache>
158 <EnableRecentlyAddedAPICache>false</EnableRecentlyAddedAPICache>
159 <EnableScopeCache>true</EnableScopeCache>
160 <EnablePublisherRoleCache>true</EnablePublisherRoleCache>
161 <EnableJWTClaimCache>true</EnableJWTClaimCache>
162 </CacheConfigurations>
163 <Analytics>
164 <Enabled>true</Enabled>
165 <StreamProcessorServerURL>tcp://wso2apim-with-analytics-apim-analytics-service:7612</StreamProcessorServerURL>
166 <StreamProcessorAuthServerURL>ssl://wso2apim-with-analytics-apim-analytics-service:7712</StreamProcessorAuthServerURL>
167 <StreamProcessorUsername>${admin.username}</StreamProcessorUsername>
168 <StreamProcessorPassword>${admin.password}</StreamProcessorPassword>
169 <StatsProviderImpl>org.wso2.carbon.apimgt.usage.client.impl.APIUsageStatisticsRestClientImpl</StatsProviderImpl>
170 <StreamProcessorRestApiURL>https://wso2apim-with-analytics-apim-analytics-service:7444</StreamProcessorRestApiURL>
171 <StreamProcessorRestApiUsername>${admin.username}</StreamProcessorRestApiUsername>
172 <StreamProcessorRestApiPassword>${admin.password}</StreamProcessorRestApiPassword>
173 <SkipEventReceiverConnection>false</SkipEventReceiverConnection>
174 <SkipWorkflowEventPublisher>false</SkipWorkflowEventPublisher>
175 <PublisherClass>org.wso2.carbon.apimgt.usage.publisher.APIMgtUsageDataBridgeDataPublisher</PublisherClass>
176 <PublishResponseMessageSize>false</PublishResponseMessageSize>
177 <Streams>
178 <Request>
179 <Name>org.wso2.apimgt.statistics.request</Name>
180 <Version>3.0.0</Version>
181 </Request>
182 <Fault>
183 <Name>org.wso2.apimgt.statistics.fault</Name>
184 <Version>3.0.0</Version>
185 </Fault>
186 <Throttle>
187 <Name>org.wso2.apimgt.statistics.throttle</Name>
188 <Version>3.0.0</Version>
189 </Throttle>
190 <Workflow>
191 <Name>org.wso2.apimgt.statistics.workflow</Name>
192 <Version>1.0.0</Version>
193 </Workflow>
194 <AlertTypes>
195 <Name>org.wso2.analytics.apim.alertStakeholderInfo</Name>
196 <Version>1.0.1</Version>
197 </AlertTypes>
198 </Streams>
199 </Analytics>
200 <APIKeyValidator>
201 <ServerURL>https://localhost:${mgt.transport.https.port}${carbon.context}services/</ServerURL>
202 <Username>${admin.username}</Username>
203 <Password>${admin.password}</Password>
204 <KeyValidatorClientType>ThriftClient</KeyValidatorClientType>
205 <ThriftClientConnectionTimeOut>10000</ThriftClientConnectionTimeOut>
206 <EnableThriftServer>true</EnableThriftServer>
207 <ThriftServerHost>localhost</ThriftServerHost>
208 <KeyValidationHandlerClassName>org.wso2.carbon.apimgt.keymgt.handlers.DefaultKeyValidationHandler</KeyValidationHandlerClassName>
209 </APIKeyValidator>
210 <OAuthConfigurations>
211 <ApplicationTokenScope>am_application_scope</ApplicationTokenScope>
212 <TokenEndPointName>/oauth2/token</TokenEndPointName>
213 <RevokeAPIURL>https://localhost:${https.nio.port}/revoke</RevokeAPIURL>
214 <EncryptPersistedTokens>false</EncryptPersistedTokens>
215 <EnableTokenHashMode>false</EnableTokenHashMode>
216 </OAuthConfigurations>
217 <TierManagement>
218 <EnableUnlimitedTier>true</EnableUnlimitedTier>
219 </TierManagement>
220 <APIStore>
221 <CompareCaseInsensitively>true</CompareCaseInsensitively>
222 <DisplayURL>false</DisplayURL>
223EOF
224
225echo " <URL>https://$NODE_IP:30443/store</URL>" >> $k8s_obj_file
226echo " <ServerURL>https://$NODE_IP:30443services/</ServerURL>" >> $k8s_obj_file
227
228cat >> $k8s_obj_file << "EOF"
229 <Username>${admin.username}</Username>
230 <Password>${admin.password}</Password>
231 <DisplayMultipleVersions>false</DisplayMultipleVersions>
232 <DisplayAllAPIs>false</DisplayAllAPIs>
233 <DisplayComments>true</DisplayComments>
234 <DisplayRatings>true</DisplayRatings>
235 </APIStore>
236 <APIPublisher>
237 <DisplayURL>false</DisplayURL>
238 <URL>https://localhost:${mgt.transport.https.port}/publisher</URL>
239 <EnableAccessControl>true</EnableAccessControl>
240 </APIPublisher>
241 <CORSConfiguration>
242 <Enabled>true</Enabled>
243 <Access-Control-Allow-Origin>*</Access-Control-Allow-Origin>
244 <Access-Control-Allow-Methods>GET,PUT,POST,DELETE,PATCH,OPTIONS</Access-Control-Allow-Methods>
245 <Access-Control-Allow-Headers>authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction</Access-Control-Allow-Headers>
246 <Access-Control-Allow-Credentials>false</Access-Control-Allow-Credentials>
247 </CORSConfiguration>
248 <RESTAPI>
249 <WhiteListedURIs>
250 <WhiteListedURI>
251 <URI>/api/am/publisher/{version}/swagger.json</URI>
252 <HTTPMethods>GET,HEAD</HTTPMethods>
253 </WhiteListedURI>
254 <WhiteListedURI>
255 <URI>/api/am/store/{version}/swagger.json</URI>
256 <HTTPMethods>GET,HEAD</HTTPMethods>
257 </WhiteListedURI>
258 <WhiteListedURI>
259 <URI>/api/am/admin/{version}/swagger.json</URI>
260 <HTTPMethods>GET,HEAD</HTTPMethods>
261 </WhiteListedURI>
262 <WhiteListedURI>
263 <URI>/api/am/store/{version}/apis</URI>
264 <HTTPMethods>GET,HEAD</HTTPMethods>
265 </WhiteListedURI>
266 <WhiteListedURI>
267 <URI>/api/am/store/{version}/apis/{apiId}</URI>
268 <HTTPMethods>GET,HEAD</HTTPMethods>
269 </WhiteListedURI>
270 <WhiteListedURI>
271 <URI>/api/am/store/{version}/apis/{apiId}/swagger</URI>
272 <HTTPMethods>GET,HEAD</HTTPMethods>
273 </WhiteListedURI>
274 <WhiteListedURI>
275 <URI>/api/am/store/{version}/apis/{apiId}/documents</URI>
276 <HTTPMethods>GET,HEAD</HTTPMethods>
277 </WhiteListedURI>
278 <WhiteListedURI>
279 <URI>/api/am/store/{version}/apis/{apiId}/documents/{documentId}</URI>
280 <HTTPMethods>GET,HEAD</HTTPMethods>
281 </WhiteListedURI>
282 <WhiteListedURI>
283 <URI>/api/am/store/{version}/apis/{apiId}/documents/{documentId}/content</URI>
284 <HTTPMethods>GET,HEAD</HTTPMethods>
285 </WhiteListedURI>
286 <WhiteListedURI>
287 <URI>/api/am/store/{version}/apis/{apiId}/thumbnail</URI>
288 <HTTPMethods>GET,HEAD</HTTPMethods>
289 </WhiteListedURI>
290 <WhiteListedURI>
291 <URI>/api/am/store/{version}/tags</URI>
292 <HTTPMethods>GET,HEAD</HTTPMethods>
293 </WhiteListedURI>
294 <WhiteListedURI>
295 <URI>/api/am/store/{version}/tiers/{tierLevel}</URI>
296 <HTTPMethods>GET,HEAD</HTTPMethods>
297 </WhiteListedURI>
298 <WhiteListedURI>
299 <URI>/api/am/store/{version}/tiers/{tierLevel}/{tierName}</URI>
300 <HTTPMethods>GET,HEAD</HTTPMethods>
301 </WhiteListedURI>
302 </WhiteListedURIs>
303 <ETagSkipList>
304 <ETagSkipURI>
305 <URI>/api/am/store/{version}/apis</URI>
306 <HTTPMethods>GET</HTTPMethods>
307 </ETagSkipURI>
308 <ETagSkipURI>
309 <URI>/api/am/store/{version}/apis/generate-sdk</URI>
310 <HTTPMethods>POST</HTTPMethods>
311 </ETagSkipURI>
312 <ETagSkipURI>
313 <URI>/api/am/store/{version}/apis/{apiId}/documents</URI>
314 <HTTPMethods>GET</HTTPMethods>
315 </ETagSkipURI>
316 <ETagSkipURI>
317 <URI>/api/am/store/{version}/applications</URI>
318 <HTTPMethods>GET</HTTPMethods>
319 </ETagSkipURI>
320 <ETagSkipURI>
321 <URI>/api/am/store/{version}/applications/generate-keys</URI>
322 <HTTPMethods>POST</HTTPMethods>
323 </ETagSkipURI>
324 <ETagSkipURI>
325 <URI>/api/am/store/{version}/subscriptions</URI>
326 <HTTPMethods>GET,POST</HTTPMethods>
327 </ETagSkipURI>
328 <ETagSkipURI>
329 <URI>/api/am/store/{version}/tags</URI>
330 <HTTPMethods>GET</HTTPMethods>
331 </ETagSkipURI>
332 <ETagSkipURI>
333 <URI>/api/am/store/{version}/tiers/{tierLevel}</URI>
334 <HTTPMethods>GET</HTTPMethods>
335 </ETagSkipURI>
336 <ETagSkipURI>
337 <URI>/api/am/store/{version}/tiers/{tierLevel}/{tierName}</URI>
338 <HTTPMethods>GET</HTTPMethods>
339 </ETagSkipURI>
340 <ETagSkipURI>
341 <URI>/api/am/publisher/{version}/apis</URI>
342 <HTTPMethods>GET,POST</HTTPMethods>
343 </ETagSkipURI>
344 <ETagSkipURI>
345 <URI>/api/am/publisher/{version}/apis/{apiId}</URI>
346 <HTTPMethods>GET,DELETE,PUT</HTTPMethods>
347 </ETagSkipURI>
348 <ETagSkipURI>
349 <URI>/api/am/publisher/{version}/apis/{apiId}/swagger</URI>
350 <HTTPMethods>GET,PUT</HTTPMethods>
351 </ETagSkipURI>
352 <ETagSkipURI>
353 <URI>/api/am/publisher/{version}/apis/{apiId}/thumbnail</URI>
354 <HTTPMethods>GET,POST</HTTPMethods>
355 </ETagSkipURI>
356 <ETagSkipURI>
357 <URI>/api/am/publisher/{version}/apis/{apiId}/change-lifecycle</URI>
358 <HTTPMethods>POST</HTTPMethods>
359 </ETagSkipURI>
360 <ETagSkipURI>
361 <URI>/api/am/publisher/{version}/apis/{apiId}/copy-api</URI>
362 <HTTPMethods>POST</HTTPMethods>
363 </ETagSkipURI>
364 <ETagSkipURI>
365 <URI>/api/am/publisher/{version}/applications/{applicationId}</URI>
366 <HTTPMethods>GET</HTTPMethods>
367 </ETagSkipURI>
368 <ETagSkipURI>
369 <URI>/api/am/publisher/{version}/apis/{apiId}/documents</URI>
370 <HTTPMethods>GET,POST</HTTPMethods>
371 </ETagSkipURI>
372 <ETagSkipURI>
373 <URI>/api/am/publisher/{version}/apis/{apiId}/documents/{documentId}/content</URI>
374 <HTTPMethods>GET,POST</HTTPMethods>
375 </ETagSkipURI>
376 <ETagSkipURI>
377 <URI>/api/am/publisher/{version}/apis/{apiId}/documents/{documentId}</URI>
378 <HTTPMethods>GET,PUT,DELETE</HTTPMethods>
379 </ETagSkipURI>
380 <ETagSkipURI>
381 <URI>/api/am/publisher/{version}/environments</URI>
382 <HTTPMethods>GET</HTTPMethods>
383 </ETagSkipURI>
384 <ETagSkipURI>
385 <URI>/api/am/publisher/{version}/subscriptions</URI>
386 <HTTPMethods>GET</HTTPMethods>
387 </ETagSkipURI>
388 <ETagSkipURI>
389 <URI>/api/am/publisher/{version}/subscriptions/block-subscription</URI>
390 <HTTPMethods>POST</HTTPMethods>
391 </ETagSkipURI>
392 <ETagSkipURI>
393 <URI>/api/am/publisher/{version}/subscriptions/{subscriptionId}</URI>
394 <HTTPMethods>GET</HTTPMethods>
395 </ETagSkipURI>
396 <ETagSkipURI>
397 <URI>/api/am/publisher/{version}/subscriptions/unblock-subscription</URI>
398 <HTTPMethods>POST</HTTPMethods>
399 </ETagSkipURI>
400 <ETagSkipURI>
401 <URI>/api/am/publisher/{version}/tiers/{tierLevel}</URI>
402 <HTTPMethods>GET,POST</HTTPMethods>
403 </ETagSkipURI>
404 <ETagSkipURI>
405 <URI>/api/am/publisher/{version}/tiers/{tierLevel}/{tierName}</URI>
406 <HTTPMethods>GET,PUT,DELETE</HTTPMethods>
407 </ETagSkipURI>
408 <ETagSkipURI>
409 <URI>/api/am/publisher/{version}/tiers/update-permission</URI>
410 <HTTPMethods>POST</HTTPMethods>
411 </ETagSkipURI>
412 </ETagSkipList>
413 </RESTAPI>
414 <ThrottlingConfigurations>
415 <EnableAdvanceThrottling>true</EnableAdvanceThrottling>
416 <TrafficManager>
417 <Type>Binary</Type>
418 <ReceiverUrlGroup>tcp://${carbon.local.ip}:${receiver.url.port}</ReceiverUrlGroup>
419 <AuthUrlGroup>ssl://${carbon.local.ip}:${auth.url.port}</AuthUrlGroup>
420 <Username>${admin.username}</Username>
421 <Password>${admin.password}</Password>
422 </TrafficManager>
423 <DataPublisher>
424 <Enabled>true</Enabled>
425 <DataPublisherPool>
426 <MaxIdle>1000</MaxIdle>
427 <InitIdleCapacity>200</InitIdleCapacity>
428 </DataPublisherPool>
429 <DataPublisherThreadPool>
430 <CorePoolSize>200</CorePoolSize>
431 <MaxmimumPoolSize>1000</MaxmimumPoolSize>
432 <KeepAliveTime>200</KeepAliveTime>
433 </DataPublisherThreadPool>
434 </DataPublisher>
435 <PolicyDeployer>
436 <Enabled>true</Enabled>
437 <ServiceURL>https://localhost:${mgt.transport.https.port}${carbon.context}services/</ServiceURL>
438 <Username>${admin.username}</Username>
439 <Password>${admin.password}</Password>
440 </PolicyDeployer>
441 <BlockCondition>
442 <Enabled>true</Enabled>
443 </BlockCondition>
444 <JMSConnectionDetails>
445 <Enabled>true</Enabled>
446 <JMSConnectionParameters>
447 <transport.jms.ConnectionFactoryJNDIName>TopicConnectionFactory</transport.jms.ConnectionFactoryJNDIName>
448 <transport.jms.DestinationType>topic</transport.jms.DestinationType>
449 <java.naming.factory.initial>org.wso2.andes.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial>
450 <connectionfactory.TopicConnectionFactory>amqp://${admin.username}:${admin.password}@clientid/carbon?brokerlist='tcp://${carbon.local.ip}:${jms.port}'</connectionfactory.TopicConnectionFactory>
451 </JMSConnectionParameters>
452 </JMSConnectionDetails>=
453 <EnableUnlimitedTier>true</EnableUnlimitedTier>
454 <EnableHeaderConditions>false</EnableHeaderConditions>
455 <EnableJWTClaimConditions>false</EnableJWTClaimConditions>
456 <EnableQueryParamConditions>false</EnableQueryParamConditions>
457 </ThrottlingConfigurations>
458 <WorkflowConfigurations>
459 <Enabled>false</Enabled>
460 <ServerUrl>https://localhost:9445/bpmn</ServerUrl>
461 <ServerUser>${admin.username}</ServerUser>
462 <ServerPassword>${admin.password}</ServerPassword>
463 <WorkflowCallbackAPI>https://localhost:${mgt.transport.https.port}/api/am/publisher/v0.14/workflows/update-workflow-status</WorkflowCallbackAPI>
464 <TokenEndPoint>https://localhost:${https.nio.port}/token</TokenEndPoint>
465 <DCREndPoint>https://localhost:${mgt.transport.https.port}/client-registration/v0.14/register</DCREndPoint>
466 <DCREndPointUser>${admin.username}</DCREndPointUser>
467 <DCREndPointPassword>${admin.password}</DCREndPointPassword>
468 </WorkflowConfigurations>
469 <SwaggerCodegen>
470 <ClientGeneration>
471 <GroupId>org.wso2</GroupId>
472 <ArtifactId>org.wso2.client.</ArtifactId>
473 <ModelPackage>org.wso2.client.model.</ModelPackage>
474 <ApiPackage>org.wso2.client.api.</ApiPackage>
475 <SupportedLanguages>java,android</SupportedLanguages>
476 </ClientGeneration>
477 </SwaggerCodegen>
478 </APIManager>
479 carbon.xml: |
480 <?xml version="1.0" encoding="ISO-8859-1"?>
481 <Server xmlns="http://wso2.org/projects/carbon/carbon.xml">
482 <Name>WSO2 API Manager</Name>
483 <ServerKey>AM</ServerKey>
484 <Version>2.6.0</Version>
485EOF
486
487echo " <HostName>$NODE_IP</HostName>" >> $k8s_obj_file
488
489echo " <MgtHostName>$NODE_IP</MgtHostName>" >> $k8s_obj_file
490
491cat >> $k8s_obj_file << "EOF"
492 <ServerURL>local:/${carbon.context}/services/</ServerURL>
493 <ServerRoles>
494 <Role>APIManager</Role>
495 </ServerRoles>
496 <Package>org.wso2.carbon</Package>
497 <WebContextRoot>/</WebContextRoot>
498 <ItemsPerPage>15</ItemsPerPage>
499 <Ports>
500 <Offset>0</Offset>
501 <JMX>
502 <RMIRegistryPort>9999</RMIRegistryPort>
503 <RMIServerPort>11111</RMIServerPort>
504 </JMX>
505 <EmbeddedLDAP>
506 <LDAPServerPort>10389</LDAPServerPort>
507 <KDCServerPort>8000</KDCServerPort>
508 </EmbeddedLDAP>
509 <ThriftEntitlementReceivePort>10500</ThriftEntitlementReceivePort>
510 </Ports>
511 <JNDI>
512 <DefaultInitialContextFactory>org.wso2.carbon.tomcat.jndi.CarbonJavaURLContextFactory</DefaultInitialContextFactory>
513 <Restrictions>
514 <AllTenants>
515 <UrlContexts>
516 <UrlContext>
517 <Scheme>java</Scheme>
518 </UrlContext>
519 </UrlContexts>
520 </AllTenants>
521 </Restrictions>
522 </JNDI>
523 <IsCloudDeployment>false</IsCloudDeployment>
524 <EnableMetering>false</EnableMetering>
525 <MaxThreadExecutionTime>600</MaxThreadExecutionTime>
526 <GhostDeployment>
527 <Enabled>false</Enabled>
528 </GhostDeployment>
529 <Tenant>
530 <LoadingPolicy>
531 <LazyLoading>
532 <IdleTime>30</IdleTime>
533 </LazyLoading>
534 </LoadingPolicy>
535 </Tenant>
536 <Cache>
537 <DefaultCacheTimeout>15</DefaultCacheTimeout>
538 <ForceLocalCache>false</ForceLocalCache>
539 </Cache>
540 <Axis2Config>
541 <RepositoryLocation>${carbon.home}/repository/deployment/server/</RepositoryLocation>
542 <DeploymentUpdateInterval>15</DeploymentUpdateInterval>
543 <ConfigurationFile>${carbon.home}/repository/conf/axis2/axis2.xml</ConfigurationFile>
544 <ServiceGroupContextIdleTime>30000</ServiceGroupContextIdleTime>
545 <ClientRepositoryLocation>${carbon.home}/repository/deployment/client/</ClientRepositoryLocation>
546 <clientAxis2XmlLocation>${carbon.home}/repository/conf/axis2/axis2_client.xml</clientAxis2XmlLocation>
547 <HideAdminServiceWSDLs>true</HideAdminServiceWSDLs>
548 </Axis2Config>
549 <ServiceUserRoles>
550 <Role>
551 <Name>admin</Name>
552 <Description>Default Administrator Role</Description>
553 </Role>
554 <Role>
555 <Name>user</Name>
556 <Description>Default User Role</Description>
557 </Role>
558 </ServiceUserRoles>
559 <CryptoService>
560 <Enabled>true</Enabled>
561 <InternalCryptoProviderClassName>org.wso2.carbon.crypto.provider.KeyStoreBasedInternalCryptoProvider</InternalCryptoProviderClassName>
562 <ExternalCryptoProviderClassName>org.wso2.carbon.core.encryption.KeyStoreBasedExternalCryptoProvider</ExternalCryptoProviderClassName>
563 <KeyResolvers>
564 <KeyResolver className="org.wso2.carbon.crypto.defaultProvider.resolver.ContextIndependentKeyResolver" priority="-1"/>
565 </KeyResolvers>
566 </CryptoService>
567 <Security>
568 <KeyStore>
569 <Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
570 <Type>JKS</Type>
571 <Password>wso2carbon</Password>
572 <KeyAlias>wso2carbon</KeyAlias>
573 <KeyPassword>wso2carbon</KeyPassword>
574 </KeyStore>
575 <InternalKeyStore>
576 <Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
577 <Type>JKS</Type>
578 <Password>wso2carbon</Password>
579 <KeyAlias>wso2carbon</KeyAlias>
580 <KeyPassword>wso2carbon</KeyPassword>
581 </InternalKeyStore>
582 <TrustStore>
583 <Location>${carbon.home}/repository/resources/security/client-truststore.jks</Location>
584 <Type>JKS</Type>
585 <Password>wso2carbon</Password>
586 </TrustStore>
587 <NetworkAuthenticatorConfig>
588 </NetworkAuthenticatorConfig>
589 <TomcatRealm>UserManager</TomcatRealm>
590 <DisableTokenStore>false</DisableTokenStore>
591 <XSSPreventionConfig>
592 <Enabled>true</Enabled>
593 <Rule>allow</Rule>
594 <Patterns>
595 </Patterns>
596 </XSSPreventionConfig>
597 </Security>
598 <HideMenuItemIds>
599 <HideMenuItemId>claim_mgt_menu</HideMenuItemId>
600 <HideMenuItemId>identity_mgt_emailtemplate_menu</HideMenuItemId>
601 <HideMenuItemId>identity_security_questions_menu</HideMenuItemId>
602 </HideMenuItemIds>
603 <WorkDirectory>${carbon.home}/tmp/work</WorkDirectory>
604 <HouseKeeping>
605 <AutoStart>true</AutoStart>
606 <Interval>10</Interval>
607 <MaxTempFileLifetime>30</MaxTempFileLifetime>
608 </HouseKeeping>
609 <FileUploadConfig>
610 <TotalFileSizeLimit>100</TotalFileSizeLimit>
611 <Mapping>
612 <Actions>
613 <Action>keystore</Action>
614 <Action>certificate</Action>
615 <Action>*</Action>
616 </Actions>
617 <Class>org.wso2.carbon.ui.transports.fileupload.AnyFileUploadExecutor</Class>
618 </Mapping>
619 <Mapping>
620 <Actions>
621 <Action>jarZip</Action>
622 </Actions>
623 <Class>org.wso2.carbon.ui.transports.fileupload.JarZipUploadExecutor</Class>
624 </Mapping>
625 <Mapping>
626 <Actions>
627 <Action>dbs</Action>
628 </Actions>
629 <Class>org.wso2.carbon.ui.transports.fileupload.DBSFileUploadExecutor</Class>
630 </Mapping>
631 <Mapping>
632 <Actions>
633 <Action>tools</Action>
634 </Actions>
635 <Class>org.wso2.carbon.ui.transports.fileupload.ToolsFileUploadExecutor</Class>
636 </Mapping>
637 <Mapping>
638 <Actions>
639 <Action>toolsAny</Action>
640 </Actions>
641 <Class>org.wso2.carbon.ui.transports.fileupload.ToolsAnyFileUploadExecutor</Class>
642 </Mapping>
643 </FileUploadConfig>
644 <HttpGetRequestProcessors>
645 <Processor>
646 <Item>info</Item>
647 <Class>org.wso2.carbon.core.transports.util.InfoProcessor</Class>
648 </Processor>
649 <Processor>
650 <Item>wsdl</Item>
651 <Class>org.wso2.carbon.core.transports.util.Wsdl11Processor</Class>
652 </Processor>
653 <Processor>
654 <Item>wsdl2</Item>
655 <Class>org.wso2.carbon.core.transports.util.Wsdl20Processor</Class>
656 </Processor>
657 <Processor>
658 <Item>xsd</Item>
659 <Class>org.wso2.carbon.core.transports.util.XsdProcessor</Class>
660 </Processor>
661 </HttpGetRequestProcessors>
662 <DeploymentSynchronizer>
663 <Enabled>false</Enabled>
664 <AutoCommit>false</AutoCommit>
665 <AutoCheckout>true</AutoCheckout>
666 <RepositoryType>svn</RepositoryType>
667 <SvnUrl>http://svnrepo.example.com/repos/</SvnUrl>
668 <SvnUser>username</SvnUser>
669 <SvnPassword>password</SvnPassword>
670 <SvnUrlAppendTenantId>true</SvnUrlAppendTenantId>
671 </DeploymentSynchronizer>
672 <ServerInitializers>
673 </ServerInitializers>
674 <RequireCarbonServlet>${require.carbon.servlet}</RequireCarbonServlet>
675 <StatisticsReporterDisabled>true</StatisticsReporterDisabled>
676 <FeatureRepository>
677 <RepositoryName>default repository</RepositoryName>
678 <RepositoryURL>http://product-dist.wso2.com/p2/carbon/releases/wilkes/</RepositoryURL>
679 </FeatureRepository>
680 <APIManagement>
681 <Enabled>true</Enabled>
682 <LoadAPIContextsInServerStartup>true</LoadAPIContextsInServerStartup>
683 </APIManagement>
684 </Server>
685 user-mgt.xml: |
686 <?xml version="1.0" encoding="UTF-8"?>
687 <UserManager>
688 <Realm>
689 <Configuration>
690 <AddAdmin>true</AddAdmin>
691 <AdminRole>admin</AdminRole>
692 <AdminUser>
693 <UserName>admin</UserName>
694 <Password>admin</Password>
695 </AdminUser>
696 <EveryOneRoleName>everyone</EveryOneRoleName>
697 <Property name="isCascadeDeleteEnabled">true</Property>
698 <Property name="initializeNewClaimManager">true</Property>
699 <Property name="dataSource">jdbc/WSO2UM_DB</Property>
700 </Configuration>
701 <UserStoreManager class="org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager">
702 <Property name="TenantManager">org.wso2.carbon.user.core.tenant.JDBCTenantManager</Property>
703 <Property name="ReadOnly">false</Property>
704 <Property name="ReadGroups">true</Property>
705 <Property name="WriteGroups">true</Property>
706 <Property name="UsernameJavaRegEx">^[\S]{3,30}$</Property>
707 <Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
708 <Property name="UsernameJavaRegExViolationErrorMsg">Username pattern policy violated</Property>
709 <Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
710 <Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
711 <Property name="PasswordJavaRegExViolationErrorMsg">Password length should be within 5 to 30 characters</Property>
712 <Property name="RolenameJavaRegEx">^[\S]{3,30}$</Property>
713 <Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
714 <Property name="CaseInsensitiveUsername">true</Property>
715 <Property name="SCIMEnabled">false</Property>
716 <Property name="IsBulkImportSupported">true</Property>
717 <Property name="PasswordDigest">SHA-256</Property>
718 <Property name="StoreSaltedPassword">true</Property>
719 <Property name="MultiAttributeSeparator">,</Property>
720 <Property name="MaxUserNameListLength">100</Property>
721 <Property name="MaxRoleNameListLength">100</Property>
722 <Property name="UserRolesCacheEnabled">true</Property>
723 <Property name="UserNameUniqueAcrossTenants">false</Property>
724 </UserStoreManager>
725 <AuthorizationManager class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
726 <Property name="AdminRoleManagementPermissions">/permission</Property>
727 <Property name="AuthorizationCacheEnabled">true</Property>
728 <Property name="GetAllRolesOfUserEnabled">false</Property>
729 </AuthorizationManager>
730 </Realm>
731 </UserManager>
732kind: ConfigMap
733metadata:
734 name: apim-conf
735 namespace: wso2
736---
737
738apiVersion: v1
739data:
740 master-datasources.xml: |
741 <datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration">
742 <providers>
743 <provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
744 </providers>
745 <datasources>
746 <datasource>
747 <name>WSO2_CARBON_DB</name>
748 <description>The datasource used for registry and user manager</description>
749 <jndiConfig>
750 <name>jdbc/WSO2CarbonDB</name>
751 </jndiConfig>
752 <definition type="RDBMS">
753 <configuration>
754 <url>jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE</url>
755 <username>wso2carbon</username>
756 <password>wso2carbon</password>
757 <driverClassName>org.h2.Driver</driverClassName>
758 <maxActive>50</maxActive>
759 <maxWait>60000</maxWait>
760 <testOnBorrow>true</testOnBorrow>
761 <validationQuery>SELECT 1</validationQuery>
762 <validationInterval>30000</validationInterval>
763 <defaultAutoCommit>true</defaultAutoCommit>
764 </configuration>
765 </definition>
766 </datasource>
767 <datasource>
768 <name>WSO2AM_DB</name>
769 <description>The datasource used for API Manager database</description>
770 <jndiConfig>
771 <name>jdbc/WSO2AM_DB</name>
772 </jndiConfig>
773 <definition type="RDBMS">
774 <configuration>
775 <url>jdbc:mysql://wso2apim-with-analytics-rdbms-service:3306/WSO2AM_APIMGT_DB?autoReconnect=true&useSSL=false</url>
776 <username>wso2carbon</username>
777 <password>wso2carbon</password>
778 <defaultAutoCommit>false</defaultAutoCommit>
779 <driverClassName>com.mysql.jdbc.Driver</driverClassName>
780 <maxActive>50</maxActive>
781 <maxWait>60000</maxWait>
782 <testOnBorrow>true</testOnBorrow>
783 <validationQuery>SELECT 1</validationQuery>
784 <validationInterval>30000</validationInterval>
785 </configuration>
786 </definition>
787 </datasource>
788 <datasource>
789 <name>WSO2UM_DB</name>
790 <description>The datasource used by user manager</description>
791 <jndiConfig>
792 <name>jdbc/WSO2UM_DB</name>
793 </jndiConfig>
794 <definition type="RDBMS">
795 <configuration>
796 <url>jdbc:mysql://wso2apim-with-analytics-rdbms-service:3306/WSO2AM_COMMON_DB?autoReconnect=true&useSSL=false</url>
797 <username>wso2carbon</username>
798 <password>wso2carbon</password>
799 <driverClassName>com.mysql.jdbc.Driver</driverClassName>
800 <maxActive>50</maxActive>
801 <maxWait>60000</maxWait>
802 <testOnBorrow>true</testOnBorrow>
803 <validationQuery>SELECT 1</validationQuery>
804 <validationInterval>30000</validationInterval>
805 </configuration>
806 </definition>
807 </datasource>
808 <datasource>
809 <name>WSO2REG_DB</name>
810 <description>The datasource used by the registry</description>
811 <jndiConfig>
812 <name>jdbc/WSO2REG_DB</name>
813 </jndiConfig>
814 <definition type="RDBMS">
815 <configuration>
816 <url>jdbc:mysql://wso2apim-with-analytics-rdbms-service:3306/WSO2AM_COMMON_DB?autoReconnect=true&useSSL=false</url>
817 <username>wso2carbon</username>
818 <password>wso2carbon</password>
819 <driverClassName>com.mysql.jdbc.Driver</driverClassName>
820 <maxActive>50</maxActive>
821 <maxWait>60000</maxWait>
822 <testOnBorrow>true</testOnBorrow>
823 <validationQuery>SELECT 1</validationQuery>
824 <validationInterval>30000</validationInterval>
825 <defaultAutoCommit>true</defaultAutoCommit>
826 </configuration>
827 </definition>
828 </datasource>
829 <datasource>
830 <name>WSO2_MB_STORE_DB</name>
831 <description>The datasource used for message broker database</description>
832 <jndiConfig>
833 <name>WSO2MBStoreDB</name>
834 </jndiConfig>
835 <definition type="RDBMS">
836 <configuration>
837 <url>jdbc:h2:repository/database/WSO2MB_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000</url>
838 <username>wso2carbon</username>
839 <password>wso2carbon</password>
840 <driverClassName>org.h2.Driver</driverClassName>
841 <maxActive>50</maxActive>
842 <maxWait>60000</maxWait>
843 <testOnBorrow>true</testOnBorrow>
844 <validationQuery>SELECT 1</validationQuery>
845 <validationInterval>30000</validationInterval>
846 <defaultAutoCommit>false</defaultAutoCommit>
847 </configuration>
848 </definition>
849 </datasource>
850 </datasources>
851 </datasources-configuration>
852kind: ConfigMap
853metadata:
854 name: apim-conf-datasources
855 namespace: wso2
856---
857
858apiVersion: v1
859data:
860 deployment.yaml: |
861 wso2.carbon:
862 type: wso2-apim-analytics
863 id: wso2-am-analytics
864 name: WSO2 API Manager Analytics Server
865 ports:
866 offset: 1
867 wso2.transport.http:
868 transportProperties:
869 -
870 name: "server.bootstrap.socket.timeout"
871 value: 60
872 -
873 name: "client.bootstrap.socket.timeout"
874 value: 60
875 -
876 name: "latency.metrics.enabled"
877 value: true
878 listenerConfigurations:
879 -
880 id: "default"
881 host: "0.0.0.0"
882 port: 9091
883 -
884 id: "msf4j-https"
885 host: "0.0.0.0"
886 port: 9444
887 scheme: https
888 keyStoreFile: "${carbon.home}/resources/security/wso2carbon.jks"
889 keyStorePassword: wso2carbon
890 certPass: wso2carbon
891 senderConfigurations:
892 -
893 id: "http-sender"
894 siddhi.stores.query.api:
895 transportProperties:
896 -
897 name: "server.bootstrap.socket.timeout"
898 value: 60
899 -
900 name: "client.bootstrap.socket.timeout"
901 value: 60
902 -
903 name: "latency.metrics.enabled"
904 value: true
905 listenerConfigurations:
906 -
907 id: "default"
908 host: "0.0.0.0"
909 port: 7071
910 -
911 id: "msf4j-https"
912 host: "0.0.0.0"
913 port: 7444
914 scheme: https
915 keyStoreFile: "${carbon.home}/resources/security/wso2carbon.jks"
916 keyStorePassword: wso2carbon
917 certPass: wso2carbon
918 databridge.config:
919 workerThreads: 10
920 maxEventBufferCapacity: 10000000
921 eventBufferSize: 2000
922 keyStoreLocation : ${sys:carbon.home}/resources/security/wso2carbon.jks
923 keyStorePassword : wso2carbon
924 clientTimeoutMin: 30
925 dataReceivers:
926 -
927 dataReceiver:
928 type: Thrift
929 properties:
930 tcpPort: '7611'
931 sslPort: '7711'
932 -
933 dataReceiver:
934 type: Binary
935 properties:
936 tcpPort: '9611'
937 sslPort: '9711'
938 tcpReceiverThreadPoolSize: '100'
939 sslReceiverThreadPoolSize: '100'
940 hostName: 0.0.0.0
941 data.agent.config:
942 agents:
943 -
944 agentConfiguration:
945 name: Thrift
946 dataEndpointClass: org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint
947 publishingStrategy: async
948 trustStorePath: '${sys:carbon.home}/resources/security/client-truststore.jks'
949 trustStorePassword: 'wso2carbon'
950 queueSize: 32768
951 batchSize: 200
952 corePoolSize: 1
953 socketTimeoutMS: 30000
954 maxPoolSize: 1
955 keepAliveTimeInPool: 20
956 reconnectionInterval: 30
957 maxTransportPoolSize: 250
958 maxIdleConnections: 250
959 evictionTimePeriod: 5500
960 minIdleTimeInPool: 5000
961 secureMaxTransportPoolSize: 250
962 secureMaxIdleConnections: 250
963 secureEvictionTimePeriod: 5500
964 secureMinIdleTimeInPool: 5000
965 sslEnabledProtocols: TLSv1.1,TLSv1.2
966 ciphers: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
967 -
968 agentConfiguration:
969 name: Binary
970 dataEndpointClass: org.wso2.carbon.databridge.agent.endpoint.binary.BinaryDataEndpoint
971 publishingStrategy: async
972 trustStorePath: '${sys:carbon.home}/resources/security/client-truststore.jks'
973 trustStorePassword: 'wso2carbon'
974 queueSize: 32768
975 batchSize: 200
976 corePoolSize: 1
977 socketTimeoutMS: 30000
978 maxPoolSize: 1
979 keepAliveTimeInPool: 20
980 reconnectionInterval: 30
981 maxTransportPoolSize: 250
982 maxIdleConnections: 250
983 evictionTimePeriod: 5500
984 minIdleTimeInPool: 5000
985 secureMaxTransportPoolSize: 250
986 secureMaxIdleConnections: 250
987 secureEvictionTimePeriod: 5500
988 secureMinIdleTimeInPool: 5000
989 sslEnabledProtocols: TLSv1.1,TLSv1.2
990 ciphers: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
991 wso2.metrics:
992 enabled: false
993 reporting:
994 console:
995 -
996 name: Console
997 enabled: false
998 pollingPeriod: 5
999 wso2.metrics.jdbc:
1000 dataSource:
1001 - &JDBC01
1002 dataSourceName: java:comp/env/jdbc/WSO2MetricsDB
1003 scheduledCleanup:
1004 enabled: true
1005 daysToKeep: 3
1006 scheduledCleanupPeriod: 86400
1007 reporting:
1008 jdbc:
1009 -
1010 name: JDBC
1011 enabled: true
1012 dataSource: *JDBC01
1013 pollingPeriod: 60
1014 wso2.artifact.deployment:
1015 updateInterval: 5
1016 state.persistence:
1017 enabled: false
1018 intervalInMin: 1
1019 revisionsToKeep: 2
1020 persistenceStore: org.wso2.carbon.stream.processor.core.persistence.FileSystemPersistenceStore
1021 config:
1022 location: siddhi-app-persistence
1023 wso2.securevault:
1024 secretRepository:
1025 type: org.wso2.carbon.secvault.repository.DefaultSecretRepository
1026 parameters:
1027 privateKeyAlias: wso2carbon
1028 keystoreLocation: ${sys:carbon.home}/resources/security/securevault.jks
1029 secretPropertiesFile: ${sys:carbon.home}/conf/${sys:wso2.runtime}/secrets.properties
1030 masterKeyReader:
1031 type: org.wso2.carbon.secvault.reader.DefaultMasterKeyReader
1032 parameters:
1033 masterKeyReaderFile: ${sys:carbon.home}/conf/${sys:wso2.runtime}/master-keys.yaml
1034 wso2.datasources:
1035 dataSources:
1036 -
1037 definition:
1038 configuration:
1039 connectionTestQuery: "SELECT 1"
1040 driverClassName: com.mysql.jdbc.Driver
1041 idleTimeout: 60000
1042 isAutoCommit: false
1043 jdbcUrl: 'jdbc:mysql://wso2apim-with-analytics-rdbms-service:3306/WSO2AM_COMMON_DB?useSSL=false'
1044 maxPoolSize: 50
1045 password: wso2carbon
1046 username: wso2carbon
1047 validationTimeout: 30000
1048 type: RDBMS
1049 description: "The datasource used for registry and user manager"
1050 name: WSO2_CARBON_DB
1051 - name: WSO2_METRICS_DB
1052 description: The datasource used for dashboard feature
1053 jndiConfig:
1054 name: jdbc/WSO2MetricsDB
1055 definition:
1056 type: RDBMS
1057 configuration:
1058 jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/dashboard/database/metrics;AUTO_SERVER=TRUE'
1059 username: wso2carbon
1060 password: wso2carbon
1061 driverClassName: org.h2.Driver
1062 maxPoolSize: 30
1063 idleTimeout: 60000
1064 connectionTestQuery: SELECT 1
1065 validationTimeout: 30000
1066 isAutoCommit: false
1067 - name: WSO2_PERMISSIONS_DB
1068 description: The datasource used for permission feature
1069 jndiConfig:
1070 name: jdbc/PERMISSION_DB
1071 useJndiReference: true
1072 definition:
1073 type: RDBMS
1074 configuration:
1075 jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/${sys:wso2.runtime}/database/PERMISSION_DB;IFEXISTS=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE'
1076 username: wso2carbon
1077 password: wso2carbon
1078 driverClassName: org.h2.Driver
1079 maxPoolSize: 10
1080 idleTimeout: 60000
1081 connectionTestQuery: SELECT 1
1082 validationTimeout: 30000
1083 isAutoCommit: false
1084 - name: Message_Tracing_DB
1085 description: "The datasource used for message tracer to store span information."
1086 jndiConfig:
1087 name: jdbc/Message_Tracing_DB
1088 definition:
1089 type: RDBMS
1090 configuration:
1091 jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/dashboard/database/MESSAGE_TRACING_DB;AUTO_SERVER=TRUE'
1092 username: wso2carbon
1093 password: wso2carbon
1094 driverClassName: org.h2.Driver
1095 maxPoolSize: 50
1096 idleTimeout: 60000
1097 connectionTestQuery: SELECT 1
1098 validationTimeout: 30000
1099 isAutoCommit: false
1100 - name: GEO_LOCATION_DATA
1101 description: "The data source used for geo location database"
1102 jndiConfig:
1103 name: jdbc/GEO_LOCATION_DATA
1104 definition:
1105 type: RDBMS
1106 configuration:
1107 jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/GEO_LOCATION_DATA;AUTO_SERVER=TRUE'
1108 username: wso2carbon
1109 password: wso2carbon
1110 driverClassName: org.h2.Driver
1111 maxPoolSize: 50
1112 idleTimeout: 60000
1113 validationTimeout: 30000
1114 isAutoCommit: false
1115 - name: APIM_ANALYTICS_DB
1116 description: "The datasource used for APIM statistics aggregated data."
1117 jndiConfig:
1118 name: jdbc/APIM_ANALYTICS_DB
1119 definition:
1120 type: RDBMS
1121 configuration:
1122 jdbcUrl: 'jdbc:mysql://wso2apim-with-analytics-rdbms-service:3306/WSO2AM_STAT_DB?useSSL=false'
1123 username: wso2carbon
1124 password: wso2carbon
1125 driverClassName: com.mysql.jdbc.Driver
1126 maxPoolSize: 50
1127 idleTimeout: 60000
1128 connectionTestQuery: SELECT 1
1129 validationTimeout: 30000
1130 isAutoCommit: false
1131 - name: WSO2AM_MGW_ANALYTICS_DB
1132 description: "The datasource used for APIM MGW analytics data."
1133 jndiConfig:
1134 name: jdbc/WSO2AM_MGW_ANALYTICS_DB
1135 definition:
1136 type: RDBMS
1137 configuration:
1138 jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/WSO2AM_MGW_ANALYTICS_DB;AUTO_SERVER=TRUE'
1139 username: wso2carbon
1140 password: wso2carbon
1141 driverClassName: org.h2.Driver
1142 maxPoolSize: 50
1143 idleTimeout: 60000
1144 connectionTestQuery: SELECT 1
1145 validationTimeout: 30000
1146 isAutoCommit: false
1147 siddhi:
1148 extensions:
1149 -
1150 extension:
1151 name: 'findCountryFromIP'
1152 namespace: 'geo'
1153 properties:
1154 geoLocationResolverClass: org.wso2.extension.siddhi.execution.geo.internal.impl.DefaultDBBasedGeoLocationResolver
1155 isCacheEnabled: true
1156 cacheSize: 10000
1157 isPersistInDatabase: true
1158 datasource: GEO_LOCATION_DATA
1159 -
1160 extension:
1161 name: 'findCityFromIP'
1162 namespace: 'geo'
1163 properties:
1164 geoLocationResolverClass: org.wso2.extension.siddhi.execution.geo.internal.impl.DefaultDBBasedGeoLocationResolver
1165 isCacheEnabled: true
1166 cacheSize: 10000
1167 isPersistInDatabase: true
1168 datasource: GEO_LOCATION_DATA
1169 cluster.config:
1170 enabled: false
1171 groupId: sp
1172 coordinationStrategyClass: org.wso2.carbon.cluster.coordinator.rdbms.RDBMSCoordinationStrategy
1173 strategyConfig:
1174 datasource: WSO2_CARBON_DB
1175 heartbeatInterval: 1000
1176 heartbeatMaxRetry: 2
1177 eventPollingInterval: 1000
1178kind: ConfigMap
1179metadata:
1180 name: apim-analytics-conf-worker
1181 namespace: wso2
1182---
1183
1184apiVersion: v1
1185data:
1186 init.sql: |
1187 DROP DATABASE IF EXISTS WSO2AM_COMMON_DB;
1188 DROP DATABASE IF EXISTS WSO2AM_APIMGT_DB;
1189 DROP DATABASE IF EXISTS WSO2AM_STAT_DB;
1190 CREATE DATABASE WSO2AM_COMMON_DB;
1191 CREATE DATABASE WSO2AM_APIMGT_DB;
1192 CREATE DATABASE WSO2AM_STAT_DB;
1193 CREATE USER IF NOT EXISTS 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
1194 GRANT ALL ON WSO2AM_COMMON_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
1195 GRANT ALL ON WSO2AM_APIMGT_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
1196 GRANT ALL ON WSO2AM_STAT_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
1197 USE WSO2AM_COMMON_DB;
1198 CREATE TABLE IF NOT EXISTS REG_CLUSTER_LOCK (
1199 REG_LOCK_NAME VARCHAR (20),
1200 REG_LOCK_STATUS VARCHAR (20),
1201 REG_LOCKED_TIME TIMESTAMP,
1202 REG_TENANT_ID INTEGER DEFAULT 0,
1203 PRIMARY KEY (REG_LOCK_NAME)
1204 )ENGINE INNODB;
1205 CREATE TABLE IF NOT EXISTS REG_LOG (
1206 REG_LOG_ID INTEGER AUTO_INCREMENT,
1207 REG_PATH VARCHAR (750),
1208 REG_USER_ID VARCHAR (31) NOT NULL,
1209 REG_LOGGED_TIME TIMESTAMP NOT NULL,
1210 REG_ACTION INTEGER NOT NULL,
1211 REG_ACTION_DATA VARCHAR (500),
1212 REG_TENANT_ID INTEGER DEFAULT 0,
1213 PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
1214 )ENGINE INNODB;
1215 CREATE INDEX REG_LOG_IND_BY_REGLOG USING HASH ON REG_LOG(REG_LOGGED_TIME, REG_TENANT_ID);
1216 CREATE TABLE IF NOT EXISTS REG_PATH(
1217 REG_PATH_ID INTEGER NOT NULL AUTO_INCREMENT,
1218 REG_PATH_VALUE VARCHAR(750) NOT NULL,
1219 REG_PATH_PARENT_ID INTEGER,
1220 REG_TENANT_ID INTEGER DEFAULT 0,
1221 CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
1222 )ENGINE INNODB;
1223 CREATE INDEX REG_PATH_IND_BY_PATH_VALUE USING HASH ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
1224 CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID USING HASH ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
1225 CREATE TABLE IF NOT EXISTS REG_CONTENT (
1226 REG_CONTENT_ID INTEGER NOT NULL AUTO_INCREMENT,
1227 REG_CONTENT_DATA LONGBLOB,
1228 REG_TENANT_ID INTEGER DEFAULT 0,
1229 CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
1230 )ENGINE INNODB;
1231 CREATE TABLE IF NOT EXISTS REG_CONTENT_HISTORY (
1232 REG_CONTENT_ID INTEGER NOT NULL,
1233 REG_CONTENT_DATA LONGBLOB,
1234 REG_DELETED SMALLINT,
1235 REG_TENANT_ID INTEGER DEFAULT 0,
1236 CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
1237 )ENGINE INNODB;
1238 CREATE TABLE IF NOT EXISTS REG_RESOURCE (
1239 REG_PATH_ID INTEGER NOT NULL,
1240 REG_NAME VARCHAR(256),
1241 REG_VERSION INTEGER NOT NULL AUTO_INCREMENT,
1242 REG_MEDIA_TYPE VARCHAR(500),
1243 REG_CREATOR VARCHAR(31) NOT NULL,
1244 REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1245 REG_LAST_UPDATOR VARCHAR(31),
1246 REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1247 REG_DESCRIPTION VARCHAR(1000),
1248 REG_CONTENT_ID INTEGER,
1249 REG_TENANT_ID INTEGER DEFAULT 0,
1250 REG_UUID VARCHAR(100) NOT NULL,
1251 CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
1252 )ENGINE INNODB;
1253 ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1254 ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
1255 CREATE INDEX REG_RESOURCE_IND_BY_NAME USING HASH ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
1256 CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
1257 CREATE INDEX REG_RESOURCE_IND_BY_UUID USING HASH ON REG_RESOURCE(REG_UUID);
1258 CREATE INDEX REG_RESOURCE_IND_BY_TENAN USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_UUID);
1259 CREATE INDEX REG_RESOURCE_IND_BY_TYPE USING HASH ON REG_RESOURCE(REG_TENANT_ID, REG_MEDIA_TYPE);
1260 CREATE TABLE IF NOT EXISTS REG_RESOURCE_HISTORY (
1261 REG_PATH_ID INTEGER NOT NULL,
1262 REG_NAME VARCHAR(256),
1263 REG_VERSION INTEGER NOT NULL,
1264 REG_MEDIA_TYPE VARCHAR(500),
1265 REG_CREATOR VARCHAR(31) NOT NULL,
1266 REG_CREATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1267 REG_LAST_UPDATOR VARCHAR(31),
1268 REG_LAST_UPDATED_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1269 REG_DESCRIPTION VARCHAR(1000),
1270 REG_CONTENT_ID INTEGER,
1271 REG_DELETED SMALLINT,
1272 REG_TENANT_ID INTEGER DEFAULT 0,
1273 REG_UUID VARCHAR(100) NOT NULL,
1274 CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
1275 )ENGINE INNODB;
1276 ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1277 ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
1278 CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME USING HASH ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
1279 CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME USING HASH ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
1280 CREATE TABLE IF NOT EXISTS REG_COMMENT (
1281 REG_ID INTEGER NOT NULL AUTO_INCREMENT,
1282 REG_COMMENT_TEXT VARCHAR(500) NOT NULL,
1283 REG_USER_ID VARCHAR(31) NOT NULL,
1284 REG_COMMENTED_TIME TIMESTAMP NOT NULL,
1285 REG_TENANT_ID INTEGER DEFAULT 0,
1286 CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
1287 )ENGINE INNODB;
1288 CREATE TABLE IF NOT EXISTS REG_RESOURCE_COMMENT (
1289 REG_COMMENT_ID INTEGER NOT NULL,
1290 REG_VERSION INTEGER,
1291 REG_PATH_ID INTEGER,
1292 REG_RESOURCE_NAME VARCHAR(256),
1293 REG_TENANT_ID INTEGER DEFAULT 0
1294 )ENGINE INNODB;
1295 ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1296 ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
1297 CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
1298 CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION USING HASH ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
1299 CREATE TABLE IF NOT EXISTS REG_RATING (
1300 REG_ID INTEGER NOT NULL AUTO_INCREMENT,
1301 REG_RATING INTEGER NOT NULL,
1302 REG_USER_ID VARCHAR(31) NOT NULL,
1303 REG_RATED_TIME TIMESTAMP NOT NULL,
1304 REG_TENANT_ID INTEGER DEFAULT 0,
1305 CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
1306 )ENGINE INNODB;
1307 CREATE TABLE IF NOT EXISTS REG_RESOURCE_RATING (
1308 REG_RATING_ID INTEGER NOT NULL,
1309 REG_VERSION INTEGER,
1310 REG_PATH_ID INTEGER,
1311 REG_RESOURCE_NAME VARCHAR(256),
1312 REG_TENANT_ID INTEGER DEFAULT 0
1313 )ENGINE INNODB;
1314 ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1315 ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
1316 CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
1317 CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION USING HASH ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
1318 CREATE TABLE IF NOT EXISTS REG_TAG (
1319 REG_ID INTEGER NOT NULL AUTO_INCREMENT,
1320 REG_TAG_NAME VARCHAR(500) NOT NULL,
1321 REG_USER_ID VARCHAR(31) NOT NULL,
1322 REG_TAGGED_TIME TIMESTAMP NOT NULL,
1323 REG_TENANT_ID INTEGER DEFAULT 0,
1324 CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
1325 )ENGINE INNODB;
1326 CREATE TABLE IF NOT EXISTS REG_RESOURCE_TAG (
1327 REG_TAG_ID INTEGER NOT NULL,
1328 REG_VERSION INTEGER,
1329 REG_PATH_ID INTEGER,
1330 REG_RESOURCE_NAME VARCHAR(256),
1331 REG_TENANT_ID INTEGER DEFAULT 0
1332 )ENGINE INNODB;
1333 ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1334 ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
1335 CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
1336 CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION USING HASH ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
1337 CREATE TABLE IF NOT EXISTS REG_PROPERTY (
1338 REG_ID INTEGER NOT NULL AUTO_INCREMENT,
1339 REG_NAME VARCHAR(100) NOT NULL,
1340 REG_VALUE VARCHAR(1000),
1341 REG_TENANT_ID INTEGER DEFAULT 0,
1342 CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
1343 )ENGINE INNODB;
1344 CREATE TABLE IF NOT EXISTS REG_RESOURCE_PROPERTY (
1345 REG_PROPERTY_ID INTEGER NOT NULL,
1346 REG_VERSION INTEGER,
1347 REG_PATH_ID INTEGER,
1348 REG_RESOURCE_NAME VARCHAR(256),
1349 REG_TENANT_ID INTEGER DEFAULT 0
1350 )ENGINE INNODB;
1351 ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1352 ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
1353 CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
1354 CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION USING HASH ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
1355 CREATE TABLE IF NOT EXISTS REG_ASSOCIATION (
1356 REG_ASSOCIATION_ID INTEGER AUTO_INCREMENT,
1357 REG_SOURCEPATH VARCHAR (750) NOT NULL,
1358 REG_TARGETPATH VARCHAR (750) NOT NULL,
1359 REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
1360 REG_TENANT_ID INTEGER DEFAULT 0,
1361 PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
1362 )ENGINE INNODB;
1363 CREATE TABLE IF NOT EXISTS REG_SNAPSHOT (
1364 REG_SNAPSHOT_ID INTEGER NOT NULL AUTO_INCREMENT,
1365 REG_PATH_ID INTEGER NOT NULL,
1366 REG_RESOURCE_NAME VARCHAR(255),
1367 REG_RESOURCE_VIDS LONGBLOB NOT NULL,
1368 REG_TENANT_ID INTEGER DEFAULT 0,
1369 CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
1370 )ENGINE INNODB;
1371 CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME USING HASH ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
1372 ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
1373 CREATE TABLE UM_TENANT (
1374 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1375 UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
1376 UM_EMAIL VARCHAR(255),
1377 UM_ACTIVE BOOLEAN DEFAULT FALSE,
1378 UM_CREATED_DATE TIMESTAMP NOT NULL,
1379 UM_USER_CONFIG LONGBLOB,
1380 PRIMARY KEY (UM_ID),
1381 UNIQUE(UM_DOMAIN_NAME)
1382 )ENGINE INNODB;
1383 CREATE TABLE UM_DOMAIN(
1384 UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
1385 UM_DOMAIN_NAME VARCHAR(255),
1386 UM_TENANT_ID INTEGER DEFAULT 0,
1387 PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
1388 )ENGINE INNODB;
1389 CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
1390 ON UM_TENANT (UM_DOMAIN_NAME);
1391 CREATE TABLE UM_USER (
1392 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1393 UM_USER_NAME VARCHAR(255) NOT NULL,
1394 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
1395 UM_SALT_VALUE VARCHAR(31),
1396 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
1397 UM_CHANGED_TIME TIMESTAMP NOT NULL,
1398 UM_TENANT_ID INTEGER DEFAULT 0,
1399 PRIMARY KEY (UM_ID, UM_TENANT_ID),
1400 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
1401 )ENGINE INNODB;
1402 CREATE TABLE UM_SYSTEM_USER (
1403 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1404 UM_USER_NAME VARCHAR(255) NOT NULL,
1405 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
1406 UM_SALT_VALUE VARCHAR(31),
1407 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
1408 UM_CHANGED_TIME TIMESTAMP NOT NULL,
1409 UM_TENANT_ID INTEGER DEFAULT 0,
1410 PRIMARY KEY (UM_ID, UM_TENANT_ID),
1411 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
1412 )ENGINE INNODB;
1413 CREATE TABLE UM_ROLE (
1414 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1415 UM_ROLE_NAME VARCHAR(255) NOT NULL,
1416 UM_TENANT_ID INTEGER DEFAULT 0,
1417 UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
1418 PRIMARY KEY (UM_ID, UM_TENANT_ID),
1419 UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
1420 )ENGINE INNODB;
1421 CREATE TABLE UM_MODULE(
1422 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1423 UM_MODULE_NAME VARCHAR(100),
1424 UNIQUE(UM_MODULE_NAME),
1425 PRIMARY KEY(UM_ID)
1426 )ENGINE INNODB;
1427 CREATE TABLE UM_MODULE_ACTIONS(
1428 UM_ACTION VARCHAR(255) NOT NULL,
1429 UM_MODULE_ID INTEGER NOT NULL,
1430 PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
1431 FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
1432 )ENGINE INNODB;
1433 CREATE TABLE UM_PERMISSION (
1434 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1435 UM_RESOURCE_ID VARCHAR(255) NOT NULL,
1436 UM_ACTION VARCHAR(255) NOT NULL,
1437 UM_TENANT_ID INTEGER DEFAULT 0,
1438 UM_MODULE_ID INTEGER DEFAULT 0,
1439 UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
1440 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1441 )ENGINE INNODB;
1442 CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
1443 CREATE TABLE UM_ROLE_PERMISSION (
1444 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1445 UM_PERMISSION_ID INTEGER NOT NULL,
1446 UM_ROLE_NAME VARCHAR(255) NOT NULL,
1447 UM_IS_ALLOWED SMALLINT NOT NULL,
1448 UM_TENANT_ID INTEGER DEFAULT 0,
1449 UM_DOMAIN_ID INTEGER,
1450 UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
1451 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
1452 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
1453 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1454 )ENGINE INNODB;
1455 -- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID)
1456 CREATE TABLE UM_USER_PERMISSION (
1457 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1458 UM_PERMISSION_ID INTEGER NOT NULL,
1459 UM_USER_NAME VARCHAR(255) NOT NULL,
1460 UM_IS_ALLOWED SMALLINT NOT NULL,
1461 UM_TENANT_ID INTEGER DEFAULT 0,
1462 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
1463 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1464 )ENGINE INNODB;
1465 -- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID)
1466 CREATE TABLE UM_USER_ROLE (
1467 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1468 UM_ROLE_ID INTEGER NOT NULL,
1469 UM_USER_ID INTEGER NOT NULL,
1470 UM_TENANT_ID INTEGER DEFAULT 0,
1471 UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
1472 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
1473 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
1474 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1475 )ENGINE INNODB;
1476 CREATE TABLE UM_SHARED_USER_ROLE(
1477 UM_ROLE_ID INTEGER NOT NULL,
1478 UM_USER_ID INTEGER NOT NULL,
1479 UM_USER_TENANT_ID INTEGER NOT NULL,
1480 UM_ROLE_TENANT_ID INTEGER NOT NULL,
1481 UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
1482 FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
1483 FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
1484 )ENGINE INNODB;
1485 CREATE TABLE UM_ACCOUNT_MAPPING(
1486 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1487 UM_USER_NAME VARCHAR(255) NOT NULL,
1488 UM_TENANT_ID INTEGER NOT NULL,
1489 UM_USER_STORE_DOMAIN VARCHAR(100),
1490 UM_ACC_LINK_ID INTEGER NOT NULL,
1491 UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
1492 FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
1493 PRIMARY KEY (UM_ID)
1494 )ENGINE INNODB;
1495 CREATE TABLE UM_USER_ATTRIBUTE (
1496 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1497 UM_ATTR_NAME VARCHAR(255) NOT NULL,
1498 UM_ATTR_VALUE VARCHAR(1024),
1499 UM_PROFILE_ID VARCHAR(255),
1500 UM_USER_ID INTEGER,
1501 UM_TENANT_ID INTEGER DEFAULT 0,
1502 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
1503 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1504 )ENGINE INNODB;
1505 CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
1506 CREATE TABLE UM_DIALECT(
1507 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1508 UM_DIALECT_URI VARCHAR(255) NOT NULL,
1509 UM_TENANT_ID INTEGER DEFAULT 0,
1510 UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
1511 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1512 )ENGINE INNODB;
1513 CREATE TABLE UM_CLAIM(
1514 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1515 UM_DIALECT_ID INTEGER NOT NULL,
1516 UM_CLAIM_URI VARCHAR(255) NOT NULL,
1517 UM_DISPLAY_TAG VARCHAR(255),
1518 UM_DESCRIPTION VARCHAR(255),
1519 UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
1520 UM_MAPPED_ATTRIBUTE VARCHAR(255),
1521 UM_REG_EX VARCHAR(255),
1522 UM_SUPPORTED SMALLINT,
1523 UM_REQUIRED SMALLINT,
1524 UM_DISPLAY_ORDER INTEGER,
1525 UM_CHECKED_ATTRIBUTE SMALLINT,
1526 UM_READ_ONLY SMALLINT,
1527 UM_TENANT_ID INTEGER DEFAULT 0,
1528 UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
1529 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
1530 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1531 )ENGINE INNODB;
1532 CREATE TABLE UM_PROFILE_CONFIG(
1533 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1534 UM_DIALECT_ID INTEGER NOT NULL,
1535 UM_PROFILE_NAME VARCHAR(255),
1536 UM_TENANT_ID INTEGER DEFAULT 0,
1537 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
1538 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1539 )ENGINE INNODB;
1540 CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
1541 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1542 UM_PROFILE_ID INTEGER,
1543 UM_CLAIM_ID INTEGER,
1544 UM_BEHAVIOUR SMALLINT,
1545 UM_TENANT_ID INTEGER DEFAULT 0,
1546 FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
1547 FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
1548 PRIMARY KEY(UM_ID, UM_TENANT_ID)
1549 )ENGINE INNODB;
1550 CREATE TABLE UM_HYBRID_ROLE(
1551 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1552 UM_ROLE_NAME VARCHAR(255),
1553 UM_TENANT_ID INTEGER DEFAULT 0,
1554 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1555 )ENGINE INNODB;
1556 CREATE TABLE UM_HYBRID_USER_ROLE(
1557 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1558 UM_USER_NAME VARCHAR(255),
1559 UM_ROLE_ID INTEGER NOT NULL,
1560 UM_TENANT_ID INTEGER DEFAULT 0,
1561 UM_DOMAIN_ID INTEGER,
1562 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
1563 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
1564 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
1565 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1566 )ENGINE INNODB;
1567 CREATE TABLE UM_SYSTEM_ROLE(
1568 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1569 UM_ROLE_NAME VARCHAR(255),
1570 UM_TENANT_ID INTEGER DEFAULT 0,
1571 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1572 )ENGINE INNODB;
1573 CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
1574 CREATE TABLE UM_SYSTEM_USER_ROLE(
1575 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1576 UM_USER_NAME VARCHAR(255),
1577 UM_ROLE_ID INTEGER NOT NULL,
1578 UM_TENANT_ID INTEGER DEFAULT 0,
1579 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
1580 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
1581 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1582 )ENGINE INNODB;
1583 CREATE TABLE UM_HYBRID_REMEMBER_ME(
1584 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
1585 UM_USER_NAME VARCHAR(255) NOT NULL,
1586 UM_COOKIE_VALUE VARCHAR(1024),
1587 UM_CREATED_TIME TIMESTAMP,
1588 UM_TENANT_ID INTEGER DEFAULT 0,
1589 PRIMARY KEY (UM_ID, UM_TENANT_ID)
1590 )ENGINE INNODB;
1591 USE WSO2AM_APIMGT_DB;
1592 -- Start of IDENTITY Tables--
1593 CREATE TABLE IF NOT EXISTS IDN_BASE_TABLE (
1594 PRODUCT_NAME VARCHAR(20),
1595 PRIMARY KEY (PRODUCT_NAME)
1596 )ENGINE INNODB;
1597 INSERT INTO IDN_BASE_TABLE values ('WSO2 Identity Server');
1598 CREATE TABLE IF NOT EXISTS IDN_OAUTH_CONSUMER_APPS (
1599 ID INTEGER NOT NULL AUTO_INCREMENT,
1600 CONSUMER_KEY VARCHAR(255),
1601 CONSUMER_SECRET VARCHAR(2048),
1602 USERNAME VARCHAR(255),
1603 TENANT_ID INTEGER DEFAULT 0,
1604 USER_DOMAIN VARCHAR(50),
1605 APP_NAME VARCHAR(255),
1606 OAUTH_VERSION VARCHAR(128),
1607 CALLBACK_URL VARCHAR(1024),
1608 GRANT_TYPES VARCHAR (1024),
1609 PKCE_MANDATORY CHAR(1) DEFAULT '0',
1610 PKCE_SUPPORT_PLAIN CHAR(1) DEFAULT '0',
1611 APP_STATE VARCHAR (25) DEFAULT 'ACTIVE',
1612 USER_ACCESS_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
1613 APP_ACCESS_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
1614 REFRESH_TOKEN_EXPIRE_TIME BIGINT DEFAULT 84600,
1615 ID_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
1616 CONSTRAINT CONSUMER_KEY_CONSTRAINT UNIQUE (CONSUMER_KEY),
1617 PRIMARY KEY (ID)
1618 )ENGINE INNODB;
1619 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE_VALIDATORS (
1620 APP_ID INTEGER NOT NULL,
1621 SCOPE_VALIDATOR VARCHAR (128) NOT NULL,
1622 PRIMARY KEY (APP_ID,SCOPE_VALIDATOR),
1623 FOREIGN KEY (APP_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
1624 )ENGINE INNODB;
1625 CREATE TABLE IF NOT EXISTS IDN_OAUTH1A_REQUEST_TOKEN (
1626 REQUEST_TOKEN VARCHAR(255),
1627 REQUEST_TOKEN_SECRET VARCHAR(512),
1628 CONSUMER_KEY_ID INTEGER,
1629 CALLBACK_URL VARCHAR(1024),
1630 SCOPE VARCHAR(2048),
1631 AUTHORIZED VARCHAR(128),
1632 OAUTH_VERIFIER VARCHAR(512),
1633 AUTHZ_USER VARCHAR(512),
1634 TENANT_ID INTEGER DEFAULT -1,
1635 PRIMARY KEY (REQUEST_TOKEN),
1636 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
1637 )ENGINE INNODB;
1638 CREATE TABLE IF NOT EXISTS IDN_OAUTH1A_ACCESS_TOKEN (
1639 ACCESS_TOKEN VARCHAR(255),
1640 ACCESS_TOKEN_SECRET VARCHAR(512),
1641 CONSUMER_KEY_ID INTEGER,
1642 SCOPE VARCHAR(2048),
1643 AUTHZ_USER VARCHAR(512),
1644 TENANT_ID INTEGER DEFAULT -1,
1645 PRIMARY KEY (ACCESS_TOKEN),
1646 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
1647 )ENGINE INNODB;
1648 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN (
1649 TOKEN_ID VARCHAR (255),
1650 ACCESS_TOKEN VARCHAR(2048),
1651 REFRESH_TOKEN VARCHAR(2048),
1652 CONSUMER_KEY_ID INTEGER,
1653 AUTHZ_USER VARCHAR (100),
1654 TENANT_ID INTEGER,
1655 USER_DOMAIN VARCHAR(50),
1656 USER_TYPE VARCHAR (25),
1657 GRANT_TYPE VARCHAR (50),
1658 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1659 REFRESH_TOKEN_TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1660 VALIDITY_PERIOD BIGINT,
1661 REFRESH_TOKEN_VALIDITY_PERIOD BIGINT,
1662 TOKEN_SCOPE_HASH VARCHAR(32),
1663 TOKEN_STATE VARCHAR(25) DEFAULT 'ACTIVE',
1664 TOKEN_STATE_ID VARCHAR (128) DEFAULT 'NONE',
1665 SUBJECT_IDENTIFIER VARCHAR(255),
1666 ACCESS_TOKEN_HASH VARCHAR(512),
1667 REFRESH_TOKEN_HASH VARCHAR(512),
1668 PRIMARY KEY (TOKEN_ID),
1669 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE,
1670 CONSTRAINT CON_APP_KEY UNIQUE (CONSUMER_KEY_ID,AUTHZ_USER,TENANT_ID,USER_DOMAIN,USER_TYPE,TOKEN_SCOPE_HASH,
1671 TOKEN_STATE,TOKEN_STATE_ID)
1672 )ENGINE INNODB;
1673 CREATE INDEX IDX_AT_CK_AU ON IDN_OAUTH2_ACCESS_TOKEN(CONSUMER_KEY_ID, AUTHZ_USER, TOKEN_STATE, USER_TYPE);
1674 CREATE INDEX IDX_TC ON IDN_OAUTH2_ACCESS_TOKEN(TIME_CREATED);
1675 CREATE INDEX IDX_ATH ON IDN_OAUTH2_ACCESS_TOKEN(ACCESS_TOKEN_HASH);
1676 CREATE INDEX IDX_AT_TI_UD ON IDN_OAUTH2_ACCESS_TOKEN(AUTHZ_USER, TENANT_ID, TOKEN_STATE, USER_DOMAIN);
1677 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN_AUDIT (
1678 TOKEN_ID VARCHAR (255),
1679 ACCESS_TOKEN VARCHAR(2048),
1680 REFRESH_TOKEN VARCHAR(2048),
1681 CONSUMER_KEY_ID INTEGER,
1682 AUTHZ_USER VARCHAR (100),
1683 TENANT_ID INTEGER,
1684 USER_DOMAIN VARCHAR(50),
1685 USER_TYPE VARCHAR (25),
1686 GRANT_TYPE VARCHAR (50),
1687 TIME_CREATED TIMESTAMP NULL,
1688 REFRESH_TOKEN_TIME_CREATED TIMESTAMP NULL,
1689 VALIDITY_PERIOD BIGINT,
1690 REFRESH_TOKEN_VALIDITY_PERIOD BIGINT,
1691 TOKEN_SCOPE_HASH VARCHAR(32),
1692 TOKEN_STATE VARCHAR(25),
1693 TOKEN_STATE_ID VARCHAR (128) ,
1694 SUBJECT_IDENTIFIER VARCHAR(255),
1695 ACCESS_TOKEN_HASH VARCHAR(512),
1696 REFRESH_TOKEN_HASH VARCHAR(512),
1697 INVALIDATED_TIME TIMESTAMP NULL
1698 );
1699 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_AUTHORIZATION_CODE (
1700 CODE_ID VARCHAR (255),
1701 AUTHORIZATION_CODE VARCHAR(2048),
1702 CONSUMER_KEY_ID INTEGER,
1703 CALLBACK_URL VARCHAR(1024),
1704 SCOPE VARCHAR(2048),
1705 AUTHZ_USER VARCHAR (100),
1706 TENANT_ID INTEGER,
1707 USER_DOMAIN VARCHAR(50),
1708 TIME_CREATED TIMESTAMP,
1709 VALIDITY_PERIOD BIGINT,
1710 STATE VARCHAR (25) DEFAULT 'ACTIVE',
1711 TOKEN_ID VARCHAR(255),
1712 SUBJECT_IDENTIFIER VARCHAR(255),
1713 PKCE_CODE_CHALLENGE VARCHAR(255),
1714 PKCE_CODE_CHALLENGE_METHOD VARCHAR(128),
1715 AUTHORIZATION_CODE_HASH VARCHAR(512),
1716 PRIMARY KEY (CODE_ID),
1717 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
1718 )ENGINE INNODB;
1719 CREATE INDEX IDX_AUTHORIZATION_CODE_HASH ON IDN_OAUTH2_AUTHORIZATION_CODE (AUTHORIZATION_CODE_HASH,CONSUMER_KEY_ID);
1720 CREATE INDEX IDX_AUTHORIZATION_CODE_AU_TI ON IDN_OAUTH2_AUTHORIZATION_CODE (AUTHZ_USER,TENANT_ID, USER_DOMAIN, STATE);
1721 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN_SCOPE (
1722 TOKEN_ID VARCHAR (255),
1723 TOKEN_SCOPE VARCHAR (60),
1724 TENANT_ID INTEGER DEFAULT -1,
1725 PRIMARY KEY (TOKEN_ID, TOKEN_SCOPE),
1726 FOREIGN KEY (TOKEN_ID) REFERENCES IDN_OAUTH2_ACCESS_TOKEN(TOKEN_ID) ON DELETE CASCADE
1727 )ENGINE INNODB;
1728 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE (
1729 SCOPE_ID INTEGER NOT NULL AUTO_INCREMENT,
1730 NAME VARCHAR(255) NOT NULL,
1731 DISPLAY_NAME VARCHAR(255) NOT NULL,
1732 DESCRIPTION VARCHAR(512),
1733 TENANT_ID INTEGER NOT NULL DEFAULT -1,
1734 PRIMARY KEY (SCOPE_ID)
1735 )ENGINE INNODB;
1736 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE_BINDING (
1737 SCOPE_ID INTEGER NOT NULL,
1738 SCOPE_BINDING VARCHAR(255),
1739 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OAUTH2_SCOPE(SCOPE_ID) ON DELETE CASCADE
1740 )ENGINE INNODB;
1741 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_RESOURCE_SCOPE (
1742 RESOURCE_PATH VARCHAR(255) NOT NULL,
1743 SCOPE_ID INTEGER NOT NULL,
1744 TENANT_ID INTEGER DEFAULT -1,
1745 PRIMARY KEY (RESOURCE_PATH),
1746 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OAUTH2_SCOPE (SCOPE_ID) ON DELETE CASCADE
1747 )ENGINE INNODB;
1748 CREATE TABLE IF NOT EXISTS IDN_SCIM_GROUP (
1749 ID INTEGER AUTO_INCREMENT,
1750 TENANT_ID INTEGER NOT NULL,
1751 ROLE_NAME VARCHAR(255) NOT NULL,
1752 ATTR_NAME VARCHAR(1024) NOT NULL,
1753 ATTR_VALUE VARCHAR(1024),
1754 PRIMARY KEY (ID)
1755 )ENGINE INNODB;
1756 CREATE INDEX IDX_IDN_SCIM_GROUP_TI_RN ON IDN_SCIM_GROUP (TENANT_ID, ROLE_NAME);
1757 CREATE INDEX IDX_IDN_SCIM_GROUP_TI_RN_AN ON IDN_SCIM_GROUP (TENANT_ID, ROLE_NAME, ATTR_NAME);
1758 CREATE TABLE IF NOT EXISTS IDN_OPENID_REMEMBER_ME (
1759 USER_NAME VARCHAR(255) NOT NULL,
1760 TENANT_ID INTEGER DEFAULT 0,
1761 COOKIE_VALUE VARCHAR(1024),
1762 CREATED_TIME TIMESTAMP,
1763 PRIMARY KEY (USER_NAME, TENANT_ID)
1764 )ENGINE INNODB;
1765 CREATE TABLE IF NOT EXISTS IDN_OPENID_USER_RPS (
1766 USER_NAME VARCHAR(255) NOT NULL,
1767 TENANT_ID INTEGER DEFAULT 0,
1768 RP_URL VARCHAR(255) NOT NULL,
1769 TRUSTED_ALWAYS VARCHAR(128) DEFAULT 'FALSE',
1770 LAST_VISIT DATE NOT NULL,
1771 VISIT_COUNT INTEGER DEFAULT 0,
1772 DEFAULT_PROFILE_NAME VARCHAR(255) DEFAULT 'DEFAULT',
1773 PRIMARY KEY (USER_NAME, TENANT_ID, RP_URL)
1774 )ENGINE INNODB;
1775 CREATE TABLE IF NOT EXISTS IDN_OPENID_ASSOCIATIONS (
1776 HANDLE VARCHAR(255) NOT NULL,
1777 ASSOC_TYPE VARCHAR(255) NOT NULL,
1778 EXPIRE_IN TIMESTAMP NOT NULL,
1779 MAC_KEY VARCHAR(255) NOT NULL,
1780 ASSOC_STORE VARCHAR(128) DEFAULT 'SHARED',
1781 TENANT_ID INTEGER DEFAULT -1,
1782 PRIMARY KEY (HANDLE)
1783 )ENGINE INNODB;
1784 CREATE TABLE IF NOT EXISTS IDN_STS_STORE (
1785 ID INTEGER AUTO_INCREMENT,
1786 TOKEN_ID VARCHAR(255) NOT NULL,
1787 TOKEN_CONTENT BLOB(1024) NOT NULL,
1788 CREATE_DATE TIMESTAMP NOT NULL,
1789 EXPIRE_DATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1790 STATE INTEGER DEFAULT 0,
1791 PRIMARY KEY (ID)
1792 )ENGINE INNODB;
1793 CREATE TABLE IF NOT EXISTS IDN_IDENTITY_USER_DATA (
1794 TENANT_ID INTEGER DEFAULT -1234,
1795 USER_NAME VARCHAR(255) NOT NULL,
1796 DATA_KEY VARCHAR(255) NOT NULL,
1797 DATA_VALUE VARCHAR(2048),
1798 PRIMARY KEY (TENANT_ID, USER_NAME, DATA_KEY)
1799 )ENGINE INNODB;
1800 CREATE TABLE IF NOT EXISTS IDN_IDENTITY_META_DATA (
1801 USER_NAME VARCHAR(255) NOT NULL,
1802 TENANT_ID INTEGER DEFAULT -1234,
1803 METADATA_TYPE VARCHAR(255) NOT NULL,
1804 METADATA VARCHAR(255) NOT NULL,
1805 VALID VARCHAR(255) NOT NULL,
1806 PRIMARY KEY (TENANT_ID, USER_NAME, METADATA_TYPE,METADATA)
1807 )ENGINE INNODB;
1808 CREATE TABLE IF NOT EXISTS IDN_THRIFT_SESSION (
1809 SESSION_ID VARCHAR(255) NOT NULL,
1810 USER_NAME VARCHAR(255) NOT NULL,
1811 CREATED_TIME VARCHAR(255) NOT NULL,
1812 LAST_MODIFIED_TIME VARCHAR(255) NOT NULL,
1813 TENANT_ID INTEGER DEFAULT -1,
1814 PRIMARY KEY (SESSION_ID)
1815 )ENGINE INNODB;
1816 CREATE TABLE IF NOT EXISTS IDN_AUTH_SESSION_STORE (
1817 SESSION_ID VARCHAR (100) NOT NULL,
1818 SESSION_TYPE VARCHAR(100) NOT NULL,
1819 OPERATION VARCHAR(10) NOT NULL,
1820 SESSION_OBJECT BLOB,
1821 TIME_CREATED BIGINT,
1822 TENANT_ID INTEGER DEFAULT -1,
1823 EXPIRY_TIME BIGINT,
1824 PRIMARY KEY (SESSION_ID, SESSION_TYPE, TIME_CREATED, OPERATION)
1825 )ENGINE INNODB;
1826 CREATE INDEX IDX_IDN_AUTH_SESSION_TIME ON IDN_AUTH_SESSION_STORE (TIME_CREATED);
1827 CREATE TABLE IF NOT EXISTS IDN_AUTH_TEMP_SESSION_STORE (
1828 SESSION_ID VARCHAR (100) NOT NULL,
1829 SESSION_TYPE VARCHAR(100) NOT NULL,
1830 OPERATION VARCHAR(10) NOT NULL,
1831 SESSION_OBJECT BLOB,
1832 TIME_CREATED BIGINT,
1833 TENANT_ID INTEGER DEFAULT -1,
1834 EXPIRY_TIME BIGINT,
1835 PRIMARY KEY (SESSION_ID, SESSION_TYPE, TIME_CREATED, OPERATION)
1836 )ENGINE INNODB;
1837 CREATE INDEX IDX_IDN_AUTH_TMP_SESSION_TIME ON IDN_AUTH_TEMP_SESSION_STORE (TIME_CREATED);
1838 CREATE TABLE IF NOT EXISTS SP_APP (
1839 ID INTEGER NOT NULL AUTO_INCREMENT,
1840 TENANT_ID INTEGER NOT NULL,
1841 APP_NAME VARCHAR (255) NOT NULL ,
1842 USER_STORE VARCHAR (255) NOT NULL,
1843 USERNAME VARCHAR (255) NOT NULL ,
1844 DESCRIPTION VARCHAR (1024),
1845 ROLE_CLAIM VARCHAR (512),
1846 AUTH_TYPE VARCHAR (255) NOT NULL,
1847 PROVISIONING_USERSTORE_DOMAIN VARCHAR (512),
1848 IS_LOCAL_CLAIM_DIALECT CHAR(1) DEFAULT '1',
1849 IS_SEND_LOCAL_SUBJECT_ID CHAR(1) DEFAULT '0',
1850 IS_SEND_AUTH_LIST_OF_IDPS CHAR(1) DEFAULT '0',
1851 IS_USE_TENANT_DOMAIN_SUBJECT CHAR(1) DEFAULT '1',
1852 IS_USE_USER_DOMAIN_SUBJECT CHAR(1) DEFAULT '1',
1853 ENABLE_AUTHORIZATION CHAR(1) DEFAULT '0',
1854 SUBJECT_CLAIM_URI VARCHAR (512),
1855 IS_SAAS_APP CHAR(1) DEFAULT '0',
1856 IS_DUMB_MODE CHAR(1) DEFAULT '0',
1857 PRIMARY KEY (ID)
1858 )ENGINE INNODB;
1859 ALTER TABLE SP_APP ADD CONSTRAINT APPLICATION_NAME_CONSTRAINT UNIQUE(APP_NAME, TENANT_ID);
1860 CREATE TABLE IF NOT EXISTS SP_METADATA (
1861 ID INTEGER AUTO_INCREMENT,
1862 SP_ID INTEGER,
1863 NAME VARCHAR(255) NOT NULL,
1864 VALUE VARCHAR(255) NOT NULL,
1865 DISPLAY_NAME VARCHAR(255),
1866 TENANT_ID INTEGER DEFAULT -1,
1867 PRIMARY KEY (ID),
1868 CONSTRAINT SP_METADATA_CONSTRAINT UNIQUE (SP_ID, NAME),
1869 FOREIGN KEY (SP_ID) REFERENCES SP_APP(ID) ON DELETE CASCADE
1870 )ENGINE INNODB;
1871 CREATE TABLE IF NOT EXISTS SP_INBOUND_AUTH (
1872 ID INTEGER NOT NULL AUTO_INCREMENT,
1873 TENANT_ID INTEGER NOT NULL,
1874 INBOUND_AUTH_KEY VARCHAR (255),
1875 INBOUND_AUTH_TYPE VARCHAR (255) NOT NULL,
1876 INBOUND_CONFIG_TYPE VARCHAR (255) NOT NULL,
1877 PROP_NAME VARCHAR (255),
1878 PROP_VALUE VARCHAR (1024) ,
1879 APP_ID INTEGER NOT NULL,
1880 PRIMARY KEY (ID)
1881 )ENGINE INNODB;
1882 ALTER TABLE SP_INBOUND_AUTH ADD CONSTRAINT APPLICATION_ID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1883 CREATE TABLE IF NOT EXISTS SP_AUTH_STEP (
1884 ID INTEGER NOT NULL AUTO_INCREMENT,
1885 TENANT_ID INTEGER NOT NULL,
1886 STEP_ORDER INTEGER DEFAULT 1,
1887 APP_ID INTEGER NOT NULL ,
1888 IS_SUBJECT_STEP CHAR(1) DEFAULT '0',
1889 IS_ATTRIBUTE_STEP CHAR(1) DEFAULT '0',
1890 PRIMARY KEY (ID)
1891 )ENGINE INNODB;
1892 ALTER TABLE SP_AUTH_STEP ADD CONSTRAINT APPLICATION_ID_CONSTRAINT_STEP FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1893 CREATE TABLE IF NOT EXISTS SP_FEDERATED_IDP (
1894 ID INTEGER NOT NULL,
1895 TENANT_ID INTEGER NOT NULL,
1896 AUTHENTICATOR_ID INTEGER NOT NULL,
1897 PRIMARY KEY (ID, AUTHENTICATOR_ID)
1898 )ENGINE INNODB;
1899 ALTER TABLE SP_FEDERATED_IDP ADD CONSTRAINT STEP_ID_CONSTRAINT FOREIGN KEY (ID) REFERENCES SP_AUTH_STEP (ID) ON DELETE CASCADE;
1900 CREATE TABLE IF NOT EXISTS SP_CLAIM_DIALECT (
1901 ID INTEGER NOT NULL AUTO_INCREMENT,
1902 TENANT_ID INTEGER NOT NULL,
1903 SP_DIALECT VARCHAR (512) NOT NULL,
1904 APP_ID INTEGER NOT NULL,
1905 PRIMARY KEY (ID));
1906 ALTER TABLE SP_CLAIM_DIALECT ADD CONSTRAINT DIALECTID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1907 CREATE TABLE IF NOT EXISTS SP_CLAIM_MAPPING (
1908 ID INTEGER NOT NULL AUTO_INCREMENT,
1909 TENANT_ID INTEGER NOT NULL,
1910 IDP_CLAIM VARCHAR (512) NOT NULL ,
1911 SP_CLAIM VARCHAR (512) NOT NULL ,
1912 APP_ID INTEGER NOT NULL,
1913 IS_REQUESTED VARCHAR(128) DEFAULT '0',
1914 IS_MANDATORY VARCHAR(128) DEFAULT '0',
1915 DEFAULT_VALUE VARCHAR(255),
1916 PRIMARY KEY (ID)
1917 )ENGINE INNODB;
1918 ALTER TABLE SP_CLAIM_MAPPING ADD CONSTRAINT CLAIMID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1919 CREATE TABLE IF NOT EXISTS SP_ROLE_MAPPING (
1920 ID INTEGER NOT NULL AUTO_INCREMENT,
1921 TENANT_ID INTEGER NOT NULL,
1922 IDP_ROLE VARCHAR (255) NOT NULL ,
1923 SP_ROLE VARCHAR (255) NOT NULL ,
1924 APP_ID INTEGER NOT NULL,
1925 PRIMARY KEY (ID)
1926 )ENGINE INNODB;
1927 ALTER TABLE SP_ROLE_MAPPING ADD CONSTRAINT ROLEID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1928 CREATE TABLE IF NOT EXISTS SP_REQ_PATH_AUTHENTICATOR (
1929 ID INTEGER NOT NULL AUTO_INCREMENT,
1930 TENANT_ID INTEGER NOT NULL,
1931 AUTHENTICATOR_NAME VARCHAR (255) NOT NULL ,
1932 APP_ID INTEGER NOT NULL,
1933 PRIMARY KEY (ID)
1934 )ENGINE INNODB;
1935 ALTER TABLE SP_REQ_PATH_AUTHENTICATOR ADD CONSTRAINT REQ_AUTH_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1936 CREATE TABLE IF NOT EXISTS SP_PROVISIONING_CONNECTOR (
1937 ID INTEGER NOT NULL AUTO_INCREMENT,
1938 TENANT_ID INTEGER NOT NULL,
1939 IDP_NAME VARCHAR (255) NOT NULL ,
1940 CONNECTOR_NAME VARCHAR (255) NOT NULL ,
1941 APP_ID INTEGER NOT NULL,
1942 IS_JIT_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1943 BLOCKING CHAR(1) NOT NULL DEFAULT '0',
1944 RULE_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1945 PRIMARY KEY (ID)
1946 )ENGINE INNODB;
1947 ALTER TABLE SP_PROVISIONING_CONNECTOR ADD CONSTRAINT PRO_CONNECTOR_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1948 CREATE TABLE SP_AUTH_SCRIPT (
1949 ID INTEGER AUTO_INCREMENT NOT NULL,
1950 TENANT_ID INTEGER NOT NULL,
1951 APP_ID INTEGER NOT NULL,
1952 TYPE VARCHAR(255) NOT NULL,
1953 CONTENT BLOB DEFAULT NULL,
1954 IS_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1955 PRIMARY KEY (ID));
1956 CREATE TABLE IF NOT EXISTS SP_TEMPLATE (
1957 ID INTEGER AUTO_INCREMENT NOT NULL,
1958 TENANT_ID INTEGER NOT NULL,
1959 NAME VARCHAR(255) NOT NULL,
1960 DESCRIPTION VARCHAR(1023),
1961 CONTENT BLOB DEFAULT NULL,
1962 PRIMARY KEY (ID),
1963 CONSTRAINT SP_TEMPLATE_CONSTRAINT UNIQUE (TENANT_ID, NAME));
1964 CREATE INDEX IDX_SP_TEMPLATE ON SP_TEMPLATE (TENANT_ID, NAME);
1965 CREATE TABLE IF NOT EXISTS IDN_AUTH_WAIT_STATUS (
1966 ID INTEGER AUTO_INCREMENT NOT NULL,
1967 TENANT_ID INTEGER NOT NULL,
1968 LONG_WAIT_KEY VARCHAR(255) NOT NULL,
1969 WAIT_STATUS CHAR(1) NOT NULL DEFAULT '1',
1970 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1971 EXPIRE_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1972 PRIMARY KEY (ID),
1973 CONSTRAINT IDN_AUTH_WAIT_STATUS_KEY UNIQUE (LONG_WAIT_KEY));
1974 CREATE TABLE IF NOT EXISTS IDP (
1975 ID INTEGER AUTO_INCREMENT,
1976 TENANT_ID INTEGER,
1977 NAME VARCHAR(254) NOT NULL,
1978 IS_ENABLED CHAR(1) NOT NULL DEFAULT '1',
1979 IS_PRIMARY CHAR(1) NOT NULL DEFAULT '0',
1980 HOME_REALM_ID VARCHAR(254),
1981 IMAGE MEDIUMBLOB,
1982 CERTIFICATE BLOB,
1983 ALIAS VARCHAR(254),
1984 INBOUND_PROV_ENABLED CHAR (1) NOT NULL DEFAULT '0',
1985 INBOUND_PROV_USER_STORE_ID VARCHAR(254),
1986 USER_CLAIM_URI VARCHAR(254),
1987 ROLE_CLAIM_URI VARCHAR(254),
1988 DESCRIPTION VARCHAR (1024),
1989 DEFAULT_AUTHENTICATOR_NAME VARCHAR(254),
1990 DEFAULT_PRO_CONNECTOR_NAME VARCHAR(254),
1991 PROVISIONING_ROLE VARCHAR(128),
1992 IS_FEDERATION_HUB CHAR(1) NOT NULL DEFAULT '0',
1993 IS_LOCAL_CLAIM_DIALECT CHAR(1) NOT NULL DEFAULT '0',
1994 DISPLAY_NAME VARCHAR(255),
1995 PRIMARY KEY (ID),
1996 UNIQUE (TENANT_ID, NAME)
1997 )ENGINE INNODB;
1998 CREATE TABLE IF NOT EXISTS IDP_ROLE (
1999 ID INTEGER AUTO_INCREMENT,
2000 IDP_ID INTEGER,
2001 TENANT_ID INTEGER,
2002 ROLE VARCHAR(254),
2003 PRIMARY KEY (ID),
2004 UNIQUE (IDP_ID, ROLE),
2005 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2006 )ENGINE INNODB;
2007 CREATE TABLE IF NOT EXISTS IDP_ROLE_MAPPING (
2008 ID INTEGER AUTO_INCREMENT,
2009 IDP_ROLE_ID INTEGER,
2010 TENANT_ID INTEGER,
2011 USER_STORE_ID VARCHAR (253),
2012 LOCAL_ROLE VARCHAR(253),
2013 PRIMARY KEY (ID),
2014 UNIQUE (IDP_ROLE_ID, TENANT_ID, USER_STORE_ID, LOCAL_ROLE),
2015 FOREIGN KEY (IDP_ROLE_ID) REFERENCES IDP_ROLE(ID) ON DELETE CASCADE
2016 )ENGINE INNODB;
2017 CREATE TABLE IF NOT EXISTS IDP_CLAIM (
2018 ID INTEGER AUTO_INCREMENT,
2019 IDP_ID INTEGER,
2020 TENANT_ID INTEGER,
2021 CLAIM VARCHAR(254),
2022 PRIMARY KEY (ID),
2023 UNIQUE (IDP_ID, CLAIM),
2024 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2025 )ENGINE INNODB;
2026 CREATE TABLE IF NOT EXISTS IDP_CLAIM_MAPPING (
2027 ID INTEGER AUTO_INCREMENT,
2028 IDP_CLAIM_ID INTEGER,
2029 TENANT_ID INTEGER,
2030 LOCAL_CLAIM VARCHAR(253),
2031 DEFAULT_VALUE VARCHAR(255),
2032 IS_REQUESTED VARCHAR(128) DEFAULT '0',
2033 PRIMARY KEY (ID),
2034 UNIQUE (IDP_CLAIM_ID, TENANT_ID, LOCAL_CLAIM),
2035 FOREIGN KEY (IDP_CLAIM_ID) REFERENCES IDP_CLAIM(ID) ON DELETE CASCADE
2036 )ENGINE INNODB;
2037 CREATE TABLE IF NOT EXISTS IDP_AUTHENTICATOR (
2038 ID INTEGER AUTO_INCREMENT,
2039 TENANT_ID INTEGER,
2040 IDP_ID INTEGER,
2041 NAME VARCHAR(255) NOT NULL,
2042 IS_ENABLED CHAR (1) DEFAULT '1',
2043 DISPLAY_NAME VARCHAR(255),
2044 PRIMARY KEY (ID),
2045 UNIQUE (TENANT_ID, IDP_ID, NAME),
2046 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2047 )ENGINE INNODB;
2048 CREATE TABLE IF NOT EXISTS IDP_METADATA (
2049 ID INTEGER AUTO_INCREMENT,
2050 IDP_ID INTEGER,
2051 NAME VARCHAR(255) NOT NULL,
2052 VALUE VARCHAR(255) NOT NULL,
2053 DISPLAY_NAME VARCHAR(255),
2054 TENANT_ID INTEGER DEFAULT -1,
2055 PRIMARY KEY (ID),
2056 CONSTRAINT IDP_METADATA_CONSTRAINT UNIQUE (IDP_ID, NAME),
2057 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2058 )ENGINE INNODB;
2059 CREATE TABLE IF NOT EXISTS IDP_AUTHENTICATOR_PROPERTY (
2060 ID INTEGER AUTO_INCREMENT,
2061 TENANT_ID INTEGER,
2062 AUTHENTICATOR_ID INTEGER,
2063 PROPERTY_KEY VARCHAR(255) NOT NULL,
2064 PROPERTY_VALUE VARCHAR(2047),
2065 IS_SECRET CHAR (1) DEFAULT '0',
2066 PRIMARY KEY (ID),
2067 UNIQUE (TENANT_ID, AUTHENTICATOR_ID, PROPERTY_KEY),
2068 FOREIGN KEY (AUTHENTICATOR_ID) REFERENCES IDP_AUTHENTICATOR(ID) ON DELETE CASCADE
2069 )ENGINE INNODB;
2070 CREATE TABLE IF NOT EXISTS IDP_PROVISIONING_CONFIG (
2071 ID INTEGER AUTO_INCREMENT,
2072 TENANT_ID INTEGER,
2073 IDP_ID INTEGER,
2074 PROVISIONING_CONNECTOR_TYPE VARCHAR(255) NOT NULL,
2075 IS_ENABLED CHAR (1) DEFAULT '0',
2076 IS_BLOCKING CHAR (1) DEFAULT '0',
2077 IS_RULES_ENABLED CHAR (1) DEFAULT '0',
2078 PRIMARY KEY (ID),
2079 UNIQUE (TENANT_ID, IDP_ID, PROVISIONING_CONNECTOR_TYPE),
2080 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2081 )ENGINE INNODB;
2082 CREATE TABLE IF NOT EXISTS IDP_PROV_CONFIG_PROPERTY (
2083 ID INTEGER AUTO_INCREMENT,
2084 TENANT_ID INTEGER,
2085 PROVISIONING_CONFIG_ID INTEGER,
2086 PROPERTY_KEY VARCHAR(255) NOT NULL,
2087 PROPERTY_VALUE VARCHAR(2048),
2088 PROPERTY_BLOB_VALUE BLOB,
2089 PROPERTY_TYPE CHAR(32) NOT NULL,
2090 IS_SECRET CHAR (1) DEFAULT '0',
2091 PRIMARY KEY (ID),
2092 UNIQUE (TENANT_ID, PROVISIONING_CONFIG_ID, PROPERTY_KEY),
2093 FOREIGN KEY (PROVISIONING_CONFIG_ID) REFERENCES IDP_PROVISIONING_CONFIG(ID) ON DELETE CASCADE
2094 )ENGINE INNODB;
2095 CREATE TABLE IF NOT EXISTS IDP_PROVISIONING_ENTITY (
2096 ID INTEGER AUTO_INCREMENT,
2097 PROVISIONING_CONFIG_ID INTEGER,
2098 ENTITY_TYPE VARCHAR(255) NOT NULL,
2099 ENTITY_LOCAL_USERSTORE VARCHAR(255) NOT NULL,
2100 ENTITY_NAME VARCHAR(255) NOT NULL,
2101 ENTITY_VALUE VARCHAR(255),
2102 TENANT_ID INTEGER,
2103 ENTITY_LOCAL_ID VARCHAR(255),
2104 PRIMARY KEY (ID),
2105 UNIQUE (ENTITY_TYPE, TENANT_ID, ENTITY_LOCAL_USERSTORE, ENTITY_NAME, PROVISIONING_CONFIG_ID),
2106 UNIQUE (PROVISIONING_CONFIG_ID, ENTITY_TYPE, ENTITY_VALUE),
2107 FOREIGN KEY (PROVISIONING_CONFIG_ID) REFERENCES IDP_PROVISIONING_CONFIG(ID) ON DELETE CASCADE
2108 )ENGINE INNODB;
2109 CREATE TABLE IF NOT EXISTS IDP_LOCAL_CLAIM (
2110 ID INTEGER AUTO_INCREMENT,
2111 TENANT_ID INTEGER,
2112 IDP_ID INTEGER,
2113 CLAIM_URI VARCHAR(255) NOT NULL,
2114 DEFAULT_VALUE VARCHAR(255),
2115 IS_REQUESTED VARCHAR(128) DEFAULT '0',
2116 PRIMARY KEY (ID),
2117 UNIQUE (TENANT_ID, IDP_ID, CLAIM_URI),
2118 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2119 )ENGINE INNODB;
2120 CREATE TABLE IF NOT EXISTS IDN_ASSOCIATED_ID (
2121 ID INTEGER AUTO_INCREMENT,
2122 IDP_USER_ID VARCHAR(255) NOT NULL,
2123 TENANT_ID INTEGER DEFAULT -1234,
2124 IDP_ID INTEGER NOT NULL,
2125 DOMAIN_NAME VARCHAR(255) NOT NULL,
2126 USER_NAME VARCHAR(255) NOT NULL,
2127 PRIMARY KEY (ID),
2128 UNIQUE(IDP_USER_ID, TENANT_ID, IDP_ID),
2129 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
2130 )ENGINE INNODB;
2131 CREATE TABLE IF NOT EXISTS IDN_USER_ACCOUNT_ASSOCIATION (
2132 ASSOCIATION_KEY VARCHAR(255) NOT NULL,
2133 TENANT_ID INTEGER,
2134 DOMAIN_NAME VARCHAR(255) NOT NULL,
2135 USER_NAME VARCHAR(255) NOT NULL,
2136 PRIMARY KEY (TENANT_ID, DOMAIN_NAME, USER_NAME)
2137 )ENGINE INNODB;
2138 CREATE TABLE IF NOT EXISTS FIDO_DEVICE_STORE (
2139 TENANT_ID INTEGER,
2140 DOMAIN_NAME VARCHAR(255) NOT NULL,
2141 USER_NAME VARCHAR(45) NOT NULL,
2142 TIME_REGISTERED TIMESTAMP,
2143 KEY_HANDLE VARCHAR(200) NOT NULL,
2144 DEVICE_DATA VARCHAR(2048) NOT NULL,
2145 PRIMARY KEY (TENANT_ID, DOMAIN_NAME, USER_NAME, KEY_HANDLE)
2146 )ENGINE INNODB;
2147 CREATE TABLE IF NOT EXISTS WF_REQUEST (
2148 UUID VARCHAR (45),
2149 CREATED_BY VARCHAR (255),
2150 TENANT_ID INTEGER DEFAULT -1,
2151 OPERATION_TYPE VARCHAR (50),
2152 CREATED_AT TIMESTAMP,
2153 UPDATED_AT TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2154 STATUS VARCHAR (30),
2155 REQUEST BLOB,
2156 PRIMARY KEY (UUID)
2157 )ENGINE INNODB;
2158 CREATE TABLE IF NOT EXISTS WF_BPS_PROFILE (
2159 PROFILE_NAME VARCHAR(45),
2160 HOST_URL_MANAGER VARCHAR(255),
2161 HOST_URL_WORKER VARCHAR(255),
2162 USERNAME VARCHAR(45),
2163 PASSWORD VARCHAR(1023),
2164 CALLBACK_HOST VARCHAR (45),
2165 CALLBACK_USERNAME VARCHAR (45),
2166 CALLBACK_PASSWORD VARCHAR (255),
2167 TENANT_ID INTEGER DEFAULT -1,
2168 PRIMARY KEY (PROFILE_NAME, TENANT_ID)
2169 )ENGINE INNODB;
2170 CREATE TABLE IF NOT EXISTS WF_WORKFLOW(
2171 ID VARCHAR (45),
2172 WF_NAME VARCHAR (45),
2173 DESCRIPTION VARCHAR (255),
2174 TEMPLATE_ID VARCHAR (45),
2175 IMPL_ID VARCHAR (45),
2176 TENANT_ID INTEGER DEFAULT -1,
2177 PRIMARY KEY (ID)
2178 )ENGINE INNODB;
2179 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_ASSOCIATION(
2180 ID INTEGER NOT NULL AUTO_INCREMENT,
2181 ASSOC_NAME VARCHAR (45),
2182 EVENT_ID VARCHAR(45),
2183 ASSOC_CONDITION VARCHAR (2000),
2184 WORKFLOW_ID VARCHAR (45),
2185 IS_ENABLED CHAR (1) DEFAULT '1',
2186 TENANT_ID INTEGER DEFAULT -1,
2187 PRIMARY KEY(ID),
2188 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE
2189 )ENGINE INNODB;
2190 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_CONFIG_PARAM(
2191 WORKFLOW_ID VARCHAR (45),
2192 PARAM_NAME VARCHAR (45),
2193 PARAM_VALUE VARCHAR (1000),
2194 PARAM_QNAME VARCHAR (45),
2195 PARAM_HOLDER VARCHAR (45),
2196 TENANT_ID INTEGER DEFAULT -1,
2197 PRIMARY KEY (WORKFLOW_ID, PARAM_NAME, PARAM_QNAME, PARAM_HOLDER),
2198 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE
2199 )ENGINE INNODB;
2200 CREATE TABLE IF NOT EXISTS WF_REQUEST_ENTITY_RELATIONSHIP(
2201 REQUEST_ID VARCHAR (45),
2202 ENTITY_NAME VARCHAR (255),
2203 ENTITY_TYPE VARCHAR (50),
2204 TENANT_ID INTEGER DEFAULT -1,
2205 PRIMARY KEY(REQUEST_ID, ENTITY_NAME, ENTITY_TYPE, TENANT_ID),
2206 FOREIGN KEY (REQUEST_ID) REFERENCES WF_REQUEST(UUID)ON DELETE CASCADE
2207 )ENGINE INNODB;
2208 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_REQUEST_RELATION(
2209 RELATIONSHIP_ID VARCHAR (45),
2210 WORKFLOW_ID VARCHAR (45),
2211 REQUEST_ID VARCHAR (45),
2212 UPDATED_AT TIMESTAMP,
2213 STATUS VARCHAR (30),
2214 TENANT_ID INTEGER DEFAULT -1,
2215 PRIMARY KEY (RELATIONSHIP_ID),
2216 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE,
2217 FOREIGN KEY (REQUEST_ID) REFERENCES WF_REQUEST(UUID)ON DELETE CASCADE
2218 )ENGINE INNODB;
2219 CREATE TABLE IF NOT EXISTS IDN_RECOVERY_DATA (
2220 USER_NAME VARCHAR(255) NOT NULL,
2221 USER_DOMAIN VARCHAR(127) NOT NULL,
2222 TENANT_ID INTEGER DEFAULT -1,
2223 CODE VARCHAR(255) NOT NULL,
2224 SCENARIO VARCHAR(255) NOT NULL,
2225 STEP VARCHAR(127) NOT NULL,
2226 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
2227 REMAINING_SETS VARCHAR(2500) DEFAULT NULL,
2228 PRIMARY KEY(USER_NAME, USER_DOMAIN, TENANT_ID, SCENARIO,STEP),
2229 UNIQUE(CODE)
2230 )ENGINE INNODB;
2231 CREATE TABLE IF NOT EXISTS IDN_PASSWORD_HISTORY_DATA (
2232 ID INTEGER NOT NULL AUTO_INCREMENT,
2233 USER_NAME VARCHAR(255) NOT NULL,
2234 USER_DOMAIN VARCHAR(127) NOT NULL,
2235 TENANT_ID INTEGER DEFAULT -1,
2236 SALT_VALUE VARCHAR(255),
2237 HASH VARCHAR(255) NOT NULL,
2238 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
2239 PRIMARY KEY(ID),
2240 UNIQUE (USER_NAME,USER_DOMAIN,TENANT_ID,SALT_VALUE,HASH)
2241 )ENGINE INNODB;
2242 CREATE TABLE IF NOT EXISTS IDN_CLAIM_DIALECT (
2243 ID INTEGER NOT NULL AUTO_INCREMENT,
2244 DIALECT_URI VARCHAR (255) NOT NULL,
2245 TENANT_ID INTEGER NOT NULL,
2246 PRIMARY KEY (ID),
2247 CONSTRAINT DIALECT_URI_CONSTRAINT UNIQUE (DIALECT_URI, TENANT_ID)
2248 )ENGINE INNODB;
2249 CREATE TABLE IF NOT EXISTS IDN_CLAIM (
2250 ID INTEGER NOT NULL AUTO_INCREMENT,
2251 DIALECT_ID INTEGER,
2252 CLAIM_URI VARCHAR (255) NOT NULL,
2253 TENANT_ID INTEGER NOT NULL,
2254 PRIMARY KEY (ID),
2255 FOREIGN KEY (DIALECT_ID) REFERENCES IDN_CLAIM_DIALECT(ID) ON DELETE CASCADE,
2256 CONSTRAINT CLAIM_URI_CONSTRAINT UNIQUE (DIALECT_ID, CLAIM_URI, TENANT_ID)
2257 )ENGINE INNODB;
2258 CREATE TABLE IF NOT EXISTS IDN_CLAIM_MAPPED_ATTRIBUTE (
2259 ID INTEGER NOT NULL AUTO_INCREMENT,
2260 LOCAL_CLAIM_ID INTEGER,
2261 USER_STORE_DOMAIN_NAME VARCHAR (255) NOT NULL,
2262 ATTRIBUTE_NAME VARCHAR (255) NOT NULL,
2263 TENANT_ID INTEGER NOT NULL,
2264 PRIMARY KEY (ID),
2265 FOREIGN KEY (LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
2266 CONSTRAINT USER_STORE_DOMAIN_CONSTRAINT UNIQUE (LOCAL_CLAIM_ID, USER_STORE_DOMAIN_NAME, TENANT_ID)
2267 )ENGINE INNODB;
2268 CREATE TABLE IF NOT EXISTS IDN_CLAIM_PROPERTY (
2269 ID INTEGER NOT NULL AUTO_INCREMENT,
2270 LOCAL_CLAIM_ID INTEGER,
2271 PROPERTY_NAME VARCHAR (255) NOT NULL,
2272 PROPERTY_VALUE VARCHAR (255) NOT NULL,
2273 TENANT_ID INTEGER NOT NULL,
2274 PRIMARY KEY (ID),
2275 FOREIGN KEY (LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
2276 CONSTRAINT PROPERTY_NAME_CONSTRAINT UNIQUE (LOCAL_CLAIM_ID, PROPERTY_NAME, TENANT_ID)
2277 )ENGINE INNODB;
2278 CREATE TABLE IF NOT EXISTS IDN_CLAIM_MAPPING (
2279 ID INTEGER NOT NULL AUTO_INCREMENT,
2280 EXT_CLAIM_ID INTEGER NOT NULL,
2281 MAPPED_LOCAL_CLAIM_ID INTEGER NOT NULL,
2282 TENANT_ID INTEGER NOT NULL,
2283 PRIMARY KEY (ID),
2284 FOREIGN KEY (EXT_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
2285 FOREIGN KEY (MAPPED_LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
2286 CONSTRAINT EXT_TO_LOC_MAPPING_CONSTRN UNIQUE (EXT_CLAIM_ID, TENANT_ID)
2287 )ENGINE INNODB;
2288 CREATE TABLE IF NOT EXISTS IDN_SAML2_ASSERTION_STORE (
2289 ID INTEGER NOT NULL AUTO_INCREMENT,
2290 SAML2_ID VARCHAR(255) ,
2291 SAML2_ISSUER VARCHAR(255) ,
2292 SAML2_SUBJECT VARCHAR(255) ,
2293 SAML2_SESSION_INDEX VARCHAR(255) ,
2294 SAML2_AUTHN_CONTEXT_CLASS_REF VARCHAR(255) ,
2295 SAML2_ASSERTION VARCHAR(4096) ,
2296 PRIMARY KEY (ID)
2297 )ENGINE INNODB;
2298 CREATE TABLE IDN_SAML2_ARTIFACT_STORE (
2299 ID INT(11) NOT NULL AUTO_INCREMENT,
2300 SOURCE_ID VARCHAR(255) NOT NULL,
2301 MESSAGE_HANDLER VARCHAR(255) NOT NULL,
2302 AUTHN_REQ_DTO BLOB NOT NULL,
2303 SESSION_ID VARCHAR(255) NOT NULL,
2304 EXP_TIMESTAMP TIMESTAMP NOT NULL,
2305 INIT_TIMESTAMP TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
2306 ASSERTION_ID VARCHAR(255),
2307 PRIMARY KEY (`ID`)
2308 )ENGINE INNODB;
2309 CREATE TABLE IF NOT EXISTS IDN_OIDC_JTI (
2310 JWT_ID VARCHAR(255) NOT NULL,
2311 EXP_TIME TIMESTAMP NOT NULL ,
2312 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
2313 PRIMARY KEY (JWT_ID)
2314 )ENGINE INNODB;
2315 CREATE TABLE IF NOT EXISTS IDN_OIDC_PROPERTY (
2316 ID INTEGER NOT NULL AUTO_INCREMENT,
2317 TENANT_ID INTEGER,
2318 CONSUMER_KEY VARCHAR(255) ,
2319 PROPERTY_KEY VARCHAR(255) NOT NULL,
2320 PROPERTY_VALUE VARCHAR(2047) ,
2321 PRIMARY KEY (ID),
2322 FOREIGN KEY (CONSUMER_KEY) REFERENCES IDN_OAUTH_CONSUMER_APPS(CONSUMER_KEY) ON DELETE CASCADE
2323 )ENGINE INNODB;
2324 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJECT_REFERENCE (
2325 ID INTEGER NOT NULL AUTO_INCREMENT,
2326 CONSUMER_KEY_ID INTEGER ,
2327 CODE_ID VARCHAR(255) ,
2328 TOKEN_ID VARCHAR(255) ,
2329 SESSION_DATA_KEY VARCHAR(255),
2330 PRIMARY KEY (ID),
2331 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE,
2332 FOREIGN KEY (TOKEN_ID) REFERENCES IDN_OAUTH2_ACCESS_TOKEN(TOKEN_ID) ON DELETE CASCADE,
2333 FOREIGN KEY (CODE_ID) REFERENCES IDN_OAUTH2_AUTHORIZATION_CODE(CODE_ID) ON DELETE CASCADE
2334 )ENGINE INNODB;
2335 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJECT_CLAIMS (
2336 ID INTEGER NOT NULL AUTO_INCREMENT,
2337 REQ_OBJECT_ID INTEGER,
2338 CLAIM_ATTRIBUTE VARCHAR(255) ,
2339 ESSENTIAL CHAR(1) NOT NULL DEFAULT '0' ,
2340 VALUE VARCHAR(255) ,
2341 IS_USERINFO CHAR(1) NOT NULL DEFAULT '0',
2342 PRIMARY KEY (ID),
2343 FOREIGN KEY (REQ_OBJECT_ID) REFERENCES IDN_OIDC_REQ_OBJECT_REFERENCE (ID) ON DELETE CASCADE
2344 )ENGINE INNODB;
2345 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJ_CLAIM_VALUES (
2346 ID INTEGER NOT NULL AUTO_INCREMENT,
2347 REQ_OBJECT_CLAIMS_ID INTEGER ,
2348 CLAIM_VALUES VARCHAR(255) ,
2349 PRIMARY KEY (ID),
2350 FOREIGN KEY (REQ_OBJECT_CLAIMS_ID) REFERENCES IDN_OIDC_REQ_OBJECT_CLAIMS(ID) ON DELETE CASCADE
2351 )ENGINE INNODB;
2352 CREATE TABLE IF NOT EXISTS IDN_CERTIFICATE (
2353 ID INTEGER NOT NULL AUTO_INCREMENT,
2354 NAME VARCHAR(100),
2355 CERTIFICATE_IN_PEM BLOB,
2356 TENANT_ID INTEGER DEFAULT 0,
2357 PRIMARY KEY(ID),
2358 CONSTRAINT CERTIFICATE_UNIQUE_KEY UNIQUE (NAME, TENANT_ID)
2359 )ENGINE INNODB;
2360 CREATE TABLE IF NOT EXISTS IDN_OIDC_SCOPE (
2361 ID INTEGER NOT NULL AUTO_INCREMENT,
2362 NAME VARCHAR(255) NOT NULL,
2363 TENANT_ID INTEGER DEFAULT -1,
2364 PRIMARY KEY (ID)
2365 )ENGINE INNODB;
2366 CREATE TABLE IF NOT EXISTS IDN_OIDC_SCOPE_CLAIM_MAPPING (
2367 ID INTEGER NOT NULL AUTO_INCREMENT,
2368 SCOPE_ID INTEGER,
2369 EXTERNAL_CLAIM_ID INTEGER,
2370 PRIMARY KEY (ID),
2371 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OIDC_SCOPE(ID) ON DELETE CASCADE,
2372 FOREIGN KEY (EXTERNAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE
2373 )ENGINE INNODB;
2374 CREATE INDEX IDX_AT_SI_ECI ON IDN_OIDC_SCOPE_CLAIM_MAPPING(SCOPE_ID, EXTERNAL_CLAIM_ID);
2375 CREATE TABLE CM_PII_CATEGORY (
2376 ID INTEGER AUTO_INCREMENT,
2377 NAME VARCHAR(255) NOT NULL,
2378 DESCRIPTION VARCHAR(1023),
2379 DISPLAY_NAME VARCHAR(255),
2380 IS_SENSITIVE INTEGER NOT NULL,
2381 TENANT_ID INTEGER DEFAULT '-1234',
2382 UNIQUE KEY (NAME, TENANT_ID),
2383 PRIMARY KEY (ID)
2384 );
2385 CREATE TABLE CM_RECEIPT (
2386 CONSENT_RECEIPT_ID VARCHAR(255) NOT NULL,
2387 VERSION VARCHAR(255) NOT NULL,
2388 JURISDICTION VARCHAR(255) NOT NULL,
2389 CONSENT_TIMESTAMP TIMESTAMP NOT NULL,
2390 COLLECTION_METHOD VARCHAR(255) NOT NULL,
2391 LANGUAGE VARCHAR(255) NOT NULL,
2392 PII_PRINCIPAL_ID VARCHAR(255) NOT NULL,
2393 PRINCIPAL_TENANT_ID INTEGER DEFAULT '-1234',
2394 POLICY_URL VARCHAR(255) NOT NULL,
2395 STATE VARCHAR(255) NOT NULL,
2396 PII_CONTROLLER VARCHAR(2048) NOT NULL,
2397 PRIMARY KEY (CONSENT_RECEIPT_ID)
2398 );
2399 CREATE TABLE CM_PURPOSE (
2400 ID INTEGER AUTO_INCREMENT,
2401 NAME VARCHAR(255) NOT NULL,
2402 DESCRIPTION VARCHAR(1023),
2403 PURPOSE_GROUP VARCHAR(255) NOT NULL,
2404 GROUP_TYPE VARCHAR(255) NOT NULL,
2405 TENANT_ID INTEGER DEFAULT '-1234',
2406 UNIQUE KEY (NAME, TENANT_ID, PURPOSE_GROUP, GROUP_TYPE),
2407 PRIMARY KEY (ID)
2408 );
2409 CREATE TABLE CM_PURPOSE_CATEGORY (
2410 ID INTEGER AUTO_INCREMENT,
2411 NAME VARCHAR(255) NOT NULL,
2412 DESCRIPTION VARCHAR(1023),
2413 TENANT_ID INTEGER DEFAULT '-1234',
2414 UNIQUE KEY (NAME, TENANT_ID),
2415 PRIMARY KEY (ID)
2416 );
2417 CREATE TABLE CM_RECEIPT_SP_ASSOC (
2418 ID INTEGER AUTO_INCREMENT,
2419 CONSENT_RECEIPT_ID VARCHAR(255) NOT NULL,
2420 SP_NAME VARCHAR(255) NOT NULL,
2421 SP_DISPLAY_NAME VARCHAR(255),
2422 SP_DESCRIPTION VARCHAR(255),
2423 SP_TENANT_ID INTEGER DEFAULT '-1234',
2424 UNIQUE KEY (CONSENT_RECEIPT_ID, SP_NAME, SP_TENANT_ID),
2425 PRIMARY KEY (ID)
2426 );
2427 CREATE TABLE CM_SP_PURPOSE_ASSOC (
2428 ID INTEGER AUTO_INCREMENT,
2429 RECEIPT_SP_ASSOC INTEGER NOT NULL,
2430 PURPOSE_ID INTEGER NOT NULL,
2431 CONSENT_TYPE VARCHAR(255) NOT NULL,
2432 IS_PRIMARY_PURPOSE INTEGER NOT NULL,
2433 TERMINATION VARCHAR(255) NOT NULL,
2434 THIRD_PARTY_DISCLOSURE INTEGER NOT NULL,
2435 THIRD_PARTY_NAME VARCHAR(255),
2436 UNIQUE KEY (RECEIPT_SP_ASSOC, PURPOSE_ID),
2437 PRIMARY KEY (ID)
2438 );
2439 CREATE TABLE CM_SP_PURPOSE_PURPOSE_CAT_ASSC (
2440 SP_PURPOSE_ASSOC_ID INTEGER NOT NULL,
2441 PURPOSE_CATEGORY_ID INTEGER NOT NULL,
2442 UNIQUE KEY (SP_PURPOSE_ASSOC_ID, PURPOSE_CATEGORY_ID)
2443 );
2444 CREATE TABLE CM_PURPOSE_PII_CAT_ASSOC (
2445 PURPOSE_ID INTEGER NOT NULL,
2446 CM_PII_CATEGORY_ID INTEGER NOT NULL,
2447 IS_MANDATORY INTEGER NOT NULL,
2448 UNIQUE KEY (PURPOSE_ID, CM_PII_CATEGORY_ID)
2449 );
2450 CREATE TABLE CM_SP_PURPOSE_PII_CAT_ASSOC (
2451 SP_PURPOSE_ASSOC_ID INTEGER NOT NULL,
2452 PII_CATEGORY_ID INTEGER NOT NULL,
2453 VALIDITY VARCHAR(1023),
2454 UNIQUE KEY (SP_PURPOSE_ASSOC_ID, PII_CATEGORY_ID)
2455 );
2456 CREATE TABLE CM_CONSENT_RECEIPT_PROPERTY (
2457 CONSENT_RECEIPT_ID VARCHAR(255) NOT NULL,
2458 NAME VARCHAR(255) NOT NULL,
2459 VALUE VARCHAR(1023) NOT NULL,
2460 UNIQUE KEY (CONSENT_RECEIPT_ID, NAME)
2461 );
2462 ALTER TABLE CM_RECEIPT_SP_ASSOC
2463 ADD CONSTRAINT CM_RECEIPT_SP_ASSOC_fk0 FOREIGN KEY (CONSENT_RECEIPT_ID) REFERENCES CM_RECEIPT (CONSENT_RECEIPT_ID);
2464 ALTER TABLE CM_SP_PURPOSE_ASSOC
2465 ADD CONSTRAINT CM_SP_PURPOSE_ASSOC_fk0 FOREIGN KEY (RECEIPT_SP_ASSOC) REFERENCES CM_RECEIPT_SP_ASSOC (ID);
2466 ALTER TABLE CM_SP_PURPOSE_ASSOC
2467 ADD CONSTRAINT CM_SP_PURPOSE_ASSOC_fk1 FOREIGN KEY (PURPOSE_ID) REFERENCES CM_PURPOSE (ID);
2468 ALTER TABLE CM_SP_PURPOSE_PURPOSE_CAT_ASSC
2469 ADD CONSTRAINT CM_SP_P_P_CAT_ASSOC_fk0 FOREIGN KEY (SP_PURPOSE_ASSOC_ID) REFERENCES CM_SP_PURPOSE_ASSOC (ID);
2470 ALTER TABLE CM_SP_PURPOSE_PURPOSE_CAT_ASSC
2471 ADD CONSTRAINT CM_SP_P_P_CAT_ASSOC_fk1 FOREIGN KEY (PURPOSE_CATEGORY_ID) REFERENCES CM_PURPOSE_CATEGORY (ID);
2472 ALTER TABLE CM_SP_PURPOSE_PII_CAT_ASSOC
2473 ADD CONSTRAINT CM_SP_P_PII_CAT_ASSOC_fk0 FOREIGN KEY (SP_PURPOSE_ASSOC_ID) REFERENCES CM_SP_PURPOSE_ASSOC (ID);
2474 ALTER TABLE CM_SP_PURPOSE_PII_CAT_ASSOC
2475 ADD CONSTRAINT CM_SP_P_PII_CAT_ASSOC_fk1 FOREIGN KEY (PII_CATEGORY_ID) REFERENCES CM_PII_CATEGORY (ID);
2476 ALTER TABLE CM_CONSENT_RECEIPT_PROPERTY
2477 ADD CONSTRAINT CM_CONSENT_RECEIPT_PRT_fk0 FOREIGN KEY (CONSENT_RECEIPT_ID) REFERENCES CM_RECEIPT (CONSENT_RECEIPT_ID);
2478 INSERT INTO CM_PURPOSE (NAME, DESCRIPTION, PURPOSE_GROUP, GROUP_TYPE, TENANT_ID) VALUES ('DEFAULT', 'For core functionalities of the product', 'DEFAULT', 'SP', '-1234');
2479 INSERT INTO CM_PURPOSE_CATEGORY (NAME, DESCRIPTION, TENANT_ID) VALUES ('DEFAULT','For core functionalities of the product', '-1234');
2480 CREATE TABLE IF NOT EXISTS AM_SUBSCRIBER (
2481 SUBSCRIBER_ID INTEGER AUTO_INCREMENT,
2482 USER_ID VARCHAR(255) NOT NULL,
2483 TENANT_ID INTEGER NOT NULL,
2484 EMAIL_ADDRESS VARCHAR(256) NULL,
2485 DATE_SUBSCRIBED TIMESTAMP NOT NULL,
2486 PRIMARY KEY (SUBSCRIBER_ID),
2487 CREATED_BY VARCHAR(100),
2488 CREATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2489 UPDATED_BY VARCHAR(100),
2490 UPDATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2491 UNIQUE (TENANT_ID,USER_ID)
2492 )ENGINE INNODB;
2493 CREATE TABLE IF NOT EXISTS AM_APPLICATION (
2494 APPLICATION_ID INTEGER AUTO_INCREMENT,
2495 NAME VARCHAR(100),
2496 SUBSCRIBER_ID INTEGER,
2497 APPLICATION_TIER VARCHAR(50) DEFAULT 'Unlimited',
2498 CALLBACK_URL VARCHAR(512),
2499 DESCRIPTION VARCHAR(512),
2500 APPLICATION_STATUS VARCHAR(50) DEFAULT 'APPROVED',
2501 GROUP_ID VARCHAR(100),
2502 CREATED_BY VARCHAR(100),
2503 CREATED_TIME TIMESTAMP,
2504 UPDATED_BY VARCHAR(100),
2505 UPDATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2506 UUID VARCHAR(256),
2507 TOKEN_TYPE VARCHAR(10),
2508 FOREIGN KEY(SUBSCRIBER_ID) REFERENCES AM_SUBSCRIBER(SUBSCRIBER_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2509 PRIMARY KEY(APPLICATION_ID),
2510 UNIQUE (NAME,SUBSCRIBER_ID),
2511 UNIQUE (UUID)
2512 )ENGINE INNODB;
2513 CREATE TABLE IF NOT EXISTS AM_API (
2514 API_ID INTEGER AUTO_INCREMENT,
2515 API_PROVIDER VARCHAR(200),
2516 API_NAME VARCHAR(200),
2517 API_VERSION VARCHAR(30),
2518 CONTEXT VARCHAR(256),
2519 CONTEXT_TEMPLATE VARCHAR(256),
2520 API_TIER VARCHAR(256),
2521 CREATED_BY VARCHAR(100),
2522 CREATED_TIME TIMESTAMP,
2523 UPDATED_BY VARCHAR(100),
2524 UPDATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2525 PRIMARY KEY(API_ID),
2526 UNIQUE (API_PROVIDER,API_NAME,API_VERSION)
2527 )ENGINE INNODB;
2528 CREATE TABLE IF NOT EXISTS AM_API_URL_MAPPING (
2529 URL_MAPPING_ID INTEGER AUTO_INCREMENT,
2530 API_ID INTEGER NOT NULL,
2531 HTTP_METHOD VARCHAR(20) NULL,
2532 AUTH_SCHEME VARCHAR(50) NULL,
2533 URL_PATTERN VARCHAR(512) NULL,
2534 THROTTLING_TIER varchar(512) DEFAULT NULL,
2535 MEDIATION_SCRIPT BLOB,
2536 PRIMARY KEY (URL_MAPPING_ID)
2537 )ENGINE INNODB;
2538 CREATE TABLE IF NOT EXISTS AM_SUBSCRIPTION (
2539 SUBSCRIPTION_ID INTEGER AUTO_INCREMENT,
2540 TIER_ID VARCHAR(50),
2541 API_ID INTEGER,
2542 LAST_ACCESSED TIMESTAMP NULL,
2543 APPLICATION_ID INTEGER,
2544 SUB_STATUS VARCHAR(50),
2545 SUBS_CREATE_STATE VARCHAR(50) DEFAULT 'SUBSCRIBE',
2546 CREATED_BY VARCHAR(100),
2547 CREATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2548 UPDATED_BY VARCHAR(100),
2549 UPDATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2550 UUID VARCHAR(256),
2551 FOREIGN KEY(APPLICATION_ID) REFERENCES AM_APPLICATION(APPLICATION_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2552 FOREIGN KEY(API_ID) REFERENCES AM_API(API_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2553 PRIMARY KEY (SUBSCRIPTION_ID),
2554 UNIQUE (UUID)
2555 )ENGINE INNODB;
2556 CREATE TABLE IF NOT EXISTS AM_SUBSCRIPTION_KEY_MAPPING (
2557 SUBSCRIPTION_ID INTEGER,
2558 ACCESS_TOKEN VARCHAR(512),
2559 KEY_TYPE VARCHAR(512) NOT NULL,
2560 FOREIGN KEY(SUBSCRIPTION_ID) REFERENCES AM_SUBSCRIPTION(SUBSCRIPTION_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2561 PRIMARY KEY(SUBSCRIPTION_ID,ACCESS_TOKEN)
2562 )ENGINE INNODB;
2563 CREATE TABLE IF NOT EXISTS AM_APPLICATION_KEY_MAPPING (
2564 APPLICATION_ID INTEGER,
2565 CONSUMER_KEY VARCHAR(255),
2566 KEY_TYPE VARCHAR(512) NOT NULL,
2567 STATE VARCHAR(30) NOT NULL,
2568 CREATE_MODE VARCHAR(30) DEFAULT 'CREATED',
2569 FOREIGN KEY(APPLICATION_ID) REFERENCES AM_APPLICATION(APPLICATION_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2570 PRIMARY KEY(APPLICATION_ID,KEY_TYPE)
2571 )ENGINE INNODB;
2572 CREATE TABLE IF NOT EXISTS AM_API_LC_EVENT (
2573 EVENT_ID INTEGER AUTO_INCREMENT,
2574 API_ID INTEGER NOT NULL,
2575 PREVIOUS_STATE VARCHAR(50),
2576 NEW_STATE VARCHAR(50) NOT NULL,
2577 USER_ID VARCHAR(255) NOT NULL,
2578 TENANT_ID INTEGER NOT NULL,
2579 EVENT_DATE TIMESTAMP NOT NULL,
2580 FOREIGN KEY(API_ID) REFERENCES AM_API(API_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2581 PRIMARY KEY (EVENT_ID)
2582 )ENGINE INNODB;
2583 CREATE TABLE AM_APP_KEY_DOMAIN_MAPPING (
2584 CONSUMER_KEY VARCHAR(255),
2585 AUTHZ_DOMAIN VARCHAR(255) DEFAULT 'ALL',
2586 PRIMARY KEY (CONSUMER_KEY,AUTHZ_DOMAIN)
2587 )ENGINE INNODB;
2588 CREATE TABLE IF NOT EXISTS AM_API_COMMENTS (
2589 COMMENT_ID INTEGER AUTO_INCREMENT,
2590 COMMENT_TEXT VARCHAR(512),
2591 COMMENTED_USER VARCHAR(255),
2592 DATE_COMMENTED TIMESTAMP NOT NULL,
2593 API_ID INTEGER NOT NULL,
2594 FOREIGN KEY(API_ID) REFERENCES AM_API(API_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2595 PRIMARY KEY (COMMENT_ID)
2596 )ENGINE INNODB;
2597 CREATE TABLE IF NOT EXISTS AM_API_RATINGS (
2598 RATING_ID INTEGER AUTO_INCREMENT,
2599 API_ID INTEGER,
2600 RATING INTEGER,
2601 SUBSCRIBER_ID INTEGER,
2602 FOREIGN KEY(API_ID) REFERENCES AM_API(API_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2603 FOREIGN KEY(SUBSCRIBER_ID) REFERENCES AM_SUBSCRIBER(SUBSCRIBER_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2604 PRIMARY KEY (RATING_ID)
2605 )ENGINE INNODB;
2606 CREATE TABLE IF NOT EXISTS AM_TIER_PERMISSIONS (
2607 TIER_PERMISSIONS_ID INTEGER AUTO_INCREMENT,
2608 TIER VARCHAR(50) NOT NULL,
2609 PERMISSIONS_TYPE VARCHAR(50) NOT NULL,
2610 ROLES VARCHAR(512) NOT NULL,
2611 TENANT_ID INTEGER NOT NULL,
2612 PRIMARY KEY(TIER_PERMISSIONS_ID)
2613 )ENGINE INNODB;
2614 CREATE TABLE IF NOT EXISTS AM_EXTERNAL_STORES (
2615 APISTORE_ID INTEGER AUTO_INCREMENT,
2616 API_ID INTEGER,
2617 STORE_ID VARCHAR(255) NOT NULL,
2618 STORE_DISPLAY_NAME VARCHAR(255) NOT NULL,
2619 STORE_ENDPOINT VARCHAR(255) NOT NULL,
2620 STORE_TYPE VARCHAR(255) NOT NULL,
2621 FOREIGN KEY(API_ID) REFERENCES AM_API(API_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2622 PRIMARY KEY (APISTORE_ID)
2623 )ENGINE INNODB;
2624 CREATE TABLE IF NOT EXISTS AM_WORKFLOWS(
2625 WF_ID INTEGER AUTO_INCREMENT,
2626 WF_REFERENCE VARCHAR(255) NOT NULL,
2627 WF_TYPE VARCHAR(255) NOT NULL,
2628 WF_STATUS VARCHAR(255) NOT NULL,
2629 WF_CREATED_TIME TIMESTAMP,
2630 WF_UPDATED_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,
2631 WF_STATUS_DESC VARCHAR(1000),
2632 TENANT_ID INTEGER,
2633 TENANT_DOMAIN VARCHAR(255),
2634 WF_EXTERNAL_REFERENCE VARCHAR(255) NOT NULL,
2635 PRIMARY KEY (WF_ID),
2636 UNIQUE (WF_EXTERNAL_REFERENCE)
2637 )ENGINE INNODB;
2638 CREATE TABLE IF NOT EXISTS AM_APPLICATION_REGISTRATION (
2639 REG_ID INT AUTO_INCREMENT,
2640 SUBSCRIBER_ID INT,
2641 WF_REF VARCHAR(255) NOT NULL,
2642 APP_ID INT,
2643 TOKEN_TYPE VARCHAR(30),
2644 TOKEN_SCOPE VARCHAR(1500) DEFAULT 'default',
2645 INPUTS VARCHAR(1000),
2646 ALLOWED_DOMAINS VARCHAR(256),
2647 VALIDITY_PERIOD BIGINT,
2648 UNIQUE (SUBSCRIBER_ID,APP_ID,TOKEN_TYPE),
2649 FOREIGN KEY(SUBSCRIBER_ID) REFERENCES AM_SUBSCRIBER(SUBSCRIBER_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2650 FOREIGN KEY(APP_ID) REFERENCES AM_APPLICATION(APPLICATION_ID) ON UPDATE CASCADE ON DELETE RESTRICT,
2651 PRIMARY KEY (REG_ID)
2652 )ENGINE INNODB;
2653 CREATE TABLE IF NOT EXISTS AM_API_SCOPES (
2654 API_ID INTEGER NOT NULL,
2655 SCOPE_ID INTEGER NOT NULL,
2656 FOREIGN KEY (API_ID) REFERENCES AM_API (API_ID) ON DELETE CASCADE ON UPDATE CASCADE,
2657 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OAUTH2_SCOPE (SCOPE_ID) ON DELETE CASCADE ON UPDATE CASCADE,
2658 PRIMARY KEY (API_ID, SCOPE_ID)
2659 )ENGINE = INNODB;
2660 CREATE TABLE IF NOT EXISTS AM_API_DEFAULT_VERSION (
2661 DEFAULT_VERSION_ID INT AUTO_INCREMENT,
2662 API_NAME VARCHAR(256) NOT NULL ,
2663 API_PROVIDER VARCHAR(256) NOT NULL ,
2664 DEFAULT_API_VERSION VARCHAR(30) ,
2665 PUBLISHED_DEFAULT_API_VERSION VARCHAR(30) ,
2666 PRIMARY KEY (DEFAULT_VERSION_ID)
2667 )ENGINE = INNODB;
2668 CREATE INDEX IDX_SUB_APP_ID ON AM_SUBSCRIPTION (APPLICATION_ID, SUBSCRIPTION_ID);
2669 CREATE TABLE IF NOT EXISTS AM_ALERT_TYPES (
2670 ALERT_TYPE_ID INTEGER AUTO_INCREMENT,
2671 ALERT_TYPE_NAME VARCHAR(255) NOT NULL ,
2672 STAKE_HOLDER VARCHAR(100) NOT NULL,
2673 PRIMARY KEY (ALERT_TYPE_ID)
2674 )ENGINE = INNODB;
2675 CREATE TABLE IF NOT EXISTS AM_ALERT_TYPES_VALUES (
2676 ALERT_TYPE_ID INTEGER,
2677 USER_NAME VARCHAR(255) NOT NULL ,
2678 STAKE_HOLDER VARCHAR(100) NOT NULL ,
2679 PRIMARY KEY (ALERT_TYPE_ID,USER_NAME,STAKE_HOLDER)
2680 )ENGINE = INNODB;
2681 CREATE TABLE IF NOT EXISTS AM_ALERT_EMAILLIST (
2682 EMAIL_LIST_ID INTEGER AUTO_INCREMENT,
2683 USER_NAME VARCHAR(255) NOT NULL ,
2684 STAKE_HOLDER VARCHAR(100) NOT NULL ,
2685 PRIMARY KEY (EMAIL_LIST_ID,USER_NAME,STAKE_HOLDER)
2686 )ENGINE = INNODB;
2687 CREATE TABLE IF NOT EXISTS AM_ALERT_EMAILLIST_DETAILS (
2688 EMAIL_LIST_ID INTEGER,
2689 EMAIL VARCHAR(255),
2690 PRIMARY KEY (EMAIL_LIST_ID,EMAIL)
2691 )ENGINE = INNODB;
2692 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('AbnormalResponseTime', 'publisher');
2693 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('AbnormalBackendTime', 'publisher');
2694 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('AbnormalRequestsPerMin', 'subscriber');
2695 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('AbnormalRequestPattern', 'subscriber');
2696 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('UnusualIPAccess', 'subscriber');
2697 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('FrequentTierLimitHitting', 'subscriber');
2698 INSERT INTO AM_ALERT_TYPES (ALERT_TYPE_NAME, STAKE_HOLDER) VALUES ('ApiHealthMonitor', 'publisher');
2699 CREATE TABLE IF NOT EXISTS AM_POLICY_SUBSCRIPTION (
2700 POLICY_ID INT(11) NOT NULL AUTO_INCREMENT,
2701 NAME VARCHAR(512) NOT NULL,
2702 DISPLAY_NAME VARCHAR(512) NULL DEFAULT NULL,
2703 TENANT_ID INT(11) NOT NULL,
2704 DESCRIPTION VARCHAR(1024) NULL DEFAULT NULL,
2705 QUOTA_TYPE VARCHAR(25) NOT NULL,
2706 QUOTA INT(11) NOT NULL,
2707 QUOTA_UNIT VARCHAR(10) NULL,
2708 UNIT_TIME INT(11) NOT NULL,
2709 TIME_UNIT VARCHAR(25) NOT NULL,
2710 RATE_LIMIT_COUNT INT(11) NULL DEFAULT NULL,
2711 RATE_LIMIT_TIME_UNIT VARCHAR(25) NULL DEFAULT NULL,
2712 IS_DEPLOYED TINYINT(1) NOT NULL DEFAULT 0,
2713 CUSTOM_ATTRIBUTES BLOB DEFAULT NULL,
2714 STOP_ON_QUOTA_REACH BOOLEAN NOT NULL DEFAULT 0,
2715 BILLING_PLAN VARCHAR(20) NOT NULL,
2716 UUID VARCHAR(256),
2717 PRIMARY KEY (POLICY_ID),
2718 UNIQUE INDEX AM_POLICY_SUBSCRIPTION_NAME_TENANT (NAME, TENANT_ID),
2719 UNIQUE (UUID)
2720 )ENGINE = InnoDB;
2721 CREATE TABLE IF NOT EXISTS AM_POLICY_APPLICATION (
2722 POLICY_ID INT(11) NOT NULL AUTO_INCREMENT,
2723 NAME VARCHAR(512) NOT NULL,
2724 DISPLAY_NAME VARCHAR(512) NULL DEFAULT NULL,
2725 TENANT_ID INT(11) NOT NULL,
2726 DESCRIPTION VARCHAR(1024) NULL DEFAULT NULL,
2727 QUOTA_TYPE VARCHAR(25) NOT NULL,
2728 QUOTA INT(11) NOT NULL,
2729 QUOTA_UNIT VARCHAR(10) NULL DEFAULT NULL,
2730 UNIT_TIME INT(11) NOT NULL,
2731 TIME_UNIT VARCHAR(25) NOT NULL,
2732 IS_DEPLOYED TINYINT(1) NOT NULL DEFAULT 0,
2733 CUSTOM_ATTRIBUTES BLOB DEFAULT NULL,
2734 UUID VARCHAR(256),
2735 PRIMARY KEY (POLICY_ID),
2736 UNIQUE INDEX APP_NAME_TENANT (NAME, TENANT_ID),
2737 UNIQUE (UUID)
2738 )ENGINE = InnoDB;
2739 CREATE TABLE IF NOT EXISTS AM_POLICY_HARD_THROTTLING (
2740 POLICY_ID INT(11) NOT NULL AUTO_INCREMENT,
2741 NAME VARCHAR(512) NOT NULL,
2742 TENANT_ID INT(11) NOT NULL,
2743 DESCRIPTION VARCHAR(1024) NULL DEFAULT NULL,
2744 QUOTA_TYPE VARCHAR(25) NOT NULL,
2745 QUOTA INT(11) NOT NULL,
2746 QUOTA_UNIT VARCHAR(10) NULL DEFAULT NULL,
2747 UNIT_TIME INT(11) NOT NULL,
2748 TIME_UNIT VARCHAR(25) NOT NULL,
2749 IS_DEPLOYED TINYINT(1) NOT NULL DEFAULT 0,
2750 PRIMARY KEY (POLICY_ID),
2751 UNIQUE INDEX POLICY_HARD_NAME_TENANT (NAME, TENANT_ID)
2752 )ENGINE = InnoDB;
2753 CREATE TABLE IF NOT EXISTS AM_API_THROTTLE_POLICY (
2754 POLICY_ID INT(11) NOT NULL AUTO_INCREMENT,
2755 NAME VARCHAR(512) NOT NULL,
2756 DISPLAY_NAME VARCHAR(512) NULL DEFAULT NULL,
2757 TENANT_ID INT(11) NOT NULL,
2758 DESCRIPTION VARCHAR (1024),
2759 DEFAULT_QUOTA_TYPE VARCHAR(25) NOT NULL,
2760 DEFAULT_QUOTA INTEGER NOT NULL,
2761 DEFAULT_QUOTA_UNIT VARCHAR(10) NULL,
2762 DEFAULT_UNIT_TIME INTEGER NOT NULL,
2763 DEFAULT_TIME_UNIT VARCHAR(25) NOT NULL,
2764 APPLICABLE_LEVEL VARCHAR(25) NOT NULL,
2765 IS_DEPLOYED TINYINT(1) NOT NULL DEFAULT 0,
2766 UUID VARCHAR(256),
2767 PRIMARY KEY (POLICY_ID),
2768 UNIQUE INDEX API_NAME_TENANT (NAME, TENANT_ID),
2769 UNIQUE (UUID)
2770 )ENGINE INNODB;
2771 CREATE TABLE IF NOT EXISTS AM_CONDITION_GROUP (
2772 CONDITION_GROUP_ID INTEGER NOT NULL AUTO_INCREMENT,
2773 POLICY_ID INTEGER NOT NULL,
2774 QUOTA_TYPE VARCHAR(25),
2775 QUOTA INTEGER NOT NULL,
2776 QUOTA_UNIT VARCHAR(10) NULL DEFAULT NULL,
2777 UNIT_TIME INTEGER NOT NULL,
2778 TIME_UNIT VARCHAR(25) NOT NULL,
2779 DESCRIPTION VARCHAR (1024) NULL DEFAULT NULL,
2780 PRIMARY KEY (CONDITION_GROUP_ID),
2781 FOREIGN KEY (POLICY_ID) REFERENCES AM_API_THROTTLE_POLICY(POLICY_ID) ON DELETE CASCADE ON UPDATE CASCADE
2782 )ENGINE INNODB;
2783 CREATE TABLE IF NOT EXISTS AM_QUERY_PARAMETER_CONDITION (
2784 QUERY_PARAMETER_ID INTEGER NOT NULL AUTO_INCREMENT,
2785 CONDITION_GROUP_ID INTEGER NOT NULL,
2786 PARAMETER_NAME VARCHAR(255) DEFAULT NULL,
2787 PARAMETER_VALUE VARCHAR(255) DEFAULT NULL,
2788 IS_PARAM_MAPPING BOOLEAN DEFAULT 1,
2789 PRIMARY KEY (QUERY_PARAMETER_ID),
2790 FOREIGN KEY (CONDITION_GROUP_ID) REFERENCES AM_CONDITION_GROUP(CONDITION_GROUP_ID) ON DELETE CASCADE ON UPDATE CASCADE
2791 )ENGINE INNODB;
2792 CREATE TABLE IF NOT EXISTS AM_HEADER_FIELD_CONDITION (
2793 HEADER_FIELD_ID INTEGER NOT NULL AUTO_INCREMENT,
2794 CONDITION_GROUP_ID INTEGER NOT NULL,
2795 HEADER_FIELD_NAME VARCHAR(255) DEFAULT NULL,
2796 HEADER_FIELD_VALUE VARCHAR(255) DEFAULT NULL,
2797 IS_HEADER_FIELD_MAPPING BOOLEAN DEFAULT 1,
2798 PRIMARY KEY (HEADER_FIELD_ID),
2799 FOREIGN KEY (CONDITION_GROUP_ID) REFERENCES AM_CONDITION_GROUP(CONDITION_GROUP_ID) ON DELETE CASCADE ON UPDATE CASCADE
2800 )ENGINE INNODB;
2801 CREATE TABLE IF NOT EXISTS AM_JWT_CLAIM_CONDITION (
2802 JWT_CLAIM_ID INTEGER NOT NULL AUTO_INCREMENT,
2803 CONDITION_GROUP_ID INTEGER NOT NULL,
2804 CLAIM_URI VARCHAR(512) DEFAULT NULL,
2805 CLAIM_ATTRIB VARCHAR(1024) DEFAULT NULL,
2806 IS_CLAIM_MAPPING BOOLEAN DEFAULT 1,
2807 PRIMARY KEY (JWT_CLAIM_ID),
2808 FOREIGN KEY (CONDITION_GROUP_ID) REFERENCES AM_CONDITION_GROUP(CONDITION_GROUP_ID) ON DELETE CASCADE ON UPDATE CASCADE
2809 )ENGINE INNODB;
2810 CREATE TABLE IF NOT EXISTS AM_IP_CONDITION (
2811 AM_IP_CONDITION_ID INT NOT NULL AUTO_INCREMENT,
2812 STARTING_IP VARCHAR(45) NULL,
2813 ENDING_IP VARCHAR(45) NULL,
2814 SPECIFIC_IP VARCHAR(45) NULL,
2815 WITHIN_IP_RANGE BOOLEAN DEFAULT 1,
2816 CONDITION_GROUP_ID INT NULL,
2817 PRIMARY KEY (AM_IP_CONDITION_ID),
2818 INDEX fk_AM_IP_CONDITION_1_idx (CONDITION_GROUP_ID ASC), CONSTRAINT fk_AM_IP_CONDITION_1 FOREIGN KEY (CONDITION_GROUP_ID)
2819 REFERENCES AM_CONDITION_GROUP (CONDITION_GROUP_ID) ON DELETE CASCADE ON UPDATE CASCADE)
2820 ENGINE = InnoDB;
2821 CREATE TABLE IF NOT EXISTS AM_POLICY_GLOBAL (
2822 POLICY_ID INT(11) NOT NULL AUTO_INCREMENT,
2823 NAME VARCHAR(512) NOT NULL,
2824 KEY_TEMPLATE VARCHAR(512) NOT NULL,
2825 TENANT_ID INT(11) NOT NULL,
2826 DESCRIPTION VARCHAR(1024) NULL DEFAULT NULL,
2827 SIDDHI_QUERY BLOB DEFAULT NULL,
2828 IS_DEPLOYED TINYINT(1) NOT NULL DEFAULT 0,
2829 UUID VARCHAR(256),
2830 PRIMARY KEY (POLICY_ID),
2831 UNIQUE (UUID)
2832 )ENGINE INNODB;
2833 CREATE TABLE IF NOT EXISTS AM_THROTTLE_TIER_PERMISSIONS (
2834 THROTTLE_TIER_PERMISSIONS_ID INT NOT NULL AUTO_INCREMENT,
2835 TIER VARCHAR(50) NULL,
2836 PERMISSIONS_TYPE VARCHAR(50) NULL,
2837 ROLES VARCHAR(512) NULL,
2838 TENANT_ID INT(11) NULL,
2839 PRIMARY KEY (THROTTLE_TIER_PERMISSIONS_ID))
2840 ENGINE = InnoDB;
2841 CREATE TABLE `AM_BLOCK_CONDITIONS` (
2842 `CONDITION_ID` int(11) NOT NULL AUTO_INCREMENT,
2843 `TYPE` varchar(45) DEFAULT NULL,
2844 `VALUE` varchar(512) DEFAULT NULL,
2845 `ENABLED` varchar(45) DEFAULT NULL,
2846 `DOMAIN` varchar(45) DEFAULT NULL,
2847 `UUID` VARCHAR(256),
2848 PRIMARY KEY (`CONDITION_ID`),
2849 UNIQUE (`UUID`)
2850 ) ENGINE=InnoDB;
2851 CREATE TABLE IF NOT EXISTS `AM_CERTIFICATE_METADATA` (
2852 `TENANT_ID` INT(11) NOT NULL,
2853 `ALIAS` VARCHAR(45) NOT NULL,
2854 `END_POINT` VARCHAR(100) NOT NULL,
2855 CONSTRAINT PK_ALIAS PRIMARY KEY (`ALIAS`)
2856 ) ENGINE=InnoDB;
2857 CREATE TABLE IF NOT EXISTS AM_APPLICATION_GROUP_MAPPING (
2858 APPLICATION_ID INTEGER NOT NULL,
2859 GROUP_ID VARCHAR(512) NOT NULL,
2860 TENANT VARCHAR(255),
2861 PRIMARY KEY (APPLICATION_ID,GROUP_ID,TENANT),
2862 FOREIGN KEY (APPLICATION_ID) REFERENCES AM_APPLICATION(APPLICATION_ID) ON DELETE CASCADE ON UPDATE CASCADE
2863 ) ENGINE=InnoDB;
2864 CREATE TABLE IF NOT EXISTS AM_USAGE_UPLOADED_FILES (
2865 TENANT_DOMAIN varchar(255) NOT NULL,
2866 FILE_NAME varchar(255) NOT NULL,
2867 FILE_TIMESTAMP TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
2868 FILE_PROCESSED tinyint(1) DEFAULT FALSE,
2869 FILE_CONTENT MEDIUMBLOB DEFAULT NULL,
2870 PRIMARY KEY (TENANT_DOMAIN, FILE_NAME, FILE_TIMESTAMP)
2871 ) ENGINE=InnoDB;
2872 CREATE TABLE IF NOT EXISTS AM_API_LC_PUBLISH_EVENTS (
2873 ID INTEGER(11) NOT NULL AUTO_INCREMENT,
2874 TENANT_DOMAIN VARCHAR(500) NOT NULL,
2875 API_ID VARCHAR(500) NOT NULL,
2876 EVENT_TIME TIMESTAMP NOT NULL,
2877 PRIMARY KEY (ID)
2878 ) ENGINE=InnoDB;
2879 CREATE TABLE IF NOT EXISTS AM_APPLICATION_ATTRIBUTES (
2880 APPLICATION_ID int(11) NOT NULL,
2881 NAME varchar(255) NOT NULL,
2882 VALUE varchar(1024) NOT NULL,
2883 TENANT_ID int(11) NOT NULL,
2884 PRIMARY KEY (APPLICATION_ID,NAME),
2885 FOREIGN KEY (APPLICATION_ID) REFERENCES AM_APPLICATION (APPLICATION_ID) ON DELETE CASCADE ON UPDATE CASCADE
2886 ) ENGINE=InnoDB;
2887 CREATE TABLE IF NOT EXISTS AM_LABELS (
2888 LABEL_ID VARCHAR(50),
2889 NAME VARCHAR(255),
2890 DESCRIPTION VARCHAR(1024),
2891 TENANT_DOMAIN VARCHAR(255),
2892 UNIQUE (NAME,TENANT_DOMAIN),
2893 PRIMARY KEY (LABEL_ID)
2894 ) ENGINE=InnoDB;
2895 CREATE TABLE IF NOT EXISTS AM_LABEL_URLS (
2896 LABEL_ID VARCHAR(50),
2897 ACCESS_URL VARCHAR(255),
2898 PRIMARY KEY (LABEL_ID,ACCESS_URL),
2899 FOREIGN KEY (LABEL_ID) REFERENCES AM_LABELS(LABEL_ID) ON UPDATE CASCADE ON DELETE CASCADE
2900 ) ENGINE=InnoDB;
2901 create index IDX_ITS_LMT on IDN_THRIFT_SESSION (LAST_MODIFIED_TIME);
2902 create index IDX_IOAT_UT on IDN_OAUTH2_ACCESS_TOKEN (USER_TYPE);
2903 create index IDX_AAI_CTX on AM_API (CONTEXT);
2904 create index IDX_AAKM_CK on AM_APPLICATION_KEY_MAPPING (CONSUMER_KEY);
2905 create index IDX_AAUM_AI on AM_API_URL_MAPPING (API_ID);
2906 create index IDX_AAUM_TT on AM_API_URL_MAPPING (THROTTLING_TIER);
2907 create index IDX_AATP_DQT on AM_API_THROTTLE_POLICY (DEFAULT_QUOTA_TYPE);
2908 create index IDX_ACG_QT on AM_CONDITION_GROUP (QUOTA_TYPE);
2909 create index IDX_APS_QT on AM_POLICY_SUBSCRIPTION (QUOTA_TYPE);
2910 create index IDX_AS_AITIAI on AM_SUBSCRIPTION (API_ID,TIER_ID,APPLICATION_ID);
2911 create index IDX_APA_QT on AM_POLICY_APPLICATION (QUOTA_TYPE);
2912 create index IDX_AA_AT_CB on AM_APPLICATION (APPLICATION_TIER,CREATED_BY);
2913kind: ConfigMap
2914metadata:
2915 name: mysql-dbscripts
2916 namespace: wso2
2917---
2918
2919apiVersion: v1
2920kind: Service
2921metadata:
2922 name: wso2apim-with-analytics-rdbms-service
2923 namespace: wso2
2924spec:
2925 type: ClusterIP
2926 selector:
2927 deployment: wso2apim-with-analytics-mysql
2928 ports:
2929 - name: mysql-port
2930 port: 3306
2931 targetPort: 3306
2932 protocol: TCP
2933---
2934
2935apiVersion: v1
2936kind: Service
2937metadata:
2938 name: wso2apim-with-analytics-apim-analytics-service
2939 namespace: wso2
2940spec:
2941 selector:
2942 deployment: wso2apim-with-analytics-apim-analytics
2943 ports:
2944 -
2945 name: 'thrift'
2946 port: 7612
2947 protocol: TCP
2948 -
2949 name: 'thrift-ssl'
2950 port: 7712
2951 protocol: TCP
2952 -
2953 name: 'rest-api-port-1'
2954 protocol: TCP
2955 port: 9444
2956 -
2957 name: 'rest-api-port-2'
2958 protocol: TCP
2959 port: 9091
2960 -
2961 name: 'rest-api-port-3'
2962 protocol: TCP
2963 port: 7071
2964 -
2965 name: 'rest-api-port-4'
2966 protocol: TCP
2967 port: 7444
2968---
2969
2970apiVersion: v1
2971kind: Service
2972metadata:
2973 name: wso2apim-with-analytics-apim-service
2974 namespace: wso2
2975 labels:
2976 deployment: wso2apim-with-analytics-apim
2977spec:
2978 selector:
2979 deployment: wso2apim-with-analytics-apim
2980 type: NodePort
2981 ports:
2982 -
2983 name: pass-through-http
2984 protocol: TCP
2985 port: 8280
2986 -
2987 name: pass-through-https
2988 protocol: TCP
2989 port: 8243
2990 nodePort: 30243
2991 -
2992 name: servlet-http
2993 protocol: TCP
2994 port: 9763
2995 -
2996 name: servlet-https
2997 protocol: TCP
2998 nodePort: 30443
2999 port: 9443
3000---
3001
3002apiVersion: apps/v1
3003kind: Deployment
3004metadata:
3005 name: wso2apim-with-analytics-mysql-deployment
3006 namespace: wso2
3007spec:
3008 replicas: 1
3009 selector:
3010 matchLabels:
3011 deployment: wso2apim-with-analytics-mysql
3012 product: wso2am
3013 template:
3014 metadata:
3015 labels:
3016 deployment: wso2apim-with-analytics-mysql
3017 product: wso2am
3018 spec:
3019 containers:
3020 - name: wso2apim-with-analytics-mysql
3021 image: mysql:5.7
3022 imagePullPolicy: IfNotPresent
3023 securityContext:
3024 runAsUser: 999
3025 env:
3026 - name: MYSQL_ROOT_PASSWORD
3027 value: root
3028 - name: MYSQL_USER
3029 value: wso2carbon
3030 - name: MYSQL_PASSWORD
3031 value: wso2carbon
3032 ports:
3033 - containerPort: 3306
3034 protocol: TCP
3035 volumeMounts:
3036 - name: mysql-dbscripts
3037 mountPath: /docker-entrypoint-initdb.d
3038 args: ['--max-connections', '10000']
3039 volumes:
3040 - name: mysql-dbscripts
3041 configMap:
3042 name: mysql-dbscripts
3043 serviceAccountName: 'wso2svc-account'
3044---
3045
3046apiVersion: apps/v1
3047kind: Deployment
3048metadata:
3049 name: wso2apim-with-analytics-apim-analytics-deployment
3050 namespace: wso2
3051spec:
3052 replicas: 1
3053 minReadySeconds: 30
3054 selector:
3055 matchLabels:
3056 deployment: wso2apim-with-analytics-apim-analytics
3057 product: wso2am
3058 strategy:
3059 rollingUpdate:
3060 maxSurge: 1
3061 maxUnavailable: 0
3062 type: RollingUpdate
3063 template:
3064 metadata:
3065 labels:
3066 deployment: wso2apim-with-analytics-apim-analytics
3067 product: wso2am
3068 spec:
3069 containers:
3070 - name: wso2apim-with-analytics-apim-analytics
3071 image: docker.wso2.com/wso2am-analytics-worker:2.6.0
3072 resources:
3073 limits:
3074 memory: '2Gi'
3075 requests:
3076 memory: '2Gi'
3077 livenessProbe:
3078 exec:
3079 command:
3080 - /bin/sh
3081 - -c
3082 - nc -z localhost 7712
3083 initialDelaySeconds: 10
3084 periodSeconds: 10
3085 readinessProbe:
3086 exec:
3087 command:
3088 - /bin/sh
3089 - -c
3090 - nc -z localhost 7712
3091 initialDelaySeconds: 10
3092 periodSeconds: 10
3093 lifecycle:
3094 preStop:
3095 exec:
3096 command: ['sh', '-c', '/bin/worker.sh stop']
3097 imagePullPolicy: Always
3098 securityContext:
3099 runAsUser: 802
3100 ports:
3101 -
3102 containerPort: 9764
3103 protocol: 'TCP'
3104 -
3105 containerPort: 9444
3106 protocol: 'TCP'
3107 -
3108 containerPort: 7612
3109 protocol: 'TCP'
3110 -
3111 containerPort: 7712
3112 protocol: 'TCP'
3113 -
3114 containerPort: 9091
3115 protocol: 'TCP'
3116 -
3117 containerPort: 7071
3118 protocol: 'TCP'
3119 -
3120 containerPort: 7444
3121 protocol: 'TCP'
3122 volumeMounts:
3123 - name: apim-analytics-conf-worker
3124 mountPath: /home/wso2carbon/wso2-config-volume/conf/worker
3125 initContainers:
3126 - name: init-apim-with-analytics
3127 image: busybox
3128 command: ['sh', '-c', 'echo -e "checking for the availability of MySQL"; while ! nc -z wso2apim-with-analytics-rdbms-service 3306; do sleep 1; printf "-"; done; echo -e " >> MySQL started";']
3129 serviceAccountName: 'wso2svc-account'
3130 imagePullSecrets:
3131 - name: wso2creds
3132 volumes:
3133 - name: apim-analytics-conf-worker
3134 configMap:
3135 name: apim-analytics-conf-worker
3136---
3137
3138apiVersion: apps/v1
3139kind: Deployment
3140metadata:
3141 name: wso2apim-with-analytics-apim
3142 namespace: wso2
3143spec:
3144 replicas: 1
3145 minReadySeconds: 30
3146 selector:
3147 matchLabels:
3148 deployment: wso2apim-with-analytics-apim
3149 product: wso2am
3150 strategy:
3151 rollingUpdate:
3152 maxSurge: 1
3153 maxUnavailable: 0
3154 type: RollingUpdate
3155 template:
3156 metadata:
3157 labels:
3158 deployment: wso2apim-with-analytics-apim
3159 product: wso2am
3160 spec:
3161 containers:
3162 - name: wso2apim-with-analytics-apim-worker
3163 image: docker.wso2.com/wso2am:2.6.0
3164 livenessProbe:
3165 exec:
3166 command:
3167 - /bin/bash
3168 - -c
3169 - nc -z localhost 9443
3170 initialDelaySeconds: 60
3171 periodSeconds: 10
3172 readinessProbe:
3173 exec:
3174 command:
3175 - /bin/bash
3176 - -c
3177 - nc -z localhost 9443
3178 initialDelaySeconds: 60
3179 periodSeconds: 10
3180 imagePullPolicy: Always
3181 ports:
3182 -
3183 containerPort: 8280
3184 protocol: 'TCP'
3185 -
3186 containerPort: 8243
3187 protocol: 'TCP'
3188 -
3189 containerPort: 9763
3190 protocol: 'TCP'
3191 -
3192 containerPort: 9443
3193 protocol: 'TCP'
3194 -
3195 containerPort: 5672
3196 protocol: 'TCP'
3197 -
3198 containerPort: 9711
3199 protocol: 'TCP'
3200 -
3201 containerPort: 9611
3202 protocol: 'TCP'
3203 -
3204 containerPort: 7711
3205 protocol: 'TCP'
3206 -
3207 containerPort: 7611
3208 protocol: 'TCP'
3209 volumeMounts:
3210 - name: apim-conf
3211 mountPath: /home/wso2carbon/wso2-config-volume/repository/conf
3212 - name: apim-conf-datasources
3213 mountPath: /home/wso2carbon/wso2-config-volume/repository/conf/datasources
3214 initContainers:
3215 - name: init-apim
3216 image: busybox
3217 command: ['sh', '-c', 'echo -e "checking for the availability of wso2apim-with-analytics-apim-analytics"; while ! nc -z wso2apim-with-analytics-apim-analytics-service 7712; do sleep 1; printf "-"; done; echo -e " >> wso2is-with-analytics-is-analytics started";']
3218 serviceAccountName: 'wso2svc-account'
3219 imagePullSecrets:
3220 - name: wso2creds
3221 volumes:
3222 - name: apim-conf
3223 configMap:
3224 name: apim-conf
3225 - name: apim-conf-datasources
3226 configMap:
3227 name: apim-conf-datasources
3228---
3229EOF
3230
3231}
3232function validate_ip(){
3233 ip_check=$1
3234 if [[ $ip_check =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
3235 IFS='.'
3236 ip=$ip_check
3237 set -- $ip
3238 if [[ $1 -le 255 ]] && [[ $2 -le 255 ]] && [[ $3 -le 255 ]] && [[ $4 -le 255 ]]; then
3239 IFS=''
3240 NODE_IP=$ip_check
3241 else
3242 IFS=''
3243 echo "Invalid IP. Please try again."
3244 NODE_IP=""
3245 fi
3246 else
3247 echo "Invalid IP. Please try again."
3248 NODE_IP=""
3249 fi
3250}
3251function get_node_ip(){
3252 NODE_IP=$(kubectl get nodes -o jsonpath='{.items[*].status.addresses[?(@.type=="ExternalIP")].address}')
3253
3254 if [[ -z $NODE_IP ]]
3255 then
3256 if [[ $(kubectl config current-context)="minikube" ]]
3257 then
3258 NODE_IP=$(minikube ip)
3259 else
3260 echo "We could not find your cluster node-ip."
3261 while [[ -z "$NODE_IP" ]]
3262 do
3263 read -p "$(echo "Enter one of your cluster Node IPs to provision instant access to server: ")" NODE_IP
3264 if [[ -z "$NODE_IP" ]]
3265 then
3266 echo "cluster node ip cannot be empty"
3267 else
3268 validate_ip $NODE_IP
3269 fi
3270 done
3271 fi
3272 fi
3273 set -- $NODE_IP; NODE_IP=$1
3274}
3275
3276function deploy(){
3277 # checking for required command line tools
3278 if [[ ! $(which kubectl) ]]
3279 then
3280 display_msg "Please install Kubernetes command-line tool (kubectl) before you start with the setup\n"
3281 fi
3282
3283 if [[ ! $(which base64) ]]
3284 then
3285 display_msg "Please install base64 before you start with the setup\n"
3286 fi
3287
3288 echoBold "Checking for an enabled cluster... Your patience is appreciated... "
3289 cluster_isReady=$(kubectl cluster-info) > /dev/null 2>&1 || true
3290
3291 if [[ ! $cluster_isReady == *"KubeDNS"* ]]
3292 then
3293 display_msg "\nPlease enable your cluster before running the setup.\n\nIf you don't have a kubernetes cluster, follow: https://kubernetes.io/docs/setup/\n\n"
3294 fi
3295
3296 echoBold "Done\n"
3297
3298 #displaying wso2 product name
3299 product_name
3300
3301 # get node-ip
3302 get_node_ip
3303
3304 # create and encode username/password pair
3305 auth="${WUM_USERNAME}:${WUM_PASSWORD}"
3306 authb64=`echo -n $auth | base64`
3307
3308 # create authorisation code
3309 authstring='{"auths":{"docker.wso2.com":{"username":"'${WUM_USERNAME}'","password":"'${WUM_PASSWORD}'","email":"'${WUM_USERNAME}'","auth":"'${authb64}'"}}}'
3310
3311 # encode in base64
3312 secdata=`echo -n $authstring | base64`
3313
3314 for i in $secdata; do
3315 str_sec=$str_sec$i
3316 done
3317
3318 # create kubernetes object yaml
3319 create_yaml
3320
3321 # Deploy wso2am
3322 kubectl create -f $k8s_obj_file
3323}
3324
3325arg=$1
3326case $arg in
3327 -d|--deploy)
3328 deploy
3329 ;;
3330 -u|--undeploy)
3331 undeploy
3332 ;;
3333 -h|--help)
3334 usage
3335 ;;
3336 *)
3337 echo "invalid argument"
3338 usage
3339 ;;
3340esac