KYLIN-2195 Rename spring/security related properties
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/2cca348c Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/2cca348c Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/2cca348c Branch: refs/heads/KYLIN-1875 Commit: 2cca348c608aa8674572ee6bee53fbf48e40e4df Parents: 826f23f Author: Li Yang <liy...@apache.org> Authored: Wed Nov 23 11:55:48 2016 +0800 Committer: Li Yang <liy...@apache.org> Committed: Wed Nov 23 17:08:29 2016 +0800 ---------------------------------------------------------------------- build/conf/kylin.properties | 179 ++++++++----------- .../common/BackwardCompatibilityConfig.java | 13 +- .../org/apache/kylin/common/KylinConfig.java | 6 +- .../apache/kylin/common/KylinConfigBase.java | 14 +- .../org/apache/kylin/common/KylinConfigExt.java | 4 +- .../kylin-backward-compatibility.properties | 37 +++- .../apache/kylin/common/KylinConfigTest.java | 18 +- .../test_case_data/localmeta/kylin.properties | 34 ++-- examples/test_case_data/sandbox/hive-site.xml | 6 +- .../test_case_data/sandbox/kylin.properties | 13 +- server/src/main/resources/kylinSecurity.xml | 46 ++--- webapp/app/js/controllers/cubes.js | 2 +- webapp/app/js/services/kylinProperties.js | 8 +- 13 files changed, 193 insertions(+), 187 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/build/conf/kylin.properties ---------------------------------------------------------------------- diff --git a/build/conf/kylin.properties b/build/conf/kylin.properties index 7cdc1c5..1409394 100644 --- a/build/conf/kylin.properties +++ b/build/conf/kylin.properties @@ -15,21 +15,32 @@ # limitations under the License. # -### SERVICE ### +### METADATA | ENV ### + +# The metadata store in hbase +kylin.metadata.url=kylin_metadata@hbase + +# Working folder in HDFS, make sure user has the right access to the hdfs directory +kylin.env.hdfs-working-dir=/kylin + +# DEV|QA|PROD. DEV will turn on some dev features, QA and PROD has no difference in terms of functions. +kylin.env=QA + + +### SERVER | WEB ### # Kylin server mode, valid value [all, query, job] kyin.server.mode=all -# Optional information for the owner of kylin platform, it can be your team's email -# Currently it will be attached to each kylin's htable attribute -kylin.storage.hbase.owner-tag=who...@kylin.apache.org - # List of web servers in use, this enables one web server instance to sync up with other servers. kylin.server.cluster-servers=localhost:7070 # Display timezone on UI,format like[GMT+N or GMT-N] kylin.web.timezone=GMT+8 +kylin.web.cross-domain-enabled=true + + ### SOURCE ### # Hive client, valid value [cli, beeline] @@ -40,16 +51,17 @@ kylin.source.hive.client=cli kylin.source.hive.keep-flat-table=false -### STORAGE ### +# Hive database name for putting the intermediate flat tables +kylin.source.hive.database-for-flat-table=default -# The metadata store in hbase -kylin.metadata.url=kylin_metadata@hbase +# Whether redistribute the intermediate flat table before building +kylin.source.hive.redistribute-flat-table=true -# The storage for final cube file in hbase -kylin.storage.url=hbase -# Working folder in HDFS, make sure user has the right access to the hdfs directory -kylin.env.hdfs-working-dir=/kylin +### STORAGE ### + +# The storage for cube is hbase +kylin.storage.url=hbase # Compression codec for htable, valid value [none, snappy, lzo, gzip, lz4] kylin.storage.hbase.compression-codec=none @@ -68,72 +80,67 @@ kylin.storage.hbase.hfile-size-gb=2 kylin.storage.hbase.min-region-count=1 kylin.storage.hbase.max-region-count=500 -### JOB ### - -# max job retry on error, default 0: no retry -kylin.job.retry=0 +# Optional information for the owner of kylin platform, it can be your team's email +# Currently it will be attached to each kylin's htable attribute +kylin.storage.hbase.owner-tag=who...@kylin.apache.org -# If true, job engine will not assume that hadoop CLI reside on the same server as it self -# you will have to specify kylin.job.remote-cli-hostname, kylin.job.remote-cli-username and kylin.job.remote-cli-password -# It should not be set to "true" unless you're NOT running Kylin.sh on a hadoop client machine -# (Thus kylin instance has to ssh to another real hadoop client machine to execute hbase,hive,hadoop commands) -kylin.job.use-remote-cli=false +kylin.storage.hbase.coprocessor-mem-gb=3 -# Only necessary when kylin.job.use-remote-cli=true -kylin.job.remote-cli-hostname= -kylin.job.remote-cli-port=22 +# The default coprocessor timeout is (hbase.rpc.timeout * 0.9) / 1000 seconds, +# You can set it to a smaller value. 0 means use default. +# kylin.storage.hbase.coprocessor-timeout-seconds=0 -# Only necessary when kylin.job.use-remote-cli=true -kylin.job.remote-cli-username= -# Only necessary when kylin.job.use-remote-cli=true -kylin.job.remote-cli-password= +### JOB ### -# Used by test cases to prepare synthetic data for sample cube -kylin.job.remote-cli-working-dir=/tmp/kylin +# Max job retry on error, default 0: no retry +kylin.job.retry=0 # Max count of concurrent jobs running kylin.job.max-concurrent-jobs=10 -# Time interval to check hadoop job status -kylin.engine.mr.yarn-check-interval-seconds=10 - -# Hive database name for putting the intermediate flat tables -kylin.source.hive.database-for-flat-table=default - -# Whether redistribute the intermediate flat table before building -kylin.source.hive.redistribute-flat-table=true - # The percentage of the sampling, default 100% kylin.job.sampling-percentage=100 # Whether get job status from resource manager with kerberos authentication kylin.job.status.with.kerberos=false +# Timeout in seconds +kylin.job.step.timeout=7200 + +# If true, will send email notification on job complete +kylin.job.notification-enabled=false +kylin.job.notification-mail-host= +kylin.job.notification-mail-username= +kylin.job.notification-mail-password= +kylin.job.notification-mail-sender= + + +### ENGINE ### + +# Time interval to check hadoop job status +kylin.engine.mr.yarn-check-interval-seconds=10 + kylin.engine.mr.reduce-input-mb=500 kylin.engine.mr.max-reducer-number=500 kylin.engine.mr.mapper-input-rows=1000000 -kylin.job.step.timeout=7200 - -### CUBE ### +### CUBE | DICTIONARY ### # 'auto', 'inmem', 'layer' or 'random' for testing kylin.cube.algorithm=auto -kylin.cube.algorithm.layer-or-inmem-threshold=8 +# A smaller threshold prefers layer, a larger threshold prefers in-mem +kylin.cube.algorithm.layer-or-inmem-threshold=7 kylin.cube.aggrgroup.max-combination=4096 -kylin.dictionary.max.cardinality=5000000 - kylin.snapshot.max-mb=300 - ### QUERY ### kylin.query.scan-threshold=10000000 @@ -141,84 +148,42 @@ kylin.query.scan-threshold=10000000 kylin.query.udf.version=org.apache.kylin.query.udf.VersionUDF # 3G -kylin.query.memory-budget=3221225472 - -kylin.storage.hbase.coprocessor-mem-gb=3 - -# the default coprocessor timeout is (hbase.rpc.timeout * 0.9) / 1000 seconds, -# you can set it to a smaller value. 0 means use default. -# kylin.storage.hbase.coprocessor-timeout-seconds=0 - -# Enable/disable ACL check for cube query -kylin.query.security-enabled=true +kylin.query.memory-budget-bytes=3221225472 kylin.query.cache-enabled=true + ### SECURITY ### # Spring security profile, options: testing, ldap, saml # with "testing" profile, user can use pre-defined name/pwd like KYLIN/ADMIN to login kylin.security.profile=testing -### SECURITY ### # Default roles and admin roles in LDAP, for ldap and saml -acl.defaultRole=ROLE_ANALYST,ROLE_MODELER -acl.adminRole=ROLE_ADMIN +kylin.security.acl.default-role=ROLE_ANALYST,ROLE_MODELER +kylin.security.acl.admin-role=ROLE_ADMIN # LDAP authentication configuration -ldap.server=ldap://ldap_server:389 -ldap.username= -ldap.password= +kylin.security.ldap.connection-server=ldap://ldap_server:389 +kylin.security.ldap.connection-username= +kylin.security.ldap.connection-password= # LDAP user account directory; -ldap.user.searchBase= -ldap.user.searchPattern= -ldap.user.groupSearchBase= +kylin.security.ldap.user-search-base= +kylin.security.ldap.user-search-pattern= +kylin.security.ldap.user-group-search-base= # LDAP service account directory -ldap.service.searchBase= -ldap.service.searchPattern= -ldap.service.groupSearchBase= +kylin.security.ldap.service-search-base= +kylin.security.ldap.service-search-pattern= +kylin.security.ldap.service-group-search-base= ## SAML configurations for SSO # SAML IDP metadata file location -saml.metadata.file=classpath:sso_metadata.xml -saml.metadata.entityBaseURL=https://hostname/kylin -saml.context.scheme=https -saml.context.serverName=hostname -saml.context.serverPort=443 -saml.context.contextPath=/kylin - -### MAIL ### +kylin.security.saml.metadata-file=classpath:sso_metadata.xml +kylin.security.saml.metadata-entity-base-url=https://hostname/kylin +kylin.security.saml.context-scheme=https +kylin.security.saml.context-server-name=hostname +kylin.security.saml.context-server-port=443 +kylin.security.saml.context-path=/kylin -# If true, will send email notification; -kylin.job.notification-enabled=false -kylin.job.notification-mail-host= -kylin.job.notification-mail-username= -kylin.job.notification-mail-password= -kylin.job.notification-mail-sender= -### WEB ### - -# Help info, format{name|displayName|link}, optional -kylin.web.help.length=4 -kylin.web.help.0=start|Getting Started| -kylin.web.help.1=odbc|ODBC Driver| -kylin.web.help.2=tableau|Tableau Guide| -kylin.web.help.3=onboard|Cube Design Tutorial| - -# Guide user how to build streaming cube -kylin.web.streaming.guide=http://kylin.apache.org/ - -# Hadoop url link, optional -kylin.web.hadoop= -#job diagnostic url link, optional -kylin.web.diagnostic= -#contact mail on web page, optional -kylin.web.contact_mail= - -kylin.web.cross-domain-enabled=true - -### OTHER ### - -# Env DEV|QA|PROD -kylin.env=QA http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java ---------------------------------------------------------------------- diff --git a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java index cbeb73a..664d9bb 100644 --- a/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java +++ b/core-common/src/main/java/org/apache/kylin/common/BackwardCompatibilityConfig.java @@ -72,6 +72,13 @@ public class BackwardCompatibilityConfig { for (Entry<Object, Object> kv : props.entrySet()) { String key = (String) kv.getKey(); String value = (String) kv.getValue(); + + if (key.equals(value)) + continue; // no change + + if (value.contains(key)) + throw new IllegalStateException("New key '" + value + "' contains old key '" + key + "' causes trouble to repeated find & replace"); + if (value.endsWith(".")) old2newPrefix.put(key, value); else @@ -89,7 +96,7 @@ public class BackwardCompatibilityConfig { for (String oldPrefix : old2newPrefix.keySet()) { if (key.startsWith(oldPrefix)) { String newPrefix = old2newPrefix.get(oldPrefix); - newKey = newPrefix + key.substring(oldPrefix.length() + 1); + newKey = newPrefix + key.substring(oldPrefix.length()); logger.warn("Config '{}' is deprecated, use '{}' instead", key, newKey); return newKey; } @@ -188,6 +195,10 @@ public class BackwardCompatibilityConfig { String name = f.getName(); if (name.startsWith(KYLIN_BACKWARD_COMPATIBILITY)) return false; + else if (name.equals("KylinConfigTest.java")) + return false; + else if (name.endsWith("-site.xml")) + return false; else return name.endsWith(".java") || name.endsWith(".js") || name.endsWith(".sh") || name.endsWith(".properties") || name.endsWith(".xml"); } http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java ---------------------------------------------------------------------- diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java index 9543fc7..73e5aeb 100644 --- a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java +++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java @@ -264,12 +264,10 @@ public class KylinConfig extends KylinConfigBase { private KylinConfig() { super(); - logger.info("New KylinConfig " + System.identityHashCode(this)); - KylinConfig.dumpStackTrace(); } - protected KylinConfig(Properties props) { - super(props); + protected KylinConfig(Properties props, boolean force) { + super(props, force); } public void writeProperties(File file) throws IOException { http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java ---------------------------------------------------------------------- diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java index db4f365..6131013 100644 --- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java +++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java @@ -66,7 +66,7 @@ abstract public class KylinConfigBase implements Serializable { // ============================================================================ - private volatile Properties properties = new Properties(); + volatile Properties properties = new Properties(); public KylinConfigBase() { this(new Properties()); @@ -76,6 +76,10 @@ abstract public class KylinConfigBase implements Serializable { this.properties = BCC.check(props); } + protected KylinConfigBase(Properties props, boolean force) { + this.properties = force ? props : BCC.check(props); + } + final protected String getOptional(String prop) { return getOptional(prop, null); } @@ -182,7 +186,7 @@ abstract public class KylinConfigBase implements Serializable { */ @Deprecated public String getHiveUrl() { - return getOptional("kylin.source.hive.url", ""); + return getOptional("kylin.source.hive.connection-url", ""); } /** @@ -190,7 +194,7 @@ abstract public class KylinConfigBase implements Serializable { */ @Deprecated public String getHiveUser() { - return getOptional("kylin.source.hive.user", ""); + return getOptional("kylin.source.hive.connection-user", ""); } /** @@ -198,7 +202,7 @@ abstract public class KylinConfigBase implements Serializable { */ @Deprecated public String getHivePassword() { - return getOptional("kylin.source.hive.password", ""); + return getOptional("kylin.source.hive.connection-password", ""); } public String getHdfsWorkingDirectory() { @@ -553,7 +557,7 @@ abstract public class KylinConfigBase implements Serializable { } public long getQueryMemBudget() { - return Long.parseLong(this.getOptional("kylin.query.memory-budget", String.valueOf(3L * 1024 * 1024 * 1024))); + return Long.parseLong(this.getOptional("kylin.query.memory-budget-bytes", String.valueOf(3L * 1024 * 1024 * 1024))); } public double getQueryCoprocessorMemGB() { http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java ---------------------------------------------------------------------- diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java index 287b390..6062d91 100644 --- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java +++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigExt.java @@ -39,7 +39,7 @@ public class KylinConfigExt extends KylinConfig { } private KylinConfigExt(KylinConfig base, Map<String, String> overrides) { - super(base.getAllProperties()); + super(base.getAllProperties(), true); if (base.getClass() != KylinConfig.class) { throw new IllegalArgumentException(); } @@ -48,7 +48,7 @@ public class KylinConfigExt extends KylinConfig { } private KylinConfigExt(KylinConfigExt ext, Map<String, String> overrides) { - super(ext.base.getAllProperties()); + super(ext.base.getAllProperties(), true); this.base = ext.base; this.overrides = BCC.check(overrides); } http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/main/resources/kylin-backward-compatibility.properties ---------------------------------------------------------------------- diff --git a/core-common/src/main/resources/kylin-backward-compatibility.properties b/core-common/src/main/resources/kylin-backward-compatibility.properties index 563ec26..2ad479d 100644 --- a/core-common/src/main/resources/kylin-backward-compatibility.properties +++ b/core-common/src/main/resources/kylin-backward-compatibility.properties @@ -102,9 +102,9 @@ kylin.hive.beeline.params=kylin.source.hive.beeline-params kylin.hive.create.flat.table.method=kylin.source.hive.create-flat-table-method #deprecated -hive.url=kylin.source.hive.url -hive.user=kylin.source.hive.user -hive.password=kylin.source.hive.password +hive.url=kylin.source.hive.connection-url +hive.user=kylin.source.hive.connection-user +hive.password=kylin.source.hive.connection-password hive.table.location.=kylin.source.hive.table-location. @@ -154,7 +154,7 @@ kylin.query.transformers=kylin.query.transformers kylin.query.cache.enabled=kylin.query.cache-enabled kylin.query.cache.threshold.duration=kylin.query.cache-threshold-duration kylin.query.cache.threshold.scancount=kylin.query.cache-threshold-scan-count -kylin.query.mem.budget=kylin.query.memory-budget +kylin.query.mem.budget=kylin.query.memory-budget-bytes kylin.query.ignore_unknown_function=kylin.query.ignore-unknown-function kylin.query.dim.distinct.max=kylin.query.max-dimension-count-distinct kylin.query.security.enabled=kylin.query.security-enabled @@ -174,11 +174,40 @@ kylin.query.metrics.enabled=kylin.server.query-metrics-enabled kylin.query.metrics.percentiles.intervals=kylin.server.query-metrics-percentiles-intervals +### SECURITY ### + +kylin.security.profile=kylin.security.profile +acl.defaultRole=kylin.security.acl.default-role +acl.adminRole=kylin.security.acl.admin-role +ldap.server=kylin.security.ldap.connection-server +ldap.username=kylin.security.ldap.connection-username +ldap.password=kylin.security.ldap.connection-password +ldap.user.searchBase=kylin.security.ldap.user-search-base +ldap.user.searchPattern=kylin.security.ldap.user-search-pattern +ldap.user.groupSearchBase=kylin.security.ldap.user-group-search-base +ldap.service.searchBase=kylin.security.ldap.service-search-base +ldap.service.searchPattern=kylin.security.ldap.service-search-pattern +ldap.service.groupSearchBase=kylin.security.ldap.service-group-search-base +saml.metadata.file=kylin.security.saml.metadata-file +saml.metadata.entityBaseURL=kylin.security.saml.metadata-entity-base-url +saml.context.scheme=kylin.security.saml.context-scheme +saml.context.serverName=kylin.security.saml.context-server-name +saml.context.serverPort=kylin.security.saml.context-server-port +saml.context.contextPath=kylin.security.saml.context-path + + ### WEB ### kylin.rest.timezone=kylin.web.timezone crossdomain.enable=kylin.web.cross-domain-enabled +kylin.web.streaming.guide=kylin.web.link-streaming-guide +kylin.web.hadoop=kylin.web.link-hadoop +kylin.web.diagnostic=kylin.web.link-diagnostic +kylin.web.contact_mail=kylin.web.contact-mail +kylin.web.help.=kylin.web.help. +#deprecated +kylin.web.hive.limit=kylin.web.hive-limit ### TEST ### http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/core-common/src/test/java/org/apache/kylin/common/KylinConfigTest.java ---------------------------------------------------------------------- diff --git a/core-common/src/test/java/org/apache/kylin/common/KylinConfigTest.java b/core-common/src/test/java/org/apache/kylin/common/KylinConfigTest.java index 886d8ee..d05f58b 100644 --- a/core-common/src/test/java/org/apache/kylin/common/KylinConfigTest.java +++ b/core-common/src/test/java/org/apache/kylin/common/KylinConfigTest.java @@ -18,10 +18,7 @@ package org.apache.kylin.common; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; +import static org.junit.Assert.*; import java.util.Map; @@ -56,7 +53,7 @@ public class KylinConfigTest extends LocalFileMetadataTestCase { @Test public void testBackwardCompatibility() { KylinConfig config = KylinConfig.getInstanceFromEnv(); - final String oldk = "kylin.test.bcc.new.key"; + final String oldk = "kylin.test.bcc.old.key"; final String newk = "kylin.test.bcc.new.key"; assertNull(config.getOptional(oldk)); @@ -72,4 +69,15 @@ public class KylinConfigTest extends LocalFileMetadataTestCase { config.setProperty(oldk, "2"); assertEquals(config.getOptional(newk), "2"); } + + @Test + public void testExtShareTheBase() { + KylinConfig config = KylinConfig.getInstanceFromEnv(); + Map<String, String> override = Maps.newHashMap(); + KylinConfig configExt = KylinConfigExt.createInstance(config, override); + + assertTrue(config.properties == configExt.properties); + config.setProperty("1234", "1234"); + assertEquals("1234", configExt.getOptional("1234")); + } } http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/examples/test_case_data/localmeta/kylin.properties ---------------------------------------------------------------------- diff --git a/examples/test_case_data/localmeta/kylin.properties b/examples/test_case_data/localmeta/kylin.properties index 8854ac1..1dfac32 100644 --- a/examples/test_case_data/localmeta/kylin.properties +++ b/examples/test_case_data/localmeta/kylin.properties @@ -89,32 +89,32 @@ kylin.query.transformers=org.apache.kylin.rest.util.KeywordDefaultDirtyHack kylin.security.profile=testing # Default roles and admin roles in LDAP, for ldap and saml -acl.defaultRole=ROLE_ANALYST,ROLE_MODELER -acl.adminRole=ROLE_ADMIN +kylin.security.acl.default-role=ROLE_ANALYST,ROLE_MODELER +kylin.security.acl.admin-role=ROLE_ADMIN # LDAP authentication configuration -ldap.server=ldap://ldap_server:389 -ldap.username= -ldap.password= +kylin.security.ldap.connection-server=ldap://ldap_server:389 +kylin.security.ldap.connection-username= +kylin.security.ldap.connection-password= # LDAP user account directory; -ldap.user.searchBase= -ldap.user.searchPattern= -ldap.user.groupSearchBase= +kylin.security.ldap.user-search-base= +kylin.security.ldap.user-search-pattern= +kylin.security.ldap.user-group-search-base= # LDAP service account directory -ldap.service.searchBase= -ldap.service.searchPattern= -ldap.service.groupSearchBase= +kylin.security.ldap.service-search-base= +kylin.security.ldap.service-search-pattern= +kylin.security.ldap.service-group-search-base= # SAML configurations for SSO # SAML IDP metadata file location -saml.metadata.file=classpath:sso_metadata.xml -saml.metadata.entityBaseURL=https://hostname/kylin -saml.context.scheme=https -saml.context.serverName=hostname -saml.context.serverPort=443 -saml.context.contextPath=/kylin +kylin.security.saml.metadata-file=classpath:sso_metadata.xml +kylin.security.saml.metadata-entity-base-url=https://hostname/kylin +kylin.security.saml.context-scheme=https +kylin.security.saml.context-server-name=hostname +kylin.security.saml.context-server-port=443 +kylin.security.saml.context-path=/kylin ### MAIL ### # If true, will send email notification; http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/examples/test_case_data/sandbox/hive-site.xml ---------------------------------------------------------------------- diff --git a/examples/test_case_data/sandbox/hive-site.xml b/examples/test_case_data/sandbox/hive-site.xml index d4b7745..1e78107 100644 --- a/examples/test_case_data/sandbox/hive-site.xml +++ b/examples/test_case_data/sandbox/hive-site.xml @@ -118,7 +118,7 @@ <property> <name>hive.conf.restricted.list</name> - <value>hive.security.authenticator.manager,hive.security.authorization.manager,kylin.source.hive.users.in.admin.role</value> + <value>hive.security.authenticator.manager,hive.security.authorization.manager,hive.users.in.admin.role</value> </property> <property> @@ -722,12 +722,12 @@ </property> <property> - <name>kylin.source.hive.user.install.directory</name> + <name>hive.user.install.directory</name> <value>/user/</value> </property> <property> - <name>kylin.source.hive.users.in.admin.role</name> + <name>hive.users.in.admin.role</name> <value>hue,hive</value> </property> http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/examples/test_case_data/sandbox/kylin.properties ---------------------------------------------------------------------- diff --git a/examples/test_case_data/sandbox/kylin.properties b/examples/test_case_data/sandbox/kylin.properties index 3c066a6..dc7132a 100644 --- a/examples/test_case_data/sandbox/kylin.properties +++ b/examples/test_case_data/sandbox/kylin.properties @@ -128,8 +128,8 @@ kylin.query.security-enabled=true kylin.security.profile=testing # Default roles and admin roles in LDAP, for ldap and saml -acl.defaultRole=ROLE_ANALYST,ROLE_MODELER -acl.adminRole=ROLE_ADMIN +kylin.security.acl.default-role=ROLE_ANALYST,ROLE_MODELER +kylin.security.acl.admin-role=ROLE_ADMIN ### MAIL ### @@ -146,15 +146,6 @@ kylin.web.help.1=odbc|ODBC Driver| kylin.web.help.2=tableau|Tableau Guide| kylin.web.help.3=onboard|Cube Design Tutorial| -# Guide user how to build streaming cube -kylin.web.streaming.guide=http://kylin.apache.org/ - -# Hadoop url link, optional -kylin.web.hadoop= -#job diagnostic url link, optional -kylin.web.diagnostic= -#contact mail on web page, optional -kylin.web.contact_mail= ### OTHER ### http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/server/src/main/resources/kylinSecurity.xml ---------------------------------------------------------------------- diff --git a/server/src/main/resources/kylinSecurity.xml b/server/src/main/resources/kylinSecurity.xml index 40481ce..3f4abdc 100644 --- a/server/src/main/resources/kylinSecurity.xml +++ b/server/src/main/resources/kylinSecurity.xml @@ -63,9 +63,9 @@ <beans profile="ldap,saml"> <bean id="ldapSource" class="org.springframework.security.ldap.DefaultSpringSecurityContextSource"> - <constructor-arg value="${ldap.server}" /> - <property name="userDn" value="${ldap.username}" /> - <property name="password" value="${ldap.password}" /> + <constructor-arg value="${kylin.security.ldap.connection-server}" /> + <property name="userDn" value="${kylin.security.ldap.connection-username}" /> + <property name="password" value="${kylin.security.ldap.connection-password}" /> </bean> <bean id="kylinUserAuthProvider" class="org.apache.kylin.rest.security.KylinAuthenticationProvider"> @@ -76,8 +76,8 @@ <constructor-arg ref="ldapSource" /> <property name="userSearch"> <bean id="userSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch"> - <constructor-arg index="0" value="${ldap.user.searchBase}" /> - <constructor-arg index="1" value="${ldap.user.searchPattern}" /> + <constructor-arg index="0" value="${kylin.security.ldap.user-search-base}" /> + <constructor-arg index="1" value="${kylin.security.ldap.user-search-pattern}" /> <constructor-arg index="2" ref="ldapSource" /> </bean> </property> @@ -86,9 +86,9 @@ <constructor-arg> <bean class="org.apache.kylin.rest.security.AuthoritiesPopulator"> <constructor-arg index="0" ref="ldapSource" /> - <constructor-arg index="1" value="${ldap.user.groupSearchBase}" /> - <constructor-arg index="2" value="${acl.adminRole}" /> - <constructor-arg index="3" value="${acl.defaultRole}" /> + <constructor-arg index="1" value="${kylin.security.ldap.user-group-search-base}" /> + <constructor-arg index="2" value="${kylin.security.acl.admin-role}" /> + <constructor-arg index="3" value="${kylin.security.acl.default-role}" /> </bean> </constructor-arg> </bean> @@ -103,8 +103,8 @@ <constructor-arg ref="ldapSource" /> <property name="userSearch"> <bean id="userSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch"> - <constructor-arg index="0" value="${ldap.service.searchBase}" /> - <constructor-arg index="1" value="${ldap.service.searchPattern}" /> + <constructor-arg index="0" value="${kylin.security.ldap.service-search-base}" /> + <constructor-arg index="1" value="${kylin.security.ldap.service-search-pattern}" /> <constructor-arg index="2" ref="ldapSource" /> </bean> </property> @@ -113,9 +113,9 @@ <constructor-arg> <bean class="org.apache.kylin.rest.security.AuthoritiesPopulator"> <constructor-arg index="0" ref="ldapSource" /> - <constructor-arg index="1" value="${ldap.service.groupSearchBase}" /> - <constructor-arg index="2" value="${acl.adminRole}" /> - <constructor-arg index="3" value="${acl.defaultRole}" /> + <constructor-arg index="1" value="${kylin.security.ldap.service-group-search-base}" /> + <constructor-arg index="2" value="${kylin.security.acl.admin-role}" /> + <constructor-arg index="3" value="${kylin.security.acl.default-role}" /> </bean> </constructor-arg> </bean> @@ -288,7 +288,7 @@ <property name="idpDiscoveryEnabled" value="false"/> </bean> </property> - <property name="entityBaseURL" value = "${saml.metadata.entityBaseURL}"/> + <property name="entityBaseURL" value = "${kylin.security.saml.metadata-entity-base-url}"/> </bean> </constructor-arg> </bean> @@ -331,14 +331,14 @@ <bean id="ldapUserAuthoritiesPopulator" class="org.apache.kylin.rest.security.AuthoritiesPopulator"> <constructor-arg index="0" ref="ldapSource" /> - <constructor-arg index="1" value="${ldap.user.groupSearchBase}" /> - <constructor-arg index="2" value="${acl.adminRole}" /> - <constructor-arg index="3" value="${acl.defaultRole}" /> + <constructor-arg index="1" value="${kylin.security.ldap.user-group-search-base}" /> + <constructor-arg index="2" value="${kylin.security.acl.admin-role}" /> + <constructor-arg index="3" value="${kylin.security.acl.default-role}" /> </bean> <bean id="userSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch"> - <constructor-arg index="0" value="${ldap.user.searchBase}" /> - <constructor-arg index="1" value="${ldap.user.searchPattern}" /> + <constructor-arg index="0" value="${kylin.security.ldap.user-search-base}" /> + <constructor-arg index="1" value="${kylin.security.ldap.user-search-pattern}" /> <constructor-arg index="2" ref="ldapSource" /> </bean> @@ -370,11 +370,11 @@ <!-- Provider of a SAML Context behind a LoadBanlancer or reverse proxy --> <bean id="contextProvider" class="org.springframework.security.saml.context.SAMLContextProviderLB"> - <property name="scheme" value="${saml.context.scheme}"/> - <property name="serverName" value="${saml.context.serverName}"/> - <property name="serverPort" value="${saml.context.serverPort}"/> + <property name="scheme" value="${kylin.security.saml.context-scheme}"/> + <property name="serverName" value="${kylin.security.saml.context-server-name}"/> + <property name="serverPort" value="${kylin.security.saml.context-server-port}"/> <property name="includeServerPortInRequestURL" value="false"/> - <property name="contextPath" value="${saml.context.contextPath}"/> + <property name="contextPath" value="${kylin.security.saml.context-path}"/> </bean> http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/webapp/app/js/controllers/cubes.js ---------------------------------------------------------------------- diff --git a/webapp/app/js/controllers/cubes.js b/webapp/app/js/controllers/cubes.js index f735fb8..b672d3f 100644 --- a/webapp/app/js/controllers/cubes.js +++ b/webapp/app/js/controllers/cubes.js @@ -683,7 +683,7 @@ var jobSubmitCtrl = function ($scope, $modalInstance, CubeService, MessageServic var streamingBuildCtrl = function ($scope, $modalInstance,kylinConfig) { $scope.kylinConfig = kylinConfig; - var streamingGuildeUrl = kylinConfig.getProperty("kylin.web.streaming.guide"); + var streamingGuildeUrl = kylinConfig.getProperty("kylin.web.link-streaming-guide"); $scope.streamingBuildUrl = streamingGuildeUrl?streamingGuildeUrl:"http://kylin.apache.org/"; $scope.cancel = function () { http://git-wip-us.apache.org/repos/asf/kylin/blob/2cca348c/webapp/app/js/services/kylinProperties.js ---------------------------------------------------------------------- diff --git a/webapp/app/js/services/kylinProperties.js b/webapp/app/js/services/kylinProperties.js index 1a12357..645ed2f 100644 --- a/webapp/app/js/services/kylinProperties.js +++ b/webapp/app/js/services/kylinProperties.js @@ -65,7 +65,7 @@ KylinApp.service('kylinConfig', function (AdminService, $log) { } this.getHiveLimit = function () { - this.hiveLimit = this.getProperty("kylin.web.hive.limit"); + this.hiveLimit = this.getProperty("kylin.web.hive-limit"); if (!this.hiveLimit) { return 20; } @@ -91,9 +91,9 @@ KylinApp.service('kylinConfig', function (AdminService, $log) { this.initWebConfigInfo = function () { try { - Config.reference_links.hadoop.link = this.getProperty("kylin.web.hadoop").trim(); - Config.reference_links.diagnostic.link = this.getProperty("kylin.web.diagnostic").trim(); - Config.contact_mail = this.getProperty("kylin.web.contact_mail").trim(); + Config.reference_links.hadoop.link = this.getProperty("kylin.web.link-hadoop").trim(); + Config.reference_links.diagnostic.link = this.getProperty("kylin.web.link-diagnostic").trim(); + Config.contact_mail = this.getProperty("kylin.web.contact-mail").trim(); var doc_length = this.getProperty("kylin.web.help.length").trim(); for (var i = 0; i < doc_length; i++) { var _doc = {};