· 6 years ago · May 14, 2019, 03:02 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
19#IFS='' read -r -d '' deployment<<"EOF"
20
21
22set -e
23
24# bash variables
25k8s_obj_file="deployment.yaml"; NODE_IP=''; str_sec=""
26
27# wso2 subscription variables
28WUMUsername=''; WUMPassword=''
29
30: ${namespace:="wso2"}
31: ${randomPort:=true}; : ${NP_1:=30443};
32
33# testgrid directory
34OUTPUT_DIR=$4; INPUT_DIR=$2; TG_PROP="$INPUT_DIR/infrastructure.properties"
35
36#bash functions
37function usage(){
38 echo "Usage: "
39 echo -e "-d, --deploy Deploy WSO2 Identity Server"
40 echo -e "-u, --undeploy Undeploy WSO2 Identity Server"
41 echo -e "-h, --help Display usage instrusctions"
42}
43function undeploy(){
44 echoBold "Undeploying WSO2 Identity Server ... \n"
45 kubectl delete -f deployment.yaml
46 exit 0
47}
48function echoBold () {
49 echo -en $'\e[1m'"${1}"$'\e[0m'
50}
51
52function st(){
53 cycles=${1}
54 i=0
55 while [[ i -lt $cycles ]]
56 do
57 echoBold "* "
58 let "i=i+1"
59 done
60}
61function sp(){
62 cycles=${1}
63 i=0
64 while [[ i -lt $cycles ]]
65 do
66 echoBold " "
67 let "i=i+1"
68 done
69}
70function product_name(){
71 #wso2is
72 echo -e "\n"
73 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; st 5; sp 2; sp 1; st 3; sp 3; echo ""
74 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 4; st 1; sp 4; sp 2; st 1; sp 4; st 1; echo ""
75 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; sp 4; st 1; sp 4; sp 2; st 1; sp 8; 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; sp 4; st 1; sp 4; sp 2; sp 1; st 3; sp 1; echo ""
77 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; sp 4; st 1; sp 4; sp 2; sp 6; st 1; echo ""
78 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; sp 4; st 1; sp 4; sp 2; st 1; sp 4; st 1; echo ""
79 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 5; sp 2; sp 1; st 3; sp 1; echo -e "\n"
80}
81
82function display_msg(){
83 msg=$@
84 echoBold "${msg}"
85 exit 1
86}
87
88function create_yaml(){
89
90cat > deployment.yaml << "EOF"
91
92apiVersion: v1
93kind: Namespace
94metadata:
95 name: wso2
96spec:
97 finalizers:
98 - kubernetes
99---
100
101apiVersion: v1
102kind: ServiceAccount
103metadata:
104 name: wso2svc-account
105 namespace: $namespace
106secrets:
107 - name: wso2svc-account-token-t7s49
108---
109
110apiVersion: v1
111data:
112EOF
113
114echo " .dockerconfigjson: ${str_sec}" >> deployment.yaml
115
116cat >> deployment.yaml << "EOF"
117kind: Secret
118metadata:
119 name: wso2creds
120 namespace: $namespace
121type: kubernetes.io/dockerconfigjson
122---
123
124apiVersion: v1
125data:
126 carbon.xml: |
127 <?xml version="1.0" encoding="ISO-8859-1"?>
128 <Server xmlns="http://wso2.org/projects/carbon/carbon.xml">
129 <Name>WSO2 Identity Server</Name>
130 <ServerKey>IS</ServerKey>
131 <Version>5.7.0</Version>
132 <HostName>wso2is</HostName>
133 <MgtHostName>wso2is</MgtHostName>
134 <ServerURL>local:/${carbon.context}/services/</ServerURL>
135 <ServerRoles>
136 <Role>IdentityServer</Role>
137 </ServerRoles>
138 <Package>org.wso2.carbon</Package>
139 <WebContextRoot>/</WebContextRoot>
140 <ItemsPerPage>15</ItemsPerPage>
141 <Ports>
142 <Offset>0</Offset>
143 <JMX>
144 <RMIRegistryPort>9999</RMIRegistryPort>
145 <RMIServerPort>11111</RMIServerPort>
146 </JMX>
147 <EmbeddedLDAP>
148 <LDAPServerPort>10389</LDAPServerPort>
149 <KDCServerPort>8000</KDCServerPort>
150 </EmbeddedLDAP>
151 <ThriftEntitlementReceivePort>10500</ThriftEntitlementReceivePort>
152 </Ports>
153 <JNDI>
154 <DefaultInitialContextFactory>org.wso2.carbon.tomcat.jndi.CarbonJavaURLContextFactory</DefaultInitialContextFactory>
155 <Restrictions>
156 <AllTenants>
157 <UrlContexts>
158 <UrlContext>
159 <Scheme>java</Scheme>
160 </UrlContext>
161 </UrlContexts>
162 </AllTenants>
163 </Restrictions>
164 </JNDI>
165 <IsCloudDeployment>false</IsCloudDeployment>
166 <EnableMetering>false</EnableMetering>
167 <MaxThreadExecutionTime>600</MaxThreadExecutionTime>
168 <GhostDeployment>
169 <Enabled>false</Enabled>
170 </GhostDeployment>
171 <Tenant>
172 <LoadingPolicy>
173 <LazyLoading>
174 <IdleTime>30</IdleTime>
175 </LazyLoading>
176 </LoadingPolicy>
177 </Tenant>
178 <Cache>
179 <DefaultCacheTimeout>15</DefaultCacheTimeout>
180 <ForceLocalCache>false</ForceLocalCache>
181 </Cache>
182 <Axis2Config>
183 <RepositoryLocation>${carbon.home}/repository/deployment/server/</RepositoryLocation>
184 <DeploymentUpdateInterval>15</DeploymentUpdateInterval>
185 <ConfigurationFile>${carbon.home}/repository/conf/axis2/axis2.xml</ConfigurationFile>
186 <ServiceGroupContextIdleTime>30000</ServiceGroupContextIdleTime>
187 <clientAxis2XmlLocation>${carbon.home}/repository/conf/axis2/axis2_client.xml</clientAxis2XmlLocation>
188 <HideAdminServiceWSDLs>true</HideAdminServiceWSDLs>
189 </Axis2Config>
190 <ServiceUserRoles>
191 <Role>
192 <Name>admin</Name>
193 <Description>Default Administrator Role</Description>
194 </Role>
195 <Role>
196 <Name>user</Name>
197 <Description>Default User Role</Description>
198 </Role>
199 </ServiceUserRoles>
200 <CryptoService>
201 <Enabled>true</Enabled>
202 <InternalCryptoProviderClassName>org.wso2.carbon.crypto.provider.KeyStoreBasedInternalCryptoProvider</InternalCryptoProviderClassName>
203 <ExternalCryptoProviderClassName>org.wso2.carbon.core.encryption.KeyStoreBasedExternalCryptoProvider</ExternalCryptoProviderClassName>
204 <KeyResolvers>
205 <KeyResolver className="org.wso2.carbon.crypto.defaultProvider.resolver.ContextIndependentKeyResolver" priority="-1"/>
206 </KeyResolvers>
207 </CryptoService>
208 <Security>
209 <KeyStore>
210 <Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
211 <Type>JKS</Type>
212 <Password>wso2carbon</Password>
213 <KeyAlias>wso2carbon</KeyAlias>
214 <KeyPassword>wso2carbon</KeyPassword>
215 </KeyStore>
216 <InternalKeyStore>
217 <Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
218 <Type>JKS</Type>
219 <Password>wso2carbon</Password>
220 <KeyAlias>wso2carbon</KeyAlias>
221 <KeyPassword>wso2carbon</KeyPassword>
222 </InternalKeyStore>
223 <TrustStore>
224 <Location>${carbon.home}/repository/resources/security/client-truststore.jks</Location>
225 <Type>JKS</Type>
226 <Password>wso2carbon</Password>
227 </TrustStore>
228 <NetworkAuthenticatorConfig>
229 </NetworkAuthenticatorConfig>
230 <TomcatRealm>UserManager</TomcatRealm>
231 <DisableTokenStore>false</DisableTokenStore>
232 <STSCallBackHandlerName>org.wso2.carbon.identity.provider.AttributeCallbackHandler</STSCallBackHandlerName>
233 <TokenStoreClassName>org.wso2.carbon.identity.sts.store.DBTokenStore</TokenStoreClassName>
234 <XSSPreventionConfig>
235 <Enabled>true</Enabled>
236 <Rule>allow</Rule>
237 <Patterns>
238 </Patterns>
239 </XSSPreventionConfig>
240 </Security>
241 <HideMenuItemIds>
242 <HideMenuItemId>claim_mgt_menu</HideMenuItemId>
243 <HideMenuItemId>identity_mgt_emailtemplate_menu</HideMenuItemId>
244 <HideMenuItemId>identity_security_questions_menu</HideMenuItemId>
245 </HideMenuItemIds>
246 <WorkDirectory>${carbon.home}/tmp/work</WorkDirectory>
247 <HouseKeeping>
248 <AutoStart>true</AutoStart>
249 <Interval>10</Interval>
250 <MaxTempFileLifetime>30</MaxTempFileLifetime>
251 </HouseKeeping>
252 <FileUploadConfig>
253 <TotalFileSizeLimit>100</TotalFileSizeLimit>
254 <Mapping>
255 <Actions>
256 <Action>keystore</Action>
257 <Action>certificate</Action>
258 <Action>*</Action>
259 </Actions>
260 <Class>org.wso2.carbon.ui.transports.fileupload.AnyFileUploadExecutor</Class>
261 </Mapping>
262 <Mapping>
263 <Actions>
264 <Action>jarZip</Action>
265 </Actions>
266 <Class>org.wso2.carbon.ui.transports.fileupload.JarZipUploadExecutor</Class>
267 </Mapping>
268 <Mapping>
269 <Actions>
270 <Action>dbs</Action>
271 </Actions>
272 <Class>org.wso2.carbon.ui.transports.fileupload.DBSFileUploadExecutor</Class>
273 </Mapping>
274 <Mapping>
275 <Actions>
276 <Action>tools</Action>
277 </Actions>
278 <Class>org.wso2.carbon.ui.transports.fileupload.ToolsFileUploadExecutor</Class>
279 </Mapping>
280 <Mapping>
281 <Actions>
282 <Action>toolsAny</Action>
283 </Actions>
284 <Class>org.wso2.carbon.ui.transports.fileupload.ToolsAnyFileUploadExecutor</Class>
285 </Mapping>
286 </FileUploadConfig>
287 <HttpGetRequestProcessors>
288 <Processor>
289 <Item>info</Item>
290 <Class>org.wso2.carbon.core.transports.util.InfoProcessor</Class>
291 </Processor>
292 <Processor>
293 <Item>wsdl</Item>
294 <Class>org.wso2.carbon.core.transports.util.Wsdl11Processor</Class>
295 </Processor>
296 <Processor>
297 <Item>wsdl2</Item>
298 <Class>org.wso2.carbon.core.transports.util.Wsdl20Processor</Class>
299 </Processor>
300 <Processor>
301 <Item>xsd</Item>
302 <Class>org.wso2.carbon.core.transports.util.XsdProcessor</Class>
303 </Processor>
304 </HttpGetRequestProcessors>
305 <DeploymentSynchronizer>
306 <Enabled>false</Enabled>
307 <AutoCommit>false</AutoCommit>
308 <AutoCheckout>true</AutoCheckout>
309 <RepositoryType>svn</RepositoryType>
310 <SvnUrl>http://svnrepo.example.com/repos/</SvnUrl>
311 <SvnUser>username</SvnUser>
312 <SvnPassword>password</SvnPassword>
313 <SvnUrlAppendTenantId>true</SvnUrlAppendTenantId>
314 </DeploymentSynchronizer>
315 <ServerInitializers>
316 </ServerInitializers>
317 <RequireCarbonServlet>${require.carbon.servlet}</RequireCarbonServlet>
318 <StatisticsReporterDisabled>true</StatisticsReporterDisabled>
319 <FeatureRepository>
320 <RepositoryName>default repository</RepositoryName>
321 <RepositoryURL>http://product-dist.wso2.com/p2/carbon/releases/wilkes/</RepositoryURL>
322 </FeatureRepository>
323 <APIManagement>
324 <Enabled>true</Enabled>
325 <LoadAPIContextsInServerStartup>true</LoadAPIContextsInServerStartup>
326 </APIManagement>
327 </Server>
328kind: ConfigMap
329metadata:
330 name: identity-server-conf
331 namespace: $namespace
332---
333
334apiVersion: v1
335data:
336 bps-datasources.xml: |
337 <datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration">
338 <providers>
339 <provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
340 </providers>
341 <datasources>
342 <datasource>
343 <name>BPS_DS</name>
344 <description></description>
345 <jndiConfig>
346 <name>bpsds</name>
347 </jndiConfig>
348 <definition type="RDBMS">
349 <configuration>
350 <url>jdbc:h2:./repository/database/WSO2IS_BPS_DB?autoReconnect=true&useSSL=false</url>
351 <username>wso2carbon</username>
352 <password>wso2carbon</password>
353 <driverClassName>org.h2.Driver</driverClassName>
354 <maxActive>100</maxActive>
355 <maxWait>10000</maxWait>
356 <maxIdle>20</maxIdle>
357 <testOnBorrow>true</testOnBorrow>
358 <validationQuery>SELECT 1</validationQuery>
359 <validationInterval>30000</validationInterval>
360 <useDataSourceFactory>false</useDataSourceFactory>
361 <defaultAutoCommit>true</defaultAutoCommit>
362 </configuration>
363 </definition>
364 </datasource>
365 </datasources>
366 </datasources-configuration>
367 master-datasources.xml: |
368 <datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration">
369 <providers>
370 <provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
371 </providers>
372 <datasources>
373 <datasource>
374 <name>WSO2_CARBON_DB</name>
375 <description>The datasource used for registry and user manager</description>
376 <jndiConfig>
377 <name>jdbc/WSO2CarbonDB</name>
378 </jndiConfig>
379 <definition type="RDBMS">
380 <configuration>
381 <url>jdbc:h2:./repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000</url>
382 <username>wso2carbon</username>
383 <password>wso2carbon</password>
384 <driverClassName>org.h2.Driver</driverClassName>
385 <maxActive>50</maxActive>
386 <maxWait>60000</maxWait>
387 <testOnBorrow>true</testOnBorrow>
388 <validationQuery>SELECT 1</validationQuery>
389 <validationInterval>30000</validationInterval>
390 <defaultAutoCommit>false</defaultAutoCommit>
391 </configuration>
392 </definition>
393 </datasource>
394 <datasource>
395 <name>WSO2_USER_DB</name>
396 <description>The data source used for user management and user store</description>
397 <jndiConfig>
398 <name>jdbc/WSO2UserDS</name>
399 </jndiConfig>
400 <definition type="RDBMS">
401 <configuration>
402 <url>jdbc:mysql://wso2is-rdbms-service:3306/WSO2IS_USER_DB?autoReconnect=true&useSSL=false</url>
403 <username>wso2carbon</username>
404 <password>wso2carbon</password>
405 <driverClassName>com.mysql.jdbc.Driver</driverClassName>
406 <maxActive>80</maxActive>
407 <maxWait>60000</maxWait>
408 <minIdle>5</minIdle>
409 <testOnBorrow>true</testOnBorrow>
410 <validationQuery>SELECT 1</validationQuery>
411 <validationInterval>30000</validationInterval>
412 <defaultAutoCommit>false</defaultAutoCommit>
413 </configuration>
414 </definition>
415 </datasource>
416 <datasource>
417 <name>WSO2_CONFIG_REG_DB</name>
418 <description>The data source used for config registry</description>
419 <jndiConfig>
420 <name>jdbc/WSO2ConfigDS</name>
421 </jndiConfig>
422 <definition type="RDBMS">
423 <configuration>
424 <url>jdbc:h2:./repository/database/WSO2IS_REG_DB?autoReconnect=true&useSSL=false</url>
425 <username>wso2carbon</username>
426 <password>wso2carbon</password>
427 <driverClassName>org.h2.Driver</driverClassName>
428 <maxActive>50</maxActive>
429 <maxWait>60000</maxWait>
430 <testOnBorrow>true</testOnBorrow>
431 <validationQuery>SELECT 1</validationQuery>
432 <validationInterval>30000</validationInterval>
433 </configuration>
434 </definition>
435 </datasource>
436 <datasource>
437 <name>WSO2_IDENTITY_DB</name>
438 <description>The data source used for identity</description>
439 <jndiConfig>
440 <name>jdbc/WSO2IdentityDS</name>
441 </jndiConfig>
442 <definition type="RDBMS">
443 <configuration>
444 <url>jdbc:mysql://wso2is-rdbms-service:3306/WSO2IS_IDENTITY_DB?autoReconnect=true&useSSL=false</url>
445 <username>wso2carbon</username>
446 <password>wso2carbon</password>
447 <driverClassName>com.mysql.jdbc.Driver</driverClassName>
448 <maxActive>80</maxActive>
449 <maxWait>60000</maxWait>
450 <minIdle>5</minIdle>
451 <testOnBorrow>true</testOnBorrow>
452 <validationQuery>SELECT 1</validationQuery>
453 <validationInterval>30000</validationInterval>
454 <defaultAutoCommit>false</defaultAutoCommit>
455 </configuration>
456 </definition>
457 </datasource>
458 <datasource>
459 <name>WSO2_CONSENT_DB</name>
460 <description>The data source used for consent management</description>
461 <jndiConfig>
462 <name>jdbc/WSO2ConsentDS</name>
463 </jndiConfig>
464 <definition type="RDBMS">
465 <configuration>
466 <url>jdbc:h2:./repository/database/WSO2IS_CONSENT_DB?autoReconnect=true&useSSL=false</url>
467 <username>wso2carbon</username>
468 <password>wso2carbon</password>
469 <driverClassName>org.h2.Driver</driverClassName>
470 <maxActive>80</maxActive>
471 <maxWait>60000</maxWait>
472 <minIdle>5</minIdle>
473 <testOnBorrow>true</testOnBorrow>
474 <validationQuery>SELECT 1</validationQuery>
475 <validationInterval>30000</validationInterval>
476 <defaultAutoCommit>false</defaultAutoCommit>
477 </configuration>
478 </definition>
479 </datasource>
480 </datasources>
481 </datasources-configuration>
482kind: ConfigMap
483metadata:
484 name: identity-server-conf-datasources
485 namespace: $namespace
486---
487
488apiVersion: v1
489data:
490 init.sql: |
491 DROP DATABASE IF EXISTS WSO2IS_USER_DB;
492 DROP DATABASE IF EXISTS WSO2IS_IDENTITY_DB;
493 DROP DATABASE IF EXISTS IS_ANALYTICS_DB;
494 CREATE DATABASE WSO2IS_USER_DB;
495 CREATE DATABASE WSO2IS_IDENTITY_DB;
496 CREATE DATABASE IS_ANALYTICS_DB;
497 CREATE USER IF NOT EXISTS 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
498 GRANT ALL ON WSO2IS_USER_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
499 GRANT ALL ON WSO2IS_IDENTITY_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
500 GRANT ALL ON IS_ANALYTICS_DB.* TO 'wso2carbon'@'%' IDENTIFIED BY 'wso2carbon';
501 USE WSO2IS_USER_DB;
502 CREATE TABLE UM_TENANT (
503 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
504 UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
505 UM_EMAIL VARCHAR(255),
506 UM_ACTIVE BOOLEAN DEFAULT FALSE,
507 UM_CREATED_DATE TIMESTAMP NOT NULL,
508 UM_USER_CONFIG LONGBLOB,
509 PRIMARY KEY (UM_ID),
510 UNIQUE(UM_DOMAIN_NAME)
511 )ENGINE INNODB;
512 CREATE TABLE UM_DOMAIN(
513 UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
514 UM_DOMAIN_NAME VARCHAR(255),
515 UM_TENANT_ID INTEGER DEFAULT 0,
516 PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
517 )ENGINE INNODB;
518 CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
519 ON UM_TENANT (UM_DOMAIN_NAME);
520 CREATE TABLE UM_USER (
521 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
522 UM_USER_NAME VARCHAR(255) NOT NULL,
523 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
524 UM_SALT_VALUE VARCHAR(31),
525 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
526 UM_CHANGED_TIME TIMESTAMP NOT NULL,
527 UM_TENANT_ID INTEGER DEFAULT 0,
528 PRIMARY KEY (UM_ID, UM_TENANT_ID),
529 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
530 )ENGINE INNODB;
531 CREATE TABLE UM_SYSTEM_USER (
532 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
533 UM_USER_NAME VARCHAR(255) NOT NULL,
534 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
535 UM_SALT_VALUE VARCHAR(31),
536 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
537 UM_CHANGED_TIME TIMESTAMP NOT NULL,
538 UM_TENANT_ID INTEGER DEFAULT 0,
539 PRIMARY KEY (UM_ID, UM_TENANT_ID),
540 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
541 )ENGINE INNODB;
542 CREATE TABLE UM_ROLE (
543 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
544 UM_ROLE_NAME VARCHAR(255) NOT NULL,
545 UM_TENANT_ID INTEGER DEFAULT 0,
546 UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
547 PRIMARY KEY (UM_ID, UM_TENANT_ID),
548 UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
549 )ENGINE INNODB;
550 CREATE TABLE UM_MODULE(
551 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
552 UM_MODULE_NAME VARCHAR(100),
553 UNIQUE(UM_MODULE_NAME),
554 PRIMARY KEY(UM_ID)
555 )ENGINE INNODB;
556 CREATE TABLE UM_MODULE_ACTIONS(
557 UM_ACTION VARCHAR(255) NOT NULL,
558 UM_MODULE_ID INTEGER NOT NULL,
559 PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
560 FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
561 )ENGINE INNODB;
562 CREATE TABLE UM_PERMISSION (
563 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
564 UM_RESOURCE_ID VARCHAR(255) NOT NULL,
565 UM_ACTION VARCHAR(255) NOT NULL,
566 UM_TENANT_ID INTEGER DEFAULT 0,
567 UM_MODULE_ID INTEGER DEFAULT 0,
568 UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
569 PRIMARY KEY (UM_ID, UM_TENANT_ID)
570 )ENGINE INNODB;
571 CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
572 CREATE TABLE UM_ROLE_PERMISSION (
573 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
574 UM_PERMISSION_ID INTEGER NOT NULL,
575 UM_ROLE_NAME VARCHAR(255) NOT NULL,
576 UM_IS_ALLOWED SMALLINT NOT NULL,
577 UM_TENANT_ID INTEGER DEFAULT 0,
578 UM_DOMAIN_ID INTEGER,
579 UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
580 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
581 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
582 PRIMARY KEY (UM_ID, UM_TENANT_ID)
583 )ENGINE INNODB;
584 CREATE TABLE UM_USER_PERMISSION (
585 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
586 UM_PERMISSION_ID INTEGER NOT NULL,
587 UM_USER_NAME VARCHAR(255) NOT NULL,
588 UM_IS_ALLOWED SMALLINT NOT NULL,
589 UM_TENANT_ID INTEGER DEFAULT 0,
590 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
591 PRIMARY KEY (UM_ID, UM_TENANT_ID)
592 )ENGINE INNODB;
593 CREATE TABLE UM_USER_ROLE (
594 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
595 UM_ROLE_ID INTEGER NOT NULL,
596 UM_USER_ID INTEGER NOT NULL,
597 UM_TENANT_ID INTEGER DEFAULT 0,
598 UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
599 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
600 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
601 PRIMARY KEY (UM_ID, UM_TENANT_ID)
602 )ENGINE INNODB;
603 CREATE TABLE UM_SHARED_USER_ROLE(
604 UM_ROLE_ID INTEGER NOT NULL,
605 UM_USER_ID INTEGER NOT NULL,
606 UM_USER_TENANT_ID INTEGER NOT NULL,
607 UM_ROLE_TENANT_ID INTEGER NOT NULL,
608 UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
609 FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
610 FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
611 )ENGINE INNODB;
612 CREATE TABLE UM_ACCOUNT_MAPPING(
613 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
614 UM_USER_NAME VARCHAR(255) NOT NULL,
615 UM_TENANT_ID INTEGER NOT NULL,
616 UM_USER_STORE_DOMAIN VARCHAR(100),
617 UM_ACC_LINK_ID INTEGER NOT NULL,
618 UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
619 FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
620 PRIMARY KEY (UM_ID)
621 )ENGINE INNODB;
622 CREATE TABLE UM_USER_ATTRIBUTE (
623 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
624 UM_ATTR_NAME VARCHAR(255) NOT NULL,
625 UM_ATTR_VALUE VARCHAR(1024),
626 UM_PROFILE_ID VARCHAR(255),
627 UM_USER_ID INTEGER,
628 UM_TENANT_ID INTEGER DEFAULT 0,
629 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
630 PRIMARY KEY (UM_ID, UM_TENANT_ID)
631 )ENGINE INNODB;
632 CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
633 CREATE TABLE UM_DIALECT(
634 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
635 UM_DIALECT_URI VARCHAR(255) NOT NULL,
636 UM_TENANT_ID INTEGER DEFAULT 0,
637 UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
638 PRIMARY KEY (UM_ID, UM_TENANT_ID)
639 )ENGINE INNODB;
640 CREATE TABLE UM_CLAIM(
641 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
642 UM_DIALECT_ID INTEGER NOT NULL,
643 UM_CLAIM_URI VARCHAR(255) NOT NULL,
644 UM_DISPLAY_TAG VARCHAR(255),
645 UM_DESCRIPTION VARCHAR(255),
646 UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
647 UM_MAPPED_ATTRIBUTE VARCHAR(255),
648 UM_REG_EX VARCHAR(255),
649 UM_SUPPORTED SMALLINT,
650 UM_REQUIRED SMALLINT,
651 UM_DISPLAY_ORDER INTEGER,
652 UM_CHECKED_ATTRIBUTE SMALLINT,
653 UM_READ_ONLY SMALLINT,
654 UM_TENANT_ID INTEGER DEFAULT 0,
655 UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
656 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
657 PRIMARY KEY (UM_ID, UM_TENANT_ID)
658 )ENGINE INNODB;
659 CREATE TABLE UM_PROFILE_CONFIG(
660 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
661 UM_DIALECT_ID INTEGER NOT NULL,
662 UM_PROFILE_NAME VARCHAR(255),
663 UM_TENANT_ID INTEGER DEFAULT 0,
664 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
665 PRIMARY KEY (UM_ID, UM_TENANT_ID)
666 )ENGINE INNODB;
667 CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
668 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
669 UM_PROFILE_ID INTEGER,
670 UM_CLAIM_ID INTEGER,
671 UM_BEHAVIOUR SMALLINT,
672 UM_TENANT_ID INTEGER DEFAULT 0,
673 FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
674 FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
675 PRIMARY KEY(UM_ID, UM_TENANT_ID)
676 )ENGINE INNODB;
677 CREATE TABLE UM_HYBRID_ROLE(
678 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
679 UM_ROLE_NAME VARCHAR(255),
680 UM_TENANT_ID INTEGER DEFAULT 0,
681 PRIMARY KEY (UM_ID, UM_TENANT_ID)
682 )ENGINE INNODB;
683 CREATE TABLE UM_HYBRID_USER_ROLE(
684 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
685 UM_USER_NAME VARCHAR(255),
686 UM_ROLE_ID INTEGER NOT NULL,
687 UM_TENANT_ID INTEGER DEFAULT 0,
688 UM_DOMAIN_ID INTEGER,
689 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
690 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
691 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
692 PRIMARY KEY (UM_ID, UM_TENANT_ID)
693 )ENGINE INNODB;
694 CREATE TABLE UM_SYSTEM_ROLE(
695 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
696 UM_ROLE_NAME VARCHAR(255),
697 UM_TENANT_ID INTEGER DEFAULT 0,
698 PRIMARY KEY (UM_ID, UM_TENANT_ID)
699 )ENGINE INNODB;
700 CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
701 CREATE TABLE UM_SYSTEM_USER_ROLE(
702 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
703 UM_USER_NAME VARCHAR(255),
704 UM_ROLE_ID INTEGER NOT NULL,
705 UM_TENANT_ID INTEGER DEFAULT 0,
706 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
707 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
708 PRIMARY KEY (UM_ID, UM_TENANT_ID)
709 )ENGINE INNODB;
710 CREATE TABLE UM_HYBRID_REMEMBER_ME(
711 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
712 UM_USER_NAME VARCHAR(255) NOT NULL,
713 UM_COOKIE_VALUE VARCHAR(1024),
714 UM_CREATED_TIME TIMESTAMP,
715 UM_TENANT_ID INTEGER DEFAULT 0,
716 PRIMARY KEY (UM_ID, UM_TENANT_ID)
717 )ENGINE INNODB;
718 USE WSO2IS_IDENTITY_DB;
719 CREATE TABLE UM_TENANT (
720 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
721 UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
722 UM_EMAIL VARCHAR(255),
723 UM_ACTIVE BOOLEAN DEFAULT FALSE,
724 UM_CREATED_DATE TIMESTAMP NOT NULL,
725 UM_USER_CONFIG LONGBLOB,
726 PRIMARY KEY (UM_ID),
727 UNIQUE(UM_DOMAIN_NAME)
728 )ENGINE INNODB;
729 CREATE TABLE UM_DOMAIN(
730 UM_DOMAIN_ID INTEGER NOT NULL AUTO_INCREMENT,
731 UM_DOMAIN_NAME VARCHAR(255),
732 UM_TENANT_ID INTEGER DEFAULT 0,
733 PRIMARY KEY (UM_DOMAIN_ID, UM_TENANT_ID)
734 )ENGINE INNODB;
735 CREATE UNIQUE INDEX INDEX_UM_TENANT_UM_DOMAIN_NAME
736 ON UM_TENANT (UM_DOMAIN_NAME);
737 CREATE TABLE UM_USER (
738 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
739 UM_USER_NAME VARCHAR(255) NOT NULL,
740 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
741 UM_SALT_VALUE VARCHAR(31),
742 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
743 UM_CHANGED_TIME TIMESTAMP NOT NULL,
744 UM_TENANT_ID INTEGER DEFAULT 0,
745 PRIMARY KEY (UM_ID, UM_TENANT_ID),
746 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
747 )ENGINE INNODB;
748 CREATE TABLE UM_SYSTEM_USER (
749 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
750 UM_USER_NAME VARCHAR(255) NOT NULL,
751 UM_USER_PASSWORD VARCHAR(255) NOT NULL,
752 UM_SALT_VALUE VARCHAR(31),
753 UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
754 UM_CHANGED_TIME TIMESTAMP NOT NULL,
755 UM_TENANT_ID INTEGER DEFAULT 0,
756 PRIMARY KEY (UM_ID, UM_TENANT_ID),
757 UNIQUE(UM_USER_NAME, UM_TENANT_ID)
758 )ENGINE INNODB;
759 CREATE TABLE UM_ROLE (
760 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
761 UM_ROLE_NAME VARCHAR(255) NOT NULL,
762 UM_TENANT_ID INTEGER DEFAULT 0,
763 UM_SHARED_ROLE BOOLEAN DEFAULT FALSE,
764 PRIMARY KEY (UM_ID, UM_TENANT_ID),
765 UNIQUE(UM_ROLE_NAME, UM_TENANT_ID)
766 )ENGINE INNODB;
767 CREATE TABLE UM_MODULE(
768 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
769 UM_MODULE_NAME VARCHAR(100),
770 UNIQUE(UM_MODULE_NAME),
771 PRIMARY KEY(UM_ID)
772 )ENGINE INNODB;
773 CREATE TABLE UM_MODULE_ACTIONS(
774 UM_ACTION VARCHAR(255) NOT NULL,
775 UM_MODULE_ID INTEGER NOT NULL,
776 PRIMARY KEY(UM_ACTION, UM_MODULE_ID),
777 FOREIGN KEY (UM_MODULE_ID) REFERENCES UM_MODULE(UM_ID) ON DELETE CASCADE
778 )ENGINE INNODB;
779 CREATE TABLE UM_PERMISSION (
780 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
781 UM_RESOURCE_ID VARCHAR(255) NOT NULL,
782 UM_ACTION VARCHAR(255) NOT NULL,
783 UM_TENANT_ID INTEGER DEFAULT 0,
784 UM_MODULE_ID INTEGER DEFAULT 0,
785 UNIQUE(UM_RESOURCE_ID,UM_ACTION, UM_TENANT_ID),
786 PRIMARY KEY (UM_ID, UM_TENANT_ID)
787 )ENGINE INNODB;
788 CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID);
789 CREATE TABLE UM_ROLE_PERMISSION (
790 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
791 UM_PERMISSION_ID INTEGER NOT NULL,
792 UM_ROLE_NAME VARCHAR(255) NOT NULL,
793 UM_IS_ALLOWED SMALLINT NOT NULL,
794 UM_TENANT_ID INTEGER DEFAULT 0,
795 UM_DOMAIN_ID INTEGER,
796 UNIQUE (UM_PERMISSION_ID, UM_ROLE_NAME, UM_TENANT_ID, UM_DOMAIN_ID),
797 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
798 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
799 PRIMARY KEY (UM_ID, UM_TENANT_ID)
800 )ENGINE INNODB;
801 CREATE TABLE UM_USER_PERMISSION (
802 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
803 UM_PERMISSION_ID INTEGER NOT NULL,
804 UM_USER_NAME VARCHAR(255) NOT NULL,
805 UM_IS_ALLOWED SMALLINT NOT NULL,
806 UM_TENANT_ID INTEGER DEFAULT 0,
807 FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
808 PRIMARY KEY (UM_ID, UM_TENANT_ID)
809 )ENGINE INNODB;
810 CREATE TABLE UM_USER_ROLE (
811 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
812 UM_ROLE_ID INTEGER NOT NULL,
813 UM_USER_ID INTEGER NOT NULL,
814 UM_TENANT_ID INTEGER DEFAULT 0,
815 UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID),
816 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID),
817 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
818 PRIMARY KEY (UM_ID, UM_TENANT_ID)
819 )ENGINE INNODB;
820 CREATE TABLE UM_SHARED_USER_ROLE(
821 UM_ROLE_ID INTEGER NOT NULL,
822 UM_USER_ID INTEGER NOT NULL,
823 UM_USER_TENANT_ID INTEGER NOT NULL,
824 UM_ROLE_TENANT_ID INTEGER NOT NULL,
825 UNIQUE(UM_USER_ID,UM_ROLE_ID,UM_USER_TENANT_ID, UM_ROLE_TENANT_ID),
826 FOREIGN KEY(UM_ROLE_ID,UM_ROLE_TENANT_ID) REFERENCES UM_ROLE(UM_ID,UM_TENANT_ID) ON DELETE CASCADE,
827 FOREIGN KEY(UM_USER_ID,UM_USER_TENANT_ID) REFERENCES UM_USER(UM_ID,UM_TENANT_ID) ON DELETE CASCADE
828 )ENGINE INNODB;
829 CREATE TABLE UM_ACCOUNT_MAPPING(
830 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
831 UM_USER_NAME VARCHAR(255) NOT NULL,
832 UM_TENANT_ID INTEGER NOT NULL,
833 UM_USER_STORE_DOMAIN VARCHAR(100),
834 UM_ACC_LINK_ID INTEGER NOT NULL,
835 UNIQUE(UM_USER_NAME, UM_TENANT_ID, UM_USER_STORE_DOMAIN, UM_ACC_LINK_ID),
836 FOREIGN KEY (UM_TENANT_ID) REFERENCES UM_TENANT(UM_ID) ON DELETE CASCADE,
837 PRIMARY KEY (UM_ID)
838 )ENGINE INNODB;
839 CREATE TABLE UM_USER_ATTRIBUTE (
840 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
841 UM_ATTR_NAME VARCHAR(255) NOT NULL,
842 UM_ATTR_VALUE VARCHAR(1024),
843 UM_PROFILE_ID VARCHAR(255),
844 UM_USER_ID INTEGER,
845 UM_TENANT_ID INTEGER DEFAULT 0,
846 FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID),
847 PRIMARY KEY (UM_ID, UM_TENANT_ID)
848 )ENGINE INNODB;
849 CREATE INDEX UM_USER_ID_INDEX ON UM_USER_ATTRIBUTE(UM_USER_ID);
850 CREATE TABLE UM_DIALECT(
851 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
852 UM_DIALECT_URI VARCHAR(255) NOT NULL,
853 UM_TENANT_ID INTEGER DEFAULT 0,
854 UNIQUE(UM_DIALECT_URI, UM_TENANT_ID),
855 PRIMARY KEY (UM_ID, UM_TENANT_ID)
856 )ENGINE INNODB;
857 CREATE TABLE UM_CLAIM(
858 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
859 UM_DIALECT_ID INTEGER NOT NULL,
860 UM_CLAIM_URI VARCHAR(255) NOT NULL,
861 UM_DISPLAY_TAG VARCHAR(255),
862 UM_DESCRIPTION VARCHAR(255),
863 UM_MAPPED_ATTRIBUTE_DOMAIN VARCHAR(255),
864 UM_MAPPED_ATTRIBUTE VARCHAR(255),
865 UM_REG_EX VARCHAR(255),
866 UM_SUPPORTED SMALLINT,
867 UM_REQUIRED SMALLINT,
868 UM_DISPLAY_ORDER INTEGER,
869 UM_CHECKED_ATTRIBUTE SMALLINT,
870 UM_READ_ONLY SMALLINT,
871 UM_TENANT_ID INTEGER DEFAULT 0,
872 UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID,UM_MAPPED_ATTRIBUTE_DOMAIN),
873 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
874 PRIMARY KEY (UM_ID, UM_TENANT_ID)
875 )ENGINE INNODB;
876 CREATE TABLE UM_PROFILE_CONFIG(
877 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
878 UM_DIALECT_ID INTEGER NOT NULL,
879 UM_PROFILE_NAME VARCHAR(255),
880 UM_TENANT_ID INTEGER DEFAULT 0,
881 FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID),
882 PRIMARY KEY (UM_ID, UM_TENANT_ID)
883 )ENGINE INNODB;
884 CREATE TABLE IF NOT EXISTS UM_CLAIM_BEHAVIOR(
885 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
886 UM_PROFILE_ID INTEGER,
887 UM_CLAIM_ID INTEGER,
888 UM_BEHAVIOUR SMALLINT,
889 UM_TENANT_ID INTEGER DEFAULT 0,
890 FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID,UM_TENANT_ID),
891 FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID,UM_TENANT_ID),
892 PRIMARY KEY(UM_ID, UM_TENANT_ID)
893 )ENGINE INNODB;
894 CREATE TABLE UM_HYBRID_ROLE(
895 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
896 UM_ROLE_NAME VARCHAR(255),
897 UM_TENANT_ID INTEGER DEFAULT 0,
898 PRIMARY KEY (UM_ID, UM_TENANT_ID)
899 )ENGINE INNODB;
900 CREATE TABLE UM_HYBRID_USER_ROLE(
901 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
902 UM_USER_NAME VARCHAR(255),
903 UM_ROLE_ID INTEGER NOT NULL,
904 UM_TENANT_ID INTEGER DEFAULT 0,
905 UM_DOMAIN_ID INTEGER,
906 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID, UM_DOMAIN_ID),
907 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID) ON DELETE CASCADE,
908 FOREIGN KEY (UM_DOMAIN_ID, UM_TENANT_ID) REFERENCES UM_DOMAIN(UM_DOMAIN_ID, UM_TENANT_ID) ON DELETE CASCADE,
909 PRIMARY KEY (UM_ID, UM_TENANT_ID)
910 )ENGINE INNODB;
911 CREATE TABLE UM_SYSTEM_ROLE(
912 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
913 UM_ROLE_NAME VARCHAR(255),
914 UM_TENANT_ID INTEGER DEFAULT 0,
915 PRIMARY KEY (UM_ID, UM_TENANT_ID)
916 )ENGINE INNODB;
917 CREATE INDEX SYSTEM_ROLE_IND_BY_RN_TI ON UM_SYSTEM_ROLE(UM_ROLE_NAME, UM_TENANT_ID);
918 CREATE TABLE UM_SYSTEM_USER_ROLE(
919 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
920 UM_USER_NAME VARCHAR(255),
921 UM_ROLE_ID INTEGER NOT NULL,
922 UM_TENANT_ID INTEGER DEFAULT 0,
923 UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
924 FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_SYSTEM_ROLE(UM_ID, UM_TENANT_ID),
925 PRIMARY KEY (UM_ID, UM_TENANT_ID)
926 )ENGINE INNODB;
927 CREATE TABLE UM_HYBRID_REMEMBER_ME(
928 UM_ID INTEGER NOT NULL AUTO_INCREMENT,
929 UM_USER_NAME VARCHAR(255) NOT NULL,
930 UM_COOKIE_VALUE VARCHAR(1024),
931 UM_CREATED_TIME TIMESTAMP,
932 UM_TENANT_ID INTEGER DEFAULT 0,
933 PRIMARY KEY (UM_ID, UM_TENANT_ID)
934 )ENGINE INNODB;
935 CREATE TABLE IF NOT EXISTS IDN_BASE_TABLE (
936 PRODUCT_NAME VARCHAR(20),
937 PRIMARY KEY (PRODUCT_NAME)
938 )ENGINE INNODB;
939 INSERT INTO IDN_BASE_TABLE values ('WSO2 Identity Server');
940 CREATE TABLE IF NOT EXISTS IDN_OAUTH_CONSUMER_APPS (
941 ID INTEGER NOT NULL AUTO_INCREMENT,
942 CONSUMER_KEY VARCHAR(255),
943 CONSUMER_SECRET VARCHAR(2048),
944 USERNAME VARCHAR(255),
945 TENANT_ID INTEGER DEFAULT 0,
946 USER_DOMAIN VARCHAR(50),
947 APP_NAME VARCHAR(255),
948 OAUTH_VERSION VARCHAR(128),
949 CALLBACK_URL VARCHAR(1024),
950 GRANT_TYPES VARCHAR (1024),
951 PKCE_MANDATORY CHAR(1) DEFAULT '0',
952 PKCE_SUPPORT_PLAIN CHAR(1) DEFAULT '0',
953 APP_STATE VARCHAR (25) DEFAULT 'ACTIVE',
954 USER_ACCESS_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
955 APP_ACCESS_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
956 REFRESH_TOKEN_EXPIRE_TIME BIGINT DEFAULT 84600,
957 ID_TOKEN_EXPIRE_TIME BIGINT DEFAULT 3600,
958 CONSTRAINT CONSUMER_KEY_CONSTRAINT UNIQUE (CONSUMER_KEY),
959 PRIMARY KEY (ID)
960 )ENGINE INNODB;
961 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE_VALIDATORS (
962 APP_ID INTEGER NOT NULL,
963 SCOPE_VALIDATOR VARCHAR (128) NOT NULL,
964 PRIMARY KEY (APP_ID,SCOPE_VALIDATOR),
965 FOREIGN KEY (APP_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
966 )ENGINE INNODB;
967 CREATE TABLE IF NOT EXISTS IDN_OAUTH1A_REQUEST_TOKEN (
968 REQUEST_TOKEN VARCHAR(255),
969 REQUEST_TOKEN_SECRET VARCHAR(512),
970 CONSUMER_KEY_ID INTEGER,
971 CALLBACK_URL VARCHAR(1024),
972 SCOPE VARCHAR(2048),
973 AUTHORIZED VARCHAR(128),
974 OAUTH_VERIFIER VARCHAR(512),
975 AUTHZ_USER VARCHAR(512),
976 TENANT_ID INTEGER DEFAULT -1,
977 PRIMARY KEY (REQUEST_TOKEN),
978 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
979 )ENGINE INNODB;
980 CREATE TABLE IF NOT EXISTS IDN_OAUTH1A_ACCESS_TOKEN (
981 ACCESS_TOKEN VARCHAR(255),
982 ACCESS_TOKEN_SECRET VARCHAR(512),
983 CONSUMER_KEY_ID INTEGER,
984 SCOPE VARCHAR(2048),
985 AUTHZ_USER VARCHAR(512),
986 TENANT_ID INTEGER DEFAULT -1,
987 PRIMARY KEY (ACCESS_TOKEN),
988 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
989 )ENGINE INNODB;
990 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN (
991 TOKEN_ID VARCHAR (255),
992 ACCESS_TOKEN VARCHAR(2048),
993 REFRESH_TOKEN VARCHAR(2048),
994 CONSUMER_KEY_ID INTEGER,
995 AUTHZ_USER VARCHAR (100),
996 TENANT_ID INTEGER,
997 USER_DOMAIN VARCHAR(50),
998 USER_TYPE VARCHAR (25),
999 GRANT_TYPE VARCHAR (50),
1000 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1001 REFRESH_TOKEN_TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1002 VALIDITY_PERIOD BIGINT,
1003 REFRESH_TOKEN_VALIDITY_PERIOD BIGINT,
1004 TOKEN_SCOPE_HASH VARCHAR(32),
1005 TOKEN_STATE VARCHAR(25) DEFAULT 'ACTIVE',
1006 TOKEN_STATE_ID VARCHAR (128) DEFAULT 'NONE',
1007 SUBJECT_IDENTIFIER VARCHAR(255),
1008 ACCESS_TOKEN_HASH VARCHAR(512),
1009 REFRESH_TOKEN_HASH VARCHAR(512),
1010 PRIMARY KEY (TOKEN_ID),
1011 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE,
1012 CONSTRAINT CON_APP_KEY UNIQUE (CONSUMER_KEY_ID,AUTHZ_USER,TENANT_ID,USER_DOMAIN,USER_TYPE,TOKEN_SCOPE_HASH,
1013 TOKEN_STATE,TOKEN_STATE_ID)
1014 )ENGINE INNODB;
1015 CREATE INDEX IDX_AT_CK_AU ON IDN_OAUTH2_ACCESS_TOKEN(CONSUMER_KEY_ID, AUTHZ_USER, TOKEN_STATE, USER_TYPE);
1016 CREATE INDEX IDX_TC ON IDN_OAUTH2_ACCESS_TOKEN(TIME_CREATED);
1017 CREATE INDEX IDX_ATH ON IDN_OAUTH2_ACCESS_TOKEN(ACCESS_TOKEN_HASH);
1018 CREATE INDEX IDX_AT_TI_UD ON IDN_OAUTH2_ACCESS_TOKEN(AUTHZ_USER, TENANT_ID, TOKEN_STATE, USER_DOMAIN);
1019 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN_AUDIT (
1020 TOKEN_ID VARCHAR (255),
1021 ACCESS_TOKEN VARCHAR(2048),
1022 REFRESH_TOKEN VARCHAR(2048),
1023 CONSUMER_KEY_ID INTEGER,
1024 AUTHZ_USER VARCHAR (100),
1025 TENANT_ID INTEGER,
1026 USER_DOMAIN VARCHAR(50),
1027 USER_TYPE VARCHAR (25),
1028 GRANT_TYPE VARCHAR (50),
1029 TIME_CREATED TIMESTAMP NULL,
1030 REFRESH_TOKEN_TIME_CREATED TIMESTAMP NULL,
1031 VALIDITY_PERIOD BIGINT,
1032 REFRESH_TOKEN_VALIDITY_PERIOD BIGINT,
1033 TOKEN_SCOPE_HASH VARCHAR(32),
1034 TOKEN_STATE VARCHAR(25),
1035 TOKEN_STATE_ID VARCHAR (128) ,
1036 SUBJECT_IDENTIFIER VARCHAR(255),
1037 ACCESS_TOKEN_HASH VARCHAR(512),
1038 REFRESH_TOKEN_HASH VARCHAR(512),
1039 INVALIDATED_TIME TIMESTAMP NULL
1040 );
1041 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_AUTHORIZATION_CODE (
1042 CODE_ID VARCHAR (255),
1043 AUTHORIZATION_CODE VARCHAR(2048),
1044 CONSUMER_KEY_ID INTEGER,
1045 CALLBACK_URL VARCHAR(1024),
1046 SCOPE VARCHAR(2048),
1047 AUTHZ_USER VARCHAR (100),
1048 TENANT_ID INTEGER,
1049 USER_DOMAIN VARCHAR(50),
1050 TIME_CREATED TIMESTAMP,
1051 VALIDITY_PERIOD BIGINT,
1052 STATE VARCHAR (25) DEFAULT 'ACTIVE',
1053 TOKEN_ID VARCHAR(255),
1054 SUBJECT_IDENTIFIER VARCHAR(255),
1055 PKCE_CODE_CHALLENGE VARCHAR(255),
1056 PKCE_CODE_CHALLENGE_METHOD VARCHAR(128),
1057 AUTHORIZATION_CODE_HASH VARCHAR(512),
1058 PRIMARY KEY (CODE_ID),
1059 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE
1060 )ENGINE INNODB;
1061 CREATE INDEX IDX_AUTHORIZATION_CODE_HASH ON IDN_OAUTH2_AUTHORIZATION_CODE (AUTHORIZATION_CODE_HASH,CONSUMER_KEY_ID);
1062 CREATE INDEX IDX_AUTHORIZATION_CODE_AU_TI ON IDN_OAUTH2_AUTHORIZATION_CODE (AUTHZ_USER,TENANT_ID, USER_DOMAIN, STATE);
1063 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN_SCOPE (
1064 TOKEN_ID VARCHAR (255),
1065 TOKEN_SCOPE VARCHAR (60),
1066 TENANT_ID INTEGER DEFAULT -1,
1067 PRIMARY KEY (TOKEN_ID, TOKEN_SCOPE),
1068 FOREIGN KEY (TOKEN_ID) REFERENCES IDN_OAUTH2_ACCESS_TOKEN(TOKEN_ID) ON DELETE CASCADE
1069 )ENGINE INNODB;
1070 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE (
1071 SCOPE_ID INTEGER NOT NULL AUTO_INCREMENT,
1072 NAME VARCHAR(255) NOT NULL,
1073 DISPLAY_NAME VARCHAR(255) NOT NULL,
1074 DESCRIPTION VARCHAR(512),
1075 TENANT_ID INTEGER NOT NULL DEFAULT -1,
1076 PRIMARY KEY (SCOPE_ID)
1077 )ENGINE INNODB;
1078 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_SCOPE_BINDING (
1079 SCOPE_ID INTEGER NOT NULL,
1080 SCOPE_BINDING VARCHAR(255),
1081 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OAUTH2_SCOPE(SCOPE_ID) ON DELETE CASCADE
1082 )ENGINE INNODB;
1083 CREATE TABLE IF NOT EXISTS IDN_OAUTH2_RESOURCE_SCOPE (
1084 RESOURCE_PATH VARCHAR(255) NOT NULL,
1085 SCOPE_ID INTEGER NOT NULL,
1086 TENANT_ID INTEGER DEFAULT -1,
1087 PRIMARY KEY (RESOURCE_PATH),
1088 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OAUTH2_SCOPE (SCOPE_ID) ON DELETE CASCADE
1089 )ENGINE INNODB;
1090 CREATE TABLE IF NOT EXISTS IDN_SCIM_GROUP (
1091 ID INTEGER AUTO_INCREMENT,
1092 TENANT_ID INTEGER NOT NULL,
1093 ROLE_NAME VARCHAR(255) NOT NULL,
1094 ATTR_NAME VARCHAR(1024) NOT NULL,
1095 ATTR_VALUE VARCHAR(1024),
1096 PRIMARY KEY (ID)
1097 )ENGINE INNODB;
1098 CREATE INDEX IDX_IDN_SCIM_GROUP_TI_RN ON IDN_SCIM_GROUP (TENANT_ID, ROLE_NAME);
1099 CREATE INDEX IDX_IDN_SCIM_GROUP_TI_RN_AN ON IDN_SCIM_GROUP (TENANT_ID, ROLE_NAME, ATTR_NAME);
1100 CREATE TABLE IF NOT EXISTS IDN_OPENID_REMEMBER_ME (
1101 USER_NAME VARCHAR(255) NOT NULL,
1102 TENANT_ID INTEGER DEFAULT 0,
1103 COOKIE_VALUE VARCHAR(1024),
1104 CREATED_TIME TIMESTAMP,
1105 PRIMARY KEY (USER_NAME, TENANT_ID)
1106 )ENGINE INNODB;
1107 CREATE TABLE IF NOT EXISTS IDN_OPENID_USER_RPS (
1108 USER_NAME VARCHAR(255) NOT NULL,
1109 TENANT_ID INTEGER DEFAULT 0,
1110 RP_URL VARCHAR(255) NOT NULL,
1111 TRUSTED_ALWAYS VARCHAR(128) DEFAULT 'FALSE',
1112 LAST_VISIT DATE NOT NULL,
1113 VISIT_COUNT INTEGER DEFAULT 0,
1114 DEFAULT_PROFILE_NAME VARCHAR(255) DEFAULT 'DEFAULT',
1115 PRIMARY KEY (USER_NAME, TENANT_ID, RP_URL)
1116 )ENGINE INNODB;
1117 CREATE TABLE IF NOT EXISTS IDN_OPENID_ASSOCIATIONS (
1118 HANDLE VARCHAR(255) NOT NULL,
1119 ASSOC_TYPE VARCHAR(255) NOT NULL,
1120 EXPIRE_IN TIMESTAMP NOT NULL,
1121 MAC_KEY VARCHAR(255) NOT NULL,
1122 ASSOC_STORE VARCHAR(128) DEFAULT 'SHARED',
1123 TENANT_ID INTEGER DEFAULT -1,
1124 PRIMARY KEY (HANDLE)
1125 )ENGINE INNODB;
1126 CREATE TABLE IF NOT EXISTS IDN_STS_STORE (
1127 ID INTEGER AUTO_INCREMENT,
1128 TOKEN_ID VARCHAR(255) NOT NULL,
1129 TOKEN_CONTENT BLOB(1024) NOT NULL,
1130 CREATE_DATE TIMESTAMP NOT NULL,
1131 EXPIRE_DATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1132 STATE INTEGER DEFAULT 0,
1133 PRIMARY KEY (ID)
1134 )ENGINE INNODB;
1135 CREATE TABLE IF NOT EXISTS IDN_IDENTITY_USER_DATA (
1136 TENANT_ID INTEGER DEFAULT -1234,
1137 USER_NAME VARCHAR(255) NOT NULL,
1138 DATA_KEY VARCHAR(255) NOT NULL,
1139 DATA_VALUE VARCHAR(2048),
1140 PRIMARY KEY (TENANT_ID, USER_NAME, DATA_KEY)
1141 )ENGINE INNODB;
1142 CREATE TABLE IF NOT EXISTS IDN_IDENTITY_META_DATA (
1143 USER_NAME VARCHAR(255) NOT NULL,
1144 TENANT_ID INTEGER DEFAULT -1234,
1145 METADATA_TYPE VARCHAR(255) NOT NULL,
1146 METADATA VARCHAR(255) NOT NULL,
1147 VALID VARCHAR(255) NOT NULL,
1148 PRIMARY KEY (TENANT_ID, USER_NAME, METADATA_TYPE,METADATA)
1149 )ENGINE INNODB;
1150 CREATE TABLE IF NOT EXISTS IDN_THRIFT_SESSION (
1151 SESSION_ID VARCHAR(255) NOT NULL,
1152 USER_NAME VARCHAR(255) NOT NULL,
1153 CREATED_TIME VARCHAR(255) NOT NULL,
1154 LAST_MODIFIED_TIME VARCHAR(255) NOT NULL,
1155 TENANT_ID INTEGER DEFAULT -1,
1156 PRIMARY KEY (SESSION_ID)
1157 )ENGINE INNODB;
1158 CREATE TABLE IF NOT EXISTS IDN_AUTH_SESSION_STORE (
1159 SESSION_ID VARCHAR (100) NOT NULL,
1160 SESSION_TYPE VARCHAR(100) NOT NULL,
1161 OPERATION VARCHAR(10) NOT NULL,
1162 SESSION_OBJECT BLOB,
1163 TIME_CREATED BIGINT,
1164 TENANT_ID INTEGER DEFAULT -1,
1165 EXPIRY_TIME BIGINT,
1166 PRIMARY KEY (SESSION_ID, SESSION_TYPE, TIME_CREATED, OPERATION)
1167 )ENGINE INNODB;
1168 CREATE INDEX IDX_IDN_AUTH_SESSION_TIME ON IDN_AUTH_SESSION_STORE (TIME_CREATED);
1169 CREATE TABLE IF NOT EXISTS IDN_AUTH_TEMP_SESSION_STORE (
1170 SESSION_ID VARCHAR (100) NOT NULL,
1171 SESSION_TYPE VARCHAR(100) NOT NULL,
1172 OPERATION VARCHAR(10) NOT NULL,
1173 SESSION_OBJECT BLOB,
1174 TIME_CREATED BIGINT,
1175 TENANT_ID INTEGER DEFAULT -1,
1176 EXPIRY_TIME BIGINT,
1177 PRIMARY KEY (SESSION_ID, SESSION_TYPE, TIME_CREATED, OPERATION)
1178 )ENGINE INNODB;
1179 CREATE INDEX IDX_IDN_AUTH_TMP_SESSION_TIME ON IDN_AUTH_TEMP_SESSION_STORE (TIME_CREATED);
1180 CREATE TABLE IF NOT EXISTS SP_APP (
1181 ID INTEGER NOT NULL AUTO_INCREMENT,
1182 TENANT_ID INTEGER NOT NULL,
1183 APP_NAME VARCHAR (255) NOT NULL ,
1184 USER_STORE VARCHAR (255) NOT NULL,
1185 USERNAME VARCHAR (255) NOT NULL ,
1186 DESCRIPTION VARCHAR (1024),
1187 ROLE_CLAIM VARCHAR (512),
1188 AUTH_TYPE VARCHAR (255) NOT NULL,
1189 PROVISIONING_USERSTORE_DOMAIN VARCHAR (512),
1190 IS_LOCAL_CLAIM_DIALECT CHAR(1) DEFAULT '1',
1191 IS_SEND_LOCAL_SUBJECT_ID CHAR(1) DEFAULT '0',
1192 IS_SEND_AUTH_LIST_OF_IDPS CHAR(1) DEFAULT '0',
1193 IS_USE_TENANT_DOMAIN_SUBJECT CHAR(1) DEFAULT '1',
1194 IS_USE_USER_DOMAIN_SUBJECT CHAR(1) DEFAULT '1',
1195 ENABLE_AUTHORIZATION CHAR(1) DEFAULT '0',
1196 SUBJECT_CLAIM_URI VARCHAR (512),
1197 IS_SAAS_APP CHAR(1) DEFAULT '0',
1198 IS_DUMB_MODE CHAR(1) DEFAULT '0',
1199 PRIMARY KEY (ID)
1200 )ENGINE INNODB;
1201 ALTER TABLE SP_APP ADD CONSTRAINT APPLICATION_NAME_CONSTRAINT UNIQUE(APP_NAME, TENANT_ID);
1202 CREATE TABLE IF NOT EXISTS SP_METADATA (
1203 ID INTEGER AUTO_INCREMENT,
1204 SP_ID INTEGER,
1205 NAME VARCHAR(255) NOT NULL,
1206 VALUE VARCHAR(255) NOT NULL,
1207 DISPLAY_NAME VARCHAR(255),
1208 TENANT_ID INTEGER DEFAULT -1,
1209 PRIMARY KEY (ID),
1210 CONSTRAINT SP_METADATA_CONSTRAINT UNIQUE (SP_ID, NAME),
1211 FOREIGN KEY (SP_ID) REFERENCES SP_APP(ID) ON DELETE CASCADE
1212 )ENGINE INNODB;
1213 CREATE TABLE IF NOT EXISTS SP_INBOUND_AUTH (
1214 ID INTEGER NOT NULL AUTO_INCREMENT,
1215 TENANT_ID INTEGER NOT NULL,
1216 INBOUND_AUTH_KEY VARCHAR (255),
1217 INBOUND_AUTH_TYPE VARCHAR (255) NOT NULL,
1218 INBOUND_CONFIG_TYPE VARCHAR (255) NOT NULL,
1219 PROP_NAME VARCHAR (255),
1220 PROP_VALUE VARCHAR (1024) ,
1221 APP_ID INTEGER NOT NULL,
1222 PRIMARY KEY (ID)
1223 )ENGINE INNODB;
1224 ALTER TABLE SP_INBOUND_AUTH ADD CONSTRAINT APPLICATION_ID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1225 CREATE TABLE IF NOT EXISTS SP_AUTH_STEP (
1226 ID INTEGER NOT NULL AUTO_INCREMENT,
1227 TENANT_ID INTEGER NOT NULL,
1228 STEP_ORDER INTEGER DEFAULT 1,
1229 APP_ID INTEGER NOT NULL ,
1230 IS_SUBJECT_STEP CHAR(1) DEFAULT '0',
1231 IS_ATTRIBUTE_STEP CHAR(1) DEFAULT '0',
1232 PRIMARY KEY (ID)
1233 )ENGINE INNODB;
1234 ALTER TABLE SP_AUTH_STEP ADD CONSTRAINT APPLICATION_ID_CONSTRAINT_STEP FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1235 CREATE TABLE IF NOT EXISTS SP_FEDERATED_IDP (
1236 ID INTEGER NOT NULL,
1237 TENANT_ID INTEGER NOT NULL,
1238 AUTHENTICATOR_ID INTEGER NOT NULL,
1239 PRIMARY KEY (ID, AUTHENTICATOR_ID)
1240 )ENGINE INNODB;
1241 ALTER TABLE SP_FEDERATED_IDP ADD CONSTRAINT STEP_ID_CONSTRAINT FOREIGN KEY (ID) REFERENCES SP_AUTH_STEP (ID) ON DELETE CASCADE;
1242 CREATE TABLE IF NOT EXISTS SP_CLAIM_DIALECT (
1243 ID INTEGER NOT NULL AUTO_INCREMENT,
1244 TENANT_ID INTEGER NOT NULL,
1245 SP_DIALECT VARCHAR (512) NOT NULL,
1246 APP_ID INTEGER NOT NULL,
1247 PRIMARY KEY (ID));
1248 ALTER TABLE SP_CLAIM_DIALECT ADD CONSTRAINT DIALECTID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1249 CREATE TABLE IF NOT EXISTS SP_CLAIM_MAPPING (
1250 ID INTEGER NOT NULL AUTO_INCREMENT,
1251 TENANT_ID INTEGER NOT NULL,
1252 IDP_CLAIM VARCHAR (512) NOT NULL ,
1253 SP_CLAIM VARCHAR (512) NOT NULL ,
1254 APP_ID INTEGER NOT NULL,
1255 IS_REQUESTED VARCHAR(128) DEFAULT '0',
1256 IS_MANDATORY VARCHAR(128) DEFAULT '0',
1257 DEFAULT_VALUE VARCHAR(255),
1258 PRIMARY KEY (ID)
1259 )ENGINE INNODB;
1260 ALTER TABLE SP_CLAIM_MAPPING ADD CONSTRAINT CLAIMID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1261 CREATE TABLE IF NOT EXISTS SP_ROLE_MAPPING (
1262 ID INTEGER NOT NULL AUTO_INCREMENT,
1263 TENANT_ID INTEGER NOT NULL,
1264 IDP_ROLE VARCHAR (255) NOT NULL ,
1265 SP_ROLE VARCHAR (255) NOT NULL ,
1266 APP_ID INTEGER NOT NULL,
1267 PRIMARY KEY (ID)
1268 )ENGINE INNODB;
1269 ALTER TABLE SP_ROLE_MAPPING ADD CONSTRAINT ROLEID_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1270 CREATE TABLE IF NOT EXISTS SP_REQ_PATH_AUTHENTICATOR (
1271 ID INTEGER NOT NULL AUTO_INCREMENT,
1272 TENANT_ID INTEGER NOT NULL,
1273 AUTHENTICATOR_NAME VARCHAR (255) NOT NULL ,
1274 APP_ID INTEGER NOT NULL,
1275 PRIMARY KEY (ID)
1276 )ENGINE INNODB;
1277 ALTER TABLE SP_REQ_PATH_AUTHENTICATOR ADD CONSTRAINT REQ_AUTH_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1278 CREATE TABLE IF NOT EXISTS SP_PROVISIONING_CONNECTOR (
1279 ID INTEGER NOT NULL AUTO_INCREMENT,
1280 TENANT_ID INTEGER NOT NULL,
1281 IDP_NAME VARCHAR (255) NOT NULL ,
1282 CONNECTOR_NAME VARCHAR (255) NOT NULL ,
1283 APP_ID INTEGER NOT NULL,
1284 IS_JIT_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1285 BLOCKING CHAR(1) NOT NULL DEFAULT '0',
1286 RULE_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1287 PRIMARY KEY (ID)
1288 )ENGINE INNODB;
1289 ALTER TABLE SP_PROVISIONING_CONNECTOR ADD CONSTRAINT PRO_CONNECTOR_APPID_CONSTRAINT FOREIGN KEY (APP_ID) REFERENCES SP_APP (ID) ON DELETE CASCADE;
1290 CREATE TABLE SP_AUTH_SCRIPT (
1291 ID INTEGER AUTO_INCREMENT NOT NULL,
1292 TENANT_ID INTEGER NOT NULL,
1293 APP_ID INTEGER NOT NULL,
1294 TYPE VARCHAR(255) NOT NULL,
1295 CONTENT BLOB DEFAULT NULL,
1296 IS_ENABLED CHAR(1) NOT NULL DEFAULT '0',
1297 PRIMARY KEY (ID));
1298 CREATE TABLE IF NOT EXISTS SP_TEMPLATE (
1299 ID INTEGER AUTO_INCREMENT NOT NULL,
1300 TENANT_ID INTEGER NOT NULL,
1301 NAME VARCHAR(255) NOT NULL,
1302 DESCRIPTION VARCHAR(1023),
1303 CONTENT BLOB DEFAULT NULL,
1304 PRIMARY KEY (ID),
1305 CONSTRAINT SP_TEMPLATE_CONSTRAINT UNIQUE (TENANT_ID, NAME));
1306 CREATE INDEX IDX_SP_TEMPLATE ON SP_TEMPLATE (TENANT_ID, NAME);
1307 CREATE TABLE IF NOT EXISTS IDN_AUTH_WAIT_STATUS (
1308 ID INTEGER AUTO_INCREMENT NOT NULL,
1309 TENANT_ID INTEGER NOT NULL,
1310 LONG_WAIT_KEY VARCHAR(255) NOT NULL,
1311 WAIT_STATUS CHAR(1) NOT NULL DEFAULT '1',
1312 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1313 EXPIRE_TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1314 PRIMARY KEY (ID),
1315 CONSTRAINT IDN_AUTH_WAIT_STATUS_KEY UNIQUE (LONG_WAIT_KEY));
1316 CREATE TABLE IF NOT EXISTS IDP (
1317 ID INTEGER AUTO_INCREMENT,
1318 TENANT_ID INTEGER,
1319 NAME VARCHAR(254) NOT NULL,
1320 IS_ENABLED CHAR(1) NOT NULL DEFAULT '1',
1321 IS_PRIMARY CHAR(1) NOT NULL DEFAULT '0',
1322 HOME_REALM_ID VARCHAR(254),
1323 IMAGE MEDIUMBLOB,
1324 CERTIFICATE BLOB,
1325 ALIAS VARCHAR(254),
1326 INBOUND_PROV_ENABLED CHAR (1) NOT NULL DEFAULT '0',
1327 INBOUND_PROV_USER_STORE_ID VARCHAR(254),
1328 USER_CLAIM_URI VARCHAR(254),
1329 ROLE_CLAIM_URI VARCHAR(254),
1330 DESCRIPTION VARCHAR (1024),
1331 DEFAULT_AUTHENTICATOR_NAME VARCHAR(254),
1332 DEFAULT_PRO_CONNECTOR_NAME VARCHAR(254),
1333 PROVISIONING_ROLE VARCHAR(128),
1334 IS_FEDERATION_HUB CHAR(1) NOT NULL DEFAULT '0',
1335 IS_LOCAL_CLAIM_DIALECT CHAR(1) NOT NULL DEFAULT '0',
1336 DISPLAY_NAME VARCHAR(255),
1337 PRIMARY KEY (ID),
1338 UNIQUE (TENANT_ID, NAME)
1339 )ENGINE INNODB;
1340 CREATE TABLE IF NOT EXISTS IDP_ROLE (
1341 ID INTEGER AUTO_INCREMENT,
1342 IDP_ID INTEGER,
1343 TENANT_ID INTEGER,
1344 ROLE VARCHAR(254),
1345 PRIMARY KEY (ID),
1346 UNIQUE (IDP_ID, ROLE),
1347 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1348 )ENGINE INNODB;
1349 CREATE TABLE IF NOT EXISTS IDP_ROLE_MAPPING (
1350 ID INTEGER AUTO_INCREMENT,
1351 IDP_ROLE_ID INTEGER,
1352 TENANT_ID INTEGER,
1353 USER_STORE_ID VARCHAR (253),
1354 LOCAL_ROLE VARCHAR(253),
1355 PRIMARY KEY (ID),
1356 UNIQUE (IDP_ROLE_ID, TENANT_ID, USER_STORE_ID, LOCAL_ROLE),
1357 FOREIGN KEY (IDP_ROLE_ID) REFERENCES IDP_ROLE(ID) ON DELETE CASCADE
1358 )ENGINE INNODB;
1359 CREATE TABLE IF NOT EXISTS IDP_CLAIM (
1360 ID INTEGER AUTO_INCREMENT,
1361 IDP_ID INTEGER,
1362 TENANT_ID INTEGER,
1363 CLAIM VARCHAR(254),
1364 PRIMARY KEY (ID),
1365 UNIQUE (IDP_ID, CLAIM),
1366 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1367 )ENGINE INNODB;
1368 CREATE TABLE IF NOT EXISTS IDP_CLAIM_MAPPING (
1369 ID INTEGER AUTO_INCREMENT,
1370 IDP_CLAIM_ID INTEGER,
1371 TENANT_ID INTEGER,
1372 LOCAL_CLAIM VARCHAR(253),
1373 DEFAULT_VALUE VARCHAR(255),
1374 IS_REQUESTED VARCHAR(128) DEFAULT '0',
1375 PRIMARY KEY (ID),
1376 UNIQUE (IDP_CLAIM_ID, TENANT_ID, LOCAL_CLAIM),
1377 FOREIGN KEY (IDP_CLAIM_ID) REFERENCES IDP_CLAIM(ID) ON DELETE CASCADE
1378 )ENGINE INNODB;
1379 CREATE TABLE IF NOT EXISTS IDP_AUTHENTICATOR (
1380 ID INTEGER AUTO_INCREMENT,
1381 TENANT_ID INTEGER,
1382 IDP_ID INTEGER,
1383 NAME VARCHAR(255) NOT NULL,
1384 IS_ENABLED CHAR (1) DEFAULT '1',
1385 DISPLAY_NAME VARCHAR(255),
1386 PRIMARY KEY (ID),
1387 UNIQUE (TENANT_ID, IDP_ID, NAME),
1388 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1389 )ENGINE INNODB;
1390 CREATE TABLE IF NOT EXISTS IDP_METADATA (
1391 ID INTEGER AUTO_INCREMENT,
1392 IDP_ID INTEGER,
1393 NAME VARCHAR(255) NOT NULL,
1394 VALUE VARCHAR(255) NOT NULL,
1395 DISPLAY_NAME VARCHAR(255),
1396 TENANT_ID INTEGER DEFAULT -1,
1397 PRIMARY KEY (ID),
1398 CONSTRAINT IDP_METADATA_CONSTRAINT UNIQUE (IDP_ID, NAME),
1399 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1400 )ENGINE INNODB;
1401 CREATE TABLE IF NOT EXISTS IDP_AUTHENTICATOR_PROPERTY (
1402 ID INTEGER AUTO_INCREMENT,
1403 TENANT_ID INTEGER,
1404 AUTHENTICATOR_ID INTEGER,
1405 PROPERTY_KEY VARCHAR(255) NOT NULL,
1406 PROPERTY_VALUE VARCHAR(2047),
1407 IS_SECRET CHAR (1) DEFAULT '0',
1408 PRIMARY KEY (ID),
1409 UNIQUE (TENANT_ID, AUTHENTICATOR_ID, PROPERTY_KEY),
1410 FOREIGN KEY (AUTHENTICATOR_ID) REFERENCES IDP_AUTHENTICATOR(ID) ON DELETE CASCADE
1411 )ENGINE INNODB;
1412 CREATE TABLE IF NOT EXISTS IDP_PROVISIONING_CONFIG (
1413 ID INTEGER AUTO_INCREMENT,
1414 TENANT_ID INTEGER,
1415 IDP_ID INTEGER,
1416 PROVISIONING_CONNECTOR_TYPE VARCHAR(255) NOT NULL,
1417 IS_ENABLED CHAR (1) DEFAULT '0',
1418 IS_BLOCKING CHAR (1) DEFAULT '0',
1419 IS_RULES_ENABLED CHAR (1) DEFAULT '0',
1420 PRIMARY KEY (ID),
1421 UNIQUE (TENANT_ID, IDP_ID, PROVISIONING_CONNECTOR_TYPE),
1422 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1423 )ENGINE INNODB;
1424 CREATE TABLE IF NOT EXISTS IDP_PROV_CONFIG_PROPERTY (
1425 ID INTEGER AUTO_INCREMENT,
1426 TENANT_ID INTEGER,
1427 PROVISIONING_CONFIG_ID INTEGER,
1428 PROPERTY_KEY VARCHAR(255) NOT NULL,
1429 PROPERTY_VALUE VARCHAR(2048),
1430 PROPERTY_BLOB_VALUE BLOB,
1431 PROPERTY_TYPE CHAR(32) NOT NULL,
1432 IS_SECRET CHAR (1) DEFAULT '0',
1433 PRIMARY KEY (ID),
1434 UNIQUE (TENANT_ID, PROVISIONING_CONFIG_ID, PROPERTY_KEY),
1435 FOREIGN KEY (PROVISIONING_CONFIG_ID) REFERENCES IDP_PROVISIONING_CONFIG(ID) ON DELETE CASCADE
1436 )ENGINE INNODB;
1437 CREATE TABLE IF NOT EXISTS IDP_PROVISIONING_ENTITY (
1438 ID INTEGER AUTO_INCREMENT,
1439 PROVISIONING_CONFIG_ID INTEGER,
1440 ENTITY_TYPE VARCHAR(255) NOT NULL,
1441 ENTITY_LOCAL_USERSTORE VARCHAR(255) NOT NULL,
1442 ENTITY_NAME VARCHAR(255) NOT NULL,
1443 ENTITY_VALUE VARCHAR(255),
1444 TENANT_ID INTEGER,
1445 ENTITY_LOCAL_ID VARCHAR(255),
1446 PRIMARY KEY (ID),
1447 UNIQUE (ENTITY_TYPE, TENANT_ID, ENTITY_LOCAL_USERSTORE, ENTITY_NAME, PROVISIONING_CONFIG_ID),
1448 UNIQUE (PROVISIONING_CONFIG_ID, ENTITY_TYPE, ENTITY_VALUE),
1449 FOREIGN KEY (PROVISIONING_CONFIG_ID) REFERENCES IDP_PROVISIONING_CONFIG(ID) ON DELETE CASCADE
1450 )ENGINE INNODB;
1451 CREATE TABLE IF NOT EXISTS IDP_LOCAL_CLAIM (
1452 ID INTEGER AUTO_INCREMENT,
1453 TENANT_ID INTEGER,
1454 IDP_ID INTEGER,
1455 CLAIM_URI VARCHAR(255) NOT NULL,
1456 DEFAULT_VALUE VARCHAR(255),
1457 IS_REQUESTED VARCHAR(128) DEFAULT '0',
1458 PRIMARY KEY (ID),
1459 UNIQUE (TENANT_ID, IDP_ID, CLAIM_URI),
1460 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1461 )ENGINE INNODB;
1462 CREATE TABLE IF NOT EXISTS IDN_ASSOCIATED_ID (
1463 ID INTEGER AUTO_INCREMENT,
1464 IDP_USER_ID VARCHAR(255) NOT NULL,
1465 TENANT_ID INTEGER DEFAULT -1234,
1466 IDP_ID INTEGER NOT NULL,
1467 DOMAIN_NAME VARCHAR(255) NOT NULL,
1468 USER_NAME VARCHAR(255) NOT NULL,
1469 PRIMARY KEY (ID),
1470 UNIQUE(IDP_USER_ID, TENANT_ID, IDP_ID),
1471 FOREIGN KEY (IDP_ID) REFERENCES IDP(ID) ON DELETE CASCADE
1472 )ENGINE INNODB;
1473 CREATE TABLE IF NOT EXISTS IDN_USER_ACCOUNT_ASSOCIATION (
1474 ASSOCIATION_KEY VARCHAR(255) NOT NULL,
1475 TENANT_ID INTEGER,
1476 DOMAIN_NAME VARCHAR(255) NOT NULL,
1477 USER_NAME VARCHAR(255) NOT NULL,
1478 PRIMARY KEY (TENANT_ID, DOMAIN_NAME, USER_NAME)
1479 )ENGINE INNODB;
1480 CREATE TABLE IF NOT EXISTS FIDO_DEVICE_STORE (
1481 TENANT_ID INTEGER,
1482 DOMAIN_NAME VARCHAR(255) NOT NULL,
1483 USER_NAME VARCHAR(45) NOT NULL,
1484 TIME_REGISTERED TIMESTAMP,
1485 KEY_HANDLE VARCHAR(200) NOT NULL,
1486 DEVICE_DATA VARCHAR(2048) NOT NULL,
1487 PRIMARY KEY (TENANT_ID, DOMAIN_NAME, USER_NAME, KEY_HANDLE)
1488 )ENGINE INNODB;
1489 CREATE TABLE IF NOT EXISTS WF_REQUEST (
1490 UUID VARCHAR (45),
1491 CREATED_BY VARCHAR (255),
1492 TENANT_ID INTEGER DEFAULT -1,
1493 OPERATION_TYPE VARCHAR (50),
1494 CREATED_AT TIMESTAMP,
1495 UPDATED_AT TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
1496 STATUS VARCHAR (30),
1497 REQUEST BLOB,
1498 PRIMARY KEY (UUID)
1499 )ENGINE INNODB;
1500 CREATE TABLE IF NOT EXISTS WF_BPS_PROFILE (
1501 PROFILE_NAME VARCHAR(45),
1502 HOST_URL_MANAGER VARCHAR(255),
1503 HOST_URL_WORKER VARCHAR(255),
1504 USERNAME VARCHAR(45),
1505 PASSWORD VARCHAR(1023),
1506 CALLBACK_HOST VARCHAR (45),
1507 CALLBACK_USERNAME VARCHAR (45),
1508 CALLBACK_PASSWORD VARCHAR (255),
1509 TENANT_ID INTEGER DEFAULT -1,
1510 PRIMARY KEY (PROFILE_NAME, TENANT_ID)
1511 )ENGINE INNODB;
1512 CREATE TABLE IF NOT EXISTS WF_WORKFLOW(
1513 ID VARCHAR (45),
1514 WF_NAME VARCHAR (45),
1515 DESCRIPTION VARCHAR (255),
1516 TEMPLATE_ID VARCHAR (45),
1517 IMPL_ID VARCHAR (45),
1518 TENANT_ID INTEGER DEFAULT -1,
1519 PRIMARY KEY (ID)
1520 )ENGINE INNODB;
1521 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_ASSOCIATION(
1522 ID INTEGER NOT NULL AUTO_INCREMENT,
1523 ASSOC_NAME VARCHAR (45),
1524 EVENT_ID VARCHAR(45),
1525 ASSOC_CONDITION VARCHAR (2000),
1526 WORKFLOW_ID VARCHAR (45),
1527 IS_ENABLED CHAR (1) DEFAULT '1',
1528 TENANT_ID INTEGER DEFAULT -1,
1529 PRIMARY KEY(ID),
1530 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE
1531 )ENGINE INNODB;
1532 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_CONFIG_PARAM(
1533 WORKFLOW_ID VARCHAR (45),
1534 PARAM_NAME VARCHAR (45),
1535 PARAM_VALUE VARCHAR (1000),
1536 PARAM_QNAME VARCHAR (45),
1537 PARAM_HOLDER VARCHAR (45),
1538 TENANT_ID INTEGER DEFAULT -1,
1539 PRIMARY KEY (WORKFLOW_ID, PARAM_NAME, PARAM_QNAME, PARAM_HOLDER),
1540 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE
1541 )ENGINE INNODB;
1542 CREATE TABLE IF NOT EXISTS WF_REQUEST_ENTITY_RELATIONSHIP(
1543 REQUEST_ID VARCHAR (45),
1544 ENTITY_NAME VARCHAR (255),
1545 ENTITY_TYPE VARCHAR (50),
1546 TENANT_ID INTEGER DEFAULT -1,
1547 PRIMARY KEY(REQUEST_ID, ENTITY_NAME, ENTITY_TYPE, TENANT_ID),
1548 FOREIGN KEY (REQUEST_ID) REFERENCES WF_REQUEST(UUID)ON DELETE CASCADE
1549 )ENGINE INNODB;
1550 CREATE TABLE IF NOT EXISTS WF_WORKFLOW_REQUEST_RELATION(
1551 RELATIONSHIP_ID VARCHAR (45),
1552 WORKFLOW_ID VARCHAR (45),
1553 REQUEST_ID VARCHAR (45),
1554 UPDATED_AT TIMESTAMP,
1555 STATUS VARCHAR (30),
1556 TENANT_ID INTEGER DEFAULT -1,
1557 PRIMARY KEY (RELATIONSHIP_ID),
1558 FOREIGN KEY (WORKFLOW_ID) REFERENCES WF_WORKFLOW(ID)ON DELETE CASCADE,
1559 FOREIGN KEY (REQUEST_ID) REFERENCES WF_REQUEST(UUID)ON DELETE CASCADE
1560 )ENGINE INNODB;
1561 CREATE TABLE IF NOT EXISTS IDN_RECOVERY_DATA (
1562 USER_NAME VARCHAR(255) NOT NULL,
1563 USER_DOMAIN VARCHAR(127) NOT NULL,
1564 TENANT_ID INTEGER DEFAULT -1,
1565 CODE VARCHAR(255) NOT NULL,
1566 SCENARIO VARCHAR(255) NOT NULL,
1567 STEP VARCHAR(127) NOT NULL,
1568 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1569 REMAINING_SETS VARCHAR(2500) DEFAULT NULL,
1570 PRIMARY KEY(USER_NAME, USER_DOMAIN, TENANT_ID, SCENARIO,STEP),
1571 UNIQUE(CODE)
1572 )ENGINE INNODB;
1573 CREATE TABLE IF NOT EXISTS IDN_PASSWORD_HISTORY_DATA (
1574 ID INTEGER NOT NULL AUTO_INCREMENT,
1575 USER_NAME VARCHAR(255) NOT NULL,
1576 USER_DOMAIN VARCHAR(127) NOT NULL,
1577 TENANT_ID INTEGER DEFAULT -1,
1578 SALT_VALUE VARCHAR(255),
1579 HASH VARCHAR(255) NOT NULL,
1580 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1581 PRIMARY KEY(ID),
1582 UNIQUE (USER_NAME,USER_DOMAIN,TENANT_ID,SALT_VALUE,HASH)
1583 )ENGINE INNODB;
1584 CREATE TABLE IF NOT EXISTS IDN_CLAIM_DIALECT (
1585 ID INTEGER NOT NULL AUTO_INCREMENT,
1586 DIALECT_URI VARCHAR (255) NOT NULL,
1587 TENANT_ID INTEGER NOT NULL,
1588 PRIMARY KEY (ID),
1589 CONSTRAINT DIALECT_URI_CONSTRAINT UNIQUE (DIALECT_URI, TENANT_ID)
1590 )ENGINE INNODB;
1591 CREATE TABLE IF NOT EXISTS IDN_CLAIM (
1592 ID INTEGER NOT NULL AUTO_INCREMENT,
1593 DIALECT_ID INTEGER,
1594 CLAIM_URI VARCHAR (255) NOT NULL,
1595 TENANT_ID INTEGER NOT NULL,
1596 PRIMARY KEY (ID),
1597 FOREIGN KEY (DIALECT_ID) REFERENCES IDN_CLAIM_DIALECT(ID) ON DELETE CASCADE,
1598 CONSTRAINT CLAIM_URI_CONSTRAINT UNIQUE (DIALECT_ID, CLAIM_URI, TENANT_ID)
1599 )ENGINE INNODB;
1600 CREATE TABLE IF NOT EXISTS IDN_CLAIM_MAPPED_ATTRIBUTE (
1601 ID INTEGER NOT NULL AUTO_INCREMENT,
1602 LOCAL_CLAIM_ID INTEGER,
1603 USER_STORE_DOMAIN_NAME VARCHAR (255) NOT NULL,
1604 ATTRIBUTE_NAME VARCHAR (255) NOT NULL,
1605 TENANT_ID INTEGER NOT NULL,
1606 PRIMARY KEY (ID),
1607 FOREIGN KEY (LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
1608 CONSTRAINT USER_STORE_DOMAIN_CONSTRAINT UNIQUE (LOCAL_CLAIM_ID, USER_STORE_DOMAIN_NAME, TENANT_ID)
1609 )ENGINE INNODB;
1610 CREATE TABLE IF NOT EXISTS IDN_CLAIM_PROPERTY (
1611 ID INTEGER NOT NULL AUTO_INCREMENT,
1612 LOCAL_CLAIM_ID INTEGER,
1613 PROPERTY_NAME VARCHAR (255) NOT NULL,
1614 PROPERTY_VALUE VARCHAR (255) NOT NULL,
1615 TENANT_ID INTEGER NOT NULL,
1616 PRIMARY KEY (ID),
1617 FOREIGN KEY (LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
1618 CONSTRAINT PROPERTY_NAME_CONSTRAINT UNIQUE (LOCAL_CLAIM_ID, PROPERTY_NAME, TENANT_ID)
1619 )ENGINE INNODB;
1620 CREATE TABLE IF NOT EXISTS IDN_CLAIM_MAPPING (
1621 ID INTEGER NOT NULL AUTO_INCREMENT,
1622 EXT_CLAIM_ID INTEGER NOT NULL,
1623 MAPPED_LOCAL_CLAIM_ID INTEGER NOT NULL,
1624 TENANT_ID INTEGER NOT NULL,
1625 PRIMARY KEY (ID),
1626 FOREIGN KEY (EXT_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
1627 FOREIGN KEY (MAPPED_LOCAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE,
1628 CONSTRAINT EXT_TO_LOC_MAPPING_CONSTRN UNIQUE (EXT_CLAIM_ID, TENANT_ID)
1629 )ENGINE INNODB;
1630 CREATE TABLE IF NOT EXISTS IDN_SAML2_ASSERTION_STORE (
1631 ID INTEGER NOT NULL AUTO_INCREMENT,
1632 SAML2_ID VARCHAR(255) ,
1633 SAML2_ISSUER VARCHAR(255) ,
1634 SAML2_SUBJECT VARCHAR(255) ,
1635 SAML2_SESSION_INDEX VARCHAR(255) ,
1636 SAML2_AUTHN_CONTEXT_CLASS_REF VARCHAR(255) ,
1637 SAML2_ASSERTION VARCHAR(4096) ,
1638 PRIMARY KEY (ID)
1639 )ENGINE INNODB;
1640 CREATE TABLE IDN_SAML2_ARTIFACT_STORE (
1641 ID INT(11) NOT NULL AUTO_INCREMENT,
1642 SOURCE_ID VARCHAR(255) NOT NULL,
1643 MESSAGE_HANDLER VARCHAR(255) NOT NULL,
1644 AUTHN_REQ_DTO BLOB NOT NULL,
1645 SESSION_ID VARCHAR(255) NOT NULL,
1646 EXP_TIMESTAMP TIMESTAMP NOT NULL,
1647 INIT_TIMESTAMP TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
1648 ASSERTION_ID VARCHAR(255),
1649 PRIMARY KEY (`ID`)
1650 )ENGINE INNODB;
1651 CREATE TABLE IF NOT EXISTS IDN_OIDC_JTI (
1652 JWT_ID VARCHAR(255) NOT NULL,
1653 EXP_TIME TIMESTAMP NOT NULL ,
1654 TIME_CREATED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
1655 PRIMARY KEY (JWT_ID)
1656 )ENGINE INNODB;
1657 CREATE TABLE IF NOT EXISTS IDN_OIDC_PROPERTY (
1658 ID INTEGER NOT NULL AUTO_INCREMENT,
1659 TENANT_ID INTEGER,
1660 CONSUMER_KEY VARCHAR(255) ,
1661 PROPERTY_KEY VARCHAR(255) NOT NULL,
1662 PROPERTY_VALUE VARCHAR(2047) ,
1663 PRIMARY KEY (ID),
1664 FOREIGN KEY (CONSUMER_KEY) REFERENCES IDN_OAUTH_CONSUMER_APPS(CONSUMER_KEY) ON DELETE CASCADE
1665 )ENGINE INNODB;
1666 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJECT_REFERENCE (
1667 ID INTEGER NOT NULL AUTO_INCREMENT,
1668 CONSUMER_KEY_ID INTEGER ,
1669 CODE_ID VARCHAR(255) ,
1670 TOKEN_ID VARCHAR(255) ,
1671 SESSION_DATA_KEY VARCHAR(255),
1672 PRIMARY KEY (ID),
1673 FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE,
1674 FOREIGN KEY (TOKEN_ID) REFERENCES IDN_OAUTH2_ACCESS_TOKEN(TOKEN_ID) ON DELETE CASCADE,
1675 FOREIGN KEY (CODE_ID) REFERENCES IDN_OAUTH2_AUTHORIZATION_CODE(CODE_ID) ON DELETE CASCADE
1676 )ENGINE INNODB;
1677 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJECT_CLAIMS (
1678 ID INTEGER NOT NULL AUTO_INCREMENT,
1679 REQ_OBJECT_ID INTEGER,
1680 CLAIM_ATTRIBUTE VARCHAR(255) ,
1681 ESSENTIAL CHAR(1) NOT NULL DEFAULT '0' ,
1682 VALUE VARCHAR(255) ,
1683 IS_USERINFO CHAR(1) NOT NULL DEFAULT '0',
1684 PRIMARY KEY (ID),
1685 FOREIGN KEY (REQ_OBJECT_ID) REFERENCES IDN_OIDC_REQ_OBJECT_REFERENCE (ID) ON DELETE CASCADE
1686 )ENGINE INNODB;
1687 CREATE TABLE IF NOT EXISTS IDN_OIDC_REQ_OBJ_CLAIM_VALUES (
1688 ID INTEGER NOT NULL AUTO_INCREMENT,
1689 REQ_OBJECT_CLAIMS_ID INTEGER ,
1690 CLAIM_VALUES VARCHAR(255) ,
1691 PRIMARY KEY (ID),
1692 FOREIGN KEY (REQ_OBJECT_CLAIMS_ID) REFERENCES IDN_OIDC_REQ_OBJECT_CLAIMS(ID) ON DELETE CASCADE
1693 )ENGINE INNODB;
1694 CREATE TABLE IF NOT EXISTS IDN_CERTIFICATE (
1695 ID INTEGER NOT NULL AUTO_INCREMENT,
1696 NAME VARCHAR(100),
1697 CERTIFICATE_IN_PEM BLOB,
1698 TENANT_ID INTEGER DEFAULT 0,
1699 PRIMARY KEY(ID),
1700 CONSTRAINT CERTIFICATE_UNIQUE_KEY UNIQUE (NAME, TENANT_ID)
1701 )ENGINE INNODB;
1702 CREATE TABLE IF NOT EXISTS IDN_OIDC_SCOPE (
1703 ID INTEGER NOT NULL AUTO_INCREMENT,
1704 NAME VARCHAR(255) NOT NULL,
1705 TENANT_ID INTEGER DEFAULT -1,
1706 PRIMARY KEY (ID)
1707 )ENGINE INNODB;
1708 CREATE TABLE IF NOT EXISTS IDN_OIDC_SCOPE_CLAIM_MAPPING (
1709 ID INTEGER NOT NULL AUTO_INCREMENT,
1710 SCOPE_ID INTEGER,
1711 EXTERNAL_CLAIM_ID INTEGER,
1712 PRIMARY KEY (ID),
1713 FOREIGN KEY (SCOPE_ID) REFERENCES IDN_OIDC_SCOPE(ID) ON DELETE CASCADE,
1714 FOREIGN KEY (EXTERNAL_CLAIM_ID) REFERENCES IDN_CLAIM(ID) ON DELETE CASCADE
1715 )ENGINE INNODB;
1716 CREATE INDEX IDX_AT_SI_ECI ON IDN_OIDC_SCOPE_CLAIM_MAPPING(SCOPE_ID, EXTERNAL_CLAIM_ID);
1717kind: ConfigMap
1718metadata:
1719 name: mysql-dbscripts
1720 namespace: $namespace
1721---
1722
1723apiVersion: v1
1724kind: Service
1725metadata:
1726 name: wso2is-rdbms-service
1727 namespace: $namespace
1728spec:
1729 type: ClusterIP
1730 selector:
1731 deployment: wso2is-mysql
1732 ports:
1733 - name: mysql-port
1734 port: 3306
1735 targetPort: 3306
1736 protocol: TCP
1737---
1738
1739apiVersion: v1
1740kind: Service
1741metadata:
1742 name: wso2is-is-service
1743 namespace: $namespace
1744 labels:
1745 deployment: wso2is-is
1746spec:
1747 selector:
1748 deployment: wso2is-is
1749 type: NodePort
1750 ports:
1751 - name: servlet-http
1752 port: 9763
1753 targetPort: 9763
1754 protocol: TCP
1755 - name: servlet-https
1756 port: 9443
1757 targetPort: 9443
1758 protocol: TCP
1759 nodePort: $NP_1
1760---
1761
1762apiVersion: apps/v1
1763kind: Deployment
1764metadata:
1765 name: wso2is-mysql-deployment
1766 namespace: $namespace
1767spec:
1768 replicas: 1
1769 selector:
1770 matchLabels:
1771 deployment: wso2is-mysql
1772 pod: wso2is
1773 template:
1774 metadata:
1775 labels:
1776 deployment: wso2is-mysql
1777 pod: wso2is
1778 spec:
1779 containers:
1780 - name: wso2is-mysql
1781 image: mysql:5.7
1782 livenessProbe:
1783 exec:
1784 command:
1785 - sh
1786 - -c
1787 - "mysqladmin ping -u root -p${MYSQL_ROOT_PASSWORD}"
1788 initialDelaySeconds: 60
1789 periodSeconds: 10
1790 readinessProbe:
1791 exec:
1792 command:
1793 - sh
1794 - -c
1795 - "mysqladmin ping -u root -p${MYSQL_ROOT_PASSWORD}"
1796 initialDelaySeconds: 60
1797 periodSeconds: 10
1798 imagePullPolicy: IfNotPresent
1799 securityContext:
1800 runAsUser: 999
1801 env:
1802 - name: MYSQL_ROOT_PASSWORD
1803 value: root
1804 - name: MYSQL_USER
1805 value: wso2carbon
1806 - name: MYSQL_PASSWORD
1807 value: wso2carbon
1808 ports:
1809 - containerPort: 3306
1810 protocol: TCP
1811 volumeMounts:
1812 - name: mysql-dbscripts
1813 mountPath: /docker-entrypoint-initdb.d
1814 args: ["--max-connections", "10000"]
1815 volumes:
1816 - name: mysql-dbscripts
1817 configMap:
1818 name: mysql-dbscripts
1819 serviceAccountName: "wso2svc-account"
1820---
1821
1822apiVersion: apps/v1
1823kind: Deployment
1824metadata:
1825 name: wso2is-is-deployment
1826 namespace: $namespace
1827spec:
1828 replicas: 1
1829 minReadySeconds: 30
1830 strategy:
1831 rollingUpdate:
1832 maxSurge: 1
1833 maxUnavailable: 0
1834 type: RollingUpdate
1835 selector:
1836 matchLabels:
1837 deployment: wso2is-is
1838 pod: wso2is
1839 template:
1840 metadata:
1841 labels:
1842 deployment: wso2is-is
1843 pod: wso2is
1844 spec:
1845 hostAliases:
1846 - ip: "127.0.0.1"
1847 hostnames:
1848 - "wso2is"
1849 containers:
1850 - name: wso2is-is
1851 image: docker.wso2.com/wso2is:5.7.0
1852 livenessProbe:
1853 exec:
1854 command:
1855 - /bin/sh
1856 - -c
1857 - nc -z localhost 9443
1858 initialDelaySeconds: 60
1859 periodSeconds: 10
1860 readinessProbe:
1861 exec:
1862 command:
1863 - /bin/sh
1864 - -c
1865 - nc -z localhost 9443
1866 initialDelaySeconds: 60
1867 periodSeconds: 10
1868 lifecycle:
1869 preStop:
1870 exec:
1871 command: ['sh', '-c', '${WSO2_SERVER_HOME}/bin/wso2server.sh stop']
1872 imagePullPolicy: Always
1873 securityContext:
1874 runAsUser: 802
1875 ports:
1876 - containerPort: 9763
1877 protocol: TCP
1878 - containerPort: 9443
1879 protocol: TCP
1880 volumeMounts:
1881 - name: identity-server-conf
1882 mountPath: /home/wso2carbon/wso2-config-volume/repository/conf
1883 - name: identity-server-conf-datasources
1884 mountPath: /home/wso2carbon/wso2-config-volume/repository/conf/datasources
1885 initContainers:
1886 - name: init-is
1887 image: busybox
1888 command: ['sh', '-c', 'echo -e "checking for the availability of MySQL"; while ! nc -z wso2is-rdbms-service 3306; do sleep 1; printf "-"; done; echo -e " >> MySQL started";']
1889 serviceAccountName: "wso2svc-account"
1890 imagePullSecrets:
1891 - name: wso2creds
1892 volumes:
1893 - name: identity-server-conf
1894 configMap:
1895 name: identity-server-conf
1896 - name: identity-server-conf-datasources
1897 configMap:
1898 name: identity-server-conf-datasources
1899---
1900
1901EOF
1902}
1903
1904function get_creds(){
1905 while [[ -z "$WSO2_SUBSCRIPTION_USERNAME" ]]
1906 do
1907 read -p "$(echoBold "Enter your WSO2 subscription username: ")" WSO2_SUBSCRIPTION_USERNAME
1908 if [[ -z "$WSO2_SUBSCRIPTION_USERNAME" ]]
1909 then
1910 echo "wso2-subscription-username cannot be empty"
1911 fi
1912 done
1913
1914 while [[ -z "$WSO2_SUBSCRIPTION_PASSWORD" ]]
1915 do
1916 read -sp "$(echoBold "Enter your WSO2 subscription password: ")" WSO2_SUBSCRIPTION_PASSWORD
1917 echo ""
1918 if [[ -z "$WSO2_SUBSCRIPTION_PASSWORD" ]]
1919 then
1920 echo "wso2-subscription-password cannot be empty"
1921 fi
1922 done
1923}
1924function validate_ip(){
1925 ip_check=$1
1926 if [[ $ip_check =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
1927 IFS='.'
1928 ip=$ip_check
1929 set -- $ip
1930 if [[ $1 -le 255 ]] && [[ $2 -le 255 ]] && [[ $3 -le 255 ]] && [[ $4 -le 255 ]]; then
1931 IFS=''
1932 NODE_IP=$ip_check
1933 else
1934 IFS=''
1935 echo "Invalid IP. Please try again."
1936 NODE_IP=""
1937 fi
1938 else
1939 echo "Invalid IP. Please try again."
1940 NODE_IP=""
1941 fi
1942}
1943function get_node_ip(){
1944 NODE_IP=$(kubectl get nodes -o jsonpath='{.items[*].status.addresses[?(@.type=="ExternalIP")].address}')
1945
1946 if [[ -z $NODE_IP ]]
1947 then
1948 if [[ $(kubectl config current-context)="minikube" ]]
1949 then
1950 NODE_IP=$(minikube ip)
1951 else
1952 echo "We could not find your cluster node-ip."
1953 while [[ -z "$NODE_IP" ]]
1954 do
1955 read -p "$(echo "Enter one of your cluster Node IPs to provision instant access to server: ")" NODE_IP
1956 if [[ -z "$NODE_IP" ]]
1957 then
1958 echo "cluster node ip cannot be empty"
1959 else
1960 validate_ip $NODE_IP
1961 fi
1962 done
1963 fi
1964 fi
1965 set -- $NODE_IP; NODE_IP=$1
1966}
1967function get_nodePorts(){
1968 LOWER=30000; UPPER=32767;
1969 if [ "$randomPort" == "True" ]; then
1970 NP_1=0;
1971 while [ $NP_1 -lt $LOWER ]
1972 do
1973 NP_1=$RANDOM
1974 let "NP_1 %= $UPPER"
1975 done
1976 fi
1977 echo -e "[INFO] nodePorts are set to $NP_1"
1978}
1979function progress_bar(){
1980 dep_status=$(kubectl get deployments -n wso2 -o jsonpath='{.items[?(@.spec.selector.matchLabels.pod=="wso2is")].status.conditions[?(@.type=="Available")].status}')
1981 pod_status=$(kubectl get pods -n wso2 -o jsonpath='{.items[?(@.metadata.labels.pod=="wso2is")].status.conditions[*].status}')
1982
1983 num_true_const=0; progress_unit="";time_proc=0;
1984
1985 arr_dep=($dep_status); arr_pod=($pod_status)
1986
1987 let "length_total= ${#arr_pod[@]} + ${#arr_dep[@]}";
1988
1989 echo ""
1990
1991 while [[ $num_true -lt $length_total ]]
1992 do
1993 sleep 4
1994 num_true=0
1995 dep_status=$(kubectl get deployments -n wso2 -o jsonpath='{.items[?(@.spec.selector.matchLabels.pod=="wso2is")].status.conditions[?(@.type=="Available")].status}')
1996 pod_status=$(kubectl get pods -n wso2 -o jsonpath='{.items[?(@.metadata.labels.pod=="wso2is")].status.conditions[*].status}')
1997
1998 arr_dep=($dep_status); arr_pod=($pod_status); let "length_total= ${#arr_pod[@]} + ${#arr_dep[@]}";
1999
2000 for ele_dep in $dep_status
2001 do
2002 if [ "$ele_dep" = "True" ]
2003 then
2004 let "num_true=num_true+1"
2005 fi
2006 done
2007
2008 for ele_pod in $pod_status
2009 do
2010 if [ "$ele_pod" = "True" ]
2011 then
2012 let "num_true=num_true+1"
2013 fi
2014 done
2015
2016 printf "Processing WSO2 Identity Server ... |"
2017
2018 printf "%-$((5 * ${length_total-1}))s| $(($num_true_const * 100/ $length_total))"; echo -en ' %\r'
2019
2020 printf "Processing WSO2 Identity Server ... |"
2021 s=$(printf "%-$((5 * ${num_true_const}))s" "H")
2022 echo -en "${s// /H}"
2023
2024 printf "%-$((5 * $(($length_total - $num_true_const))))s| $((100 * $(($num_true_const))/ $length_total))"; echo -en ' %\r '
2025
2026 if [ $num_true -ne $num_true_const ]
2027 then
2028 i=0
2029 while [[ $i -lt $((5 * $((${num_true} - ${num_true_const})))) ]]
2030 do
2031 let "i=i+1"
2032 progress_unit=$progress_unit"H"
2033 printf "Processing WSO2 Identity Server ... |"
2034 echo -n $progress_unit
2035 printf "%-$((5 * $((${length_total} - ${num_true_const})) - $i))s| $(($(( 100 * $(($num_true_const))/ $length_total)) + 2 * $i ))"; echo -en ' %\r '
2036 sleep 0.25
2037 done
2038 num_true_const=$num_true
2039 time_proc=0
2040 else
2041 let "time_proc=time_proc + 5"
2042 fi
2043 printf "Processing WSO2 Identity Server ... |"
2044
2045 printf "%-$((5 * ${length_total-1}))s| $(($num_true_const * 100/ $length_total))"; echo -en ' %\r '
2046
2047 printf "Processing WSO2 Identity Server ... |"
2048 s=$(printf "%-$((5 * ${num_true_const}))s" "H")
2049 echo -en "${s// /H}"
2050
2051 printf "%-$((5 * $(($length_total - $num_true_const))))s| $((100 * $(($num_true_const))/ $length_total))"; echo -en ' % \r'
2052
2053 sleep 1
2054
2055 if [[ $time_proc -gt 250 ]]
2056 then
2057 echoBold "\nSomething went wrong! Please Follow <FAQ> for more information\n"
2058 exit 2
2059 fi
2060 done
2061
2062 echo -e "\n"
2063
2064}
2065function deploy(){
2066
2067 #checking for required tools
2068 if [[ ! $(which kubectl) ]]
2069 then
2070 display_msg "Please install Kubernetes command-line tool (kubectl) before you start with the setup\n"
2071 fi
2072
2073 if [[ ! $(which base64) ]]
2074 then
2075 display_msg "Please install base64 before you start with the setup\n"
2076 fi
2077
2078 echoBold "Checking for an enabled cluster... Your patience is appreciated..."
2079 cluster_isReady=$(kubectl cluster-info) > /dev/null 2>&1 || true
2080
2081 if [[ ! $cluster_isReady == *"KubeDNS"* ]]
2082 then
2083 echoBold "Done.\n"
2084 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"
2085 fi
2086 echoBold "Done.\n"
2087
2088 #displaying wso2 product name
2089 product_name
2090
2091 if test -f $TG_PROP; then
2092 source $TG_PROP
2093 else
2094 get_creds # get wso2 subscription parameters
2095 fi
2096
2097 # getting cluster node ip
2098 get_node_ip
2099
2100 # create and encode username/password pair
2101 auth="$WSO2_SUBSCRIPTION_USERNAME:$WSO2_SUBSCRIPTION_PASSWORD"
2102 authb64=`echo -n $auth | base64`
2103
2104 # create authorisation code
2105 authstring='{"auths":{"docker.wso2.com": {"username":"'${WSO2_SUBSCRIPTION_USERNAME}'","password":"'${WSO2_SUBSCRIPTION_PASSWORD}'","email":"'${WSO2_SUBSCRIPTION_USERNAME}'","auth":"'${authb64}'"}}}'
2106
2107 # encode in base64
2108 secdata=`echo -n $authstring | base64`
2109
2110 for i in $secdata; do
2111 str_sec=$str_sec$i
2112 done
2113
2114 # if TG randomPort else default
2115 get_nodePorts
2116
2117 #create kubernetes object yaml
2118 create_yaml
2119
2120 if ! test -f $TG_PROP; then
2121 echoBold "\nDeploying WSO2 Identity Server\n"
2122
2123 # create kubernetes deployment
2124 kubectl create -f ${k8s_obj_file}
2125
2126 # waiting until deployment is ready
2127 progress_bar
2128
2129 echoBold "Successfully deployed WSO2 Identity Server.\n\n"
2130
2131 echoBold "1. Try navigating to https://$NODE_IP:30443/carbon/ from your favourite browser using \n"
2132 echoBold "\tusername: admin\n"
2133 echoBold "\tpassword: admin\n"
2134 echoBold "2. Follow <getting-started-link> to start using WSO2 Identity Server.\n\n "
2135 fi
2136}
2137
2138deploy
2139# arg=$1
2140# if [[ -z $arg ]]
2141# then
2142# echoBold "Expected parameter is missing\n"
2143# usage
2144# else
2145# case $arg in
2146# -d|--deploy)
2147# deploy
2148# ;;
2149# -u|--undeploy)
2150# undeploy
2151# ;;
2152# -h|--help)
2153# usage
2154# ;;
2155# *)
2156# echoBold "Invalid parameter\n"
2157# usage
2158# ;;
2159# esac
2160# fi