diff --git a/spring-cloud-alibaba-dependencies/pom.xml b/spring-cloud-alibaba-dependencies/pom.xml
index 84ad8803..e3df8f5c 100644
--- a/spring-cloud-alibaba-dependencies/pom.xml
+++ b/spring-cloud-alibaba-dependencies/pom.xml
@@ -21,7 +21,7 @@
1.7.1
3.1.0
1.0.0
- 1.1.4
+ 1.2.0
0.8.0
1.0.9
1.0.1
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/resources/bootstrap.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/resources/bootstrap.properties
index 71b87e61..cea78476 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/resources/bootstrap.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/resources/bootstrap.properties
@@ -1,6 +1,10 @@
spring.application.name=nacos-config-example
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
+#nacos certification information
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
#spring.cloud.nacos.config.refreshable-dataids=common.properties
#spring.cloud.nacos.config.shared-data-ids=common.properties,base-common.properties
spring.cloud.nacos.config.shared-configs[0]= common333.properties
@@ -16,5 +20,6 @@ spring.cloud.nacos.config.extension-configs[1]= extension2.properties
spring.cloud.nacos.config.extension-configs[2].data-id= extension3.json
+
#spring.cloud.nacos.config.refresh-enabled=true
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java
index 2af6c165..b57ca0c0 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java
@@ -35,7 +35,7 @@ import org.springframework.web.client.RestTemplate;
* @author xiaojing
*/
@SpringBootApplication
-@EnableDiscoveryClient(autoRegister = false)
+@EnableDiscoveryClient(autoRegister = true)
@EnableFeignClients
public class ConsumerApplication {
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/application.properties
index 7f236aa9..cd4cc01d 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/application.properties
@@ -3,6 +3,9 @@ server.port=18083
management.endpoints.web.exposure.include=*
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
feign.sentinel.enabled=true
spring.cloud.sentinel.transport.dashboard=localhost:8080
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/application.properties
index 47822c34..656e35c5 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/application.properties
@@ -3,6 +3,9 @@ server.port=18083
management.endpoints.web.exposure.include=*
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
spring.cloud.loadbalancer.ribbon.enabled=false
feign.sentinel.enabled=true
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/resources/application.properties
index 16cf54e3..9732f8d5 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/resources/application.properties
@@ -1,5 +1,9 @@
server.port=18082
spring.application.name=service-provider
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/resources/bootstrap.yml b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/resources/bootstrap.yml
index f9bbcea9..9abeb329 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/resources/bootstrap.yml
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/resources/bootstrap.yml
@@ -3,6 +3,8 @@ spring:
name: client
cloud:
nacos:
+ username: nacos
+ password: nacos
discovery:
server-addr: localhost:8848
config:
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/resources/application.yml b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/resources/application.yml
index e7fe16a4..cca1b446 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/resources/application.yml
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/resources/application.yml
@@ -6,6 +6,8 @@ spring:
name: configserver
cloud:
nacos:
+ username: nacos
+ password: nacos
discovery:
server-addr: localhost:8848
config:
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/resources/application.properties
index cedb93f2..4cdd63be 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/resources/application.properties
@@ -3,4 +3,7 @@ server.port=18083
management.endpoints.web.exposure.include=*
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
spring.cloud.loadbalancer.ribbon.enabled=false
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/resources/application.properties
index 276d85d1..b2e3f9ef 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/resources/application.properties
@@ -1,6 +1,10 @@
server.port=18085
spring.application.name=service-gateway
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
management.endpoints.web.exposure.include=*
# spring cloud route config
diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/resources/application.properties b/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/resources/application.properties
index ab340ff8..bda46189 100644
--- a/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/resources/application.properties
+++ b/spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/resources/application.properties
@@ -1,4 +1,8 @@
server.port=18086
spring.application.name=service-gateway-provider
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
+
+spring.cloud.nacos.username=nacos
+spring.cloud.nacos.password=nacos
+
management.endpoints.web.exposure.include=*
diff --git a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java
index fff267a9..1eae17f4 100644
--- a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java
+++ b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java
@@ -47,15 +47,16 @@ import static com.alibaba.nacos.api.PropertyKeyConst.ACCESS_KEY;
import static com.alibaba.nacos.api.PropertyKeyConst.CLUSTER_NAME;
import static com.alibaba.nacos.api.PropertyKeyConst.CONFIG_LONG_POLL_TIMEOUT;
import static com.alibaba.nacos.api.PropertyKeyConst.CONFIG_RETRY_TIME;
-import static com.alibaba.nacos.api.PropertyKeyConst.CONTEXT_PATH;
import static com.alibaba.nacos.api.PropertyKeyConst.ENABLE_REMOTE_SYNC_CONFIG;
import static com.alibaba.nacos.api.PropertyKeyConst.ENCODE;
import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT;
import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT_PORT;
import static com.alibaba.nacos.api.PropertyKeyConst.MAX_RETRY;
import static com.alibaba.nacos.api.PropertyKeyConst.NAMESPACE;
+import static com.alibaba.nacos.api.PropertyKeyConst.PASSWORD;
import static com.alibaba.nacos.api.PropertyKeyConst.SECRET_KEY;
import static com.alibaba.nacos.api.PropertyKeyConst.SERVER_ADDR;
+import static com.alibaba.nacos.api.PropertyKeyConst.USERNAME;
/**
* Nacos properties.
@@ -107,6 +108,14 @@ public class NacosConfigProperties {
}
this.setServerAddr(serverAddr);
}
+ if (StringUtils.isEmpty(this.getUsername())) {
+ this.setUsername(
+ environment.resolvePlaceholders("${spring.cloud.nacos.username:}"));
+ }
+ if (StringUtils.isEmpty(this.getPassword())) {
+ this.setPassword(
+ environment.resolvePlaceholders("${spring.cloud.nacos.password:}"));
+ }
}
/**
@@ -114,6 +123,16 @@ public class NacosConfigProperties {
*/
private String serverAddr;
+ /**
+ * the nacos authentication username.
+ */
+ private String username;
+
+ /**
+ * the nacos authentication password.
+ */
+ private String password;
+
/**
* encode for nacos config content.
*/
@@ -226,6 +245,22 @@ public class NacosConfigProperties {
this.serverAddr = serverAddr;
}
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
public String getPrefix() {
return prefix;
}
@@ -509,11 +544,12 @@ public class NacosConfigProperties {
public Properties assembleConfigServiceProperties() {
Properties properties = new Properties();
properties.put(SERVER_ADDR, Objects.toString(this.serverAddr, ""));
+ properties.put(USERNAME, Objects.toString(this.username, ""));
+ properties.put(PASSWORD, Objects.toString(this.password, ""));
properties.put(ENCODE, Objects.toString(this.encode, ""));
properties.put(NAMESPACE, Objects.toString(this.namespace, ""));
properties.put(ACCESS_KEY, Objects.toString(this.accessKey, ""));
properties.put(SECRET_KEY, Objects.toString(this.secretKey, ""));
- properties.put(CONTEXT_PATH, Objects.toString(this.contextPath, ""));
properties.put(CLUSTER_NAME, Objects.toString(this.clusterName, ""));
properties.put(MAX_RETRY, Objects.toString(this.maxRetry, ""));
properties.put(CONFIG_LONG_POLL_TIMEOUT,
diff --git a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/resources/META-INF/additional-spring-configuration-metadata.json
index 2856a506..987acd5c 100644
--- a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/resources/META-INF/additional-spring-configuration-metadata.json
+++ b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-config/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -67,6 +67,28 @@
"type": "java.lang.Boolean",
"defaultValue": true,
"description": "enable nacos config or not."
+ },
+ {
+ "name": "spring.cloud.nacos.config.username",
+ "type": "java.lang.String",
+ "defaultValue": "${spring.cloud.nacos.username}",
+ "description": "nacos config service's userName to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.config.password",
+ "type": "java.lang.String",
+ "defaultValue": "${spring.cloud.nacos.password}",
+ "description": "nacos config service's password to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.username",
+ "type": "java.lang.String",
+ "description": "nacos userName to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.password",
+ "type": "java.lang.String",
+ "description": "nacos password to authenticate."
}
]
}
\ No newline at end of file
diff --git a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosDiscoveryProperties.java b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosDiscoveryProperties.java
index 3fb9dfec..50882316 100644
--- a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosDiscoveryProperties.java
+++ b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosDiscoveryProperties.java
@@ -54,8 +54,10 @@ import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT;
import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT_PORT;
import static com.alibaba.nacos.api.PropertyKeyConst.NAMESPACE;
import static com.alibaba.nacos.api.PropertyKeyConst.NAMING_LOAD_CACHE_AT_START;
+import static com.alibaba.nacos.api.PropertyKeyConst.PASSWORD;
import static com.alibaba.nacos.api.PropertyKeyConst.SECRET_KEY;
import static com.alibaba.nacos.api.PropertyKeyConst.SERVER_ADDR;
+import static com.alibaba.nacos.api.PropertyKeyConst.USERNAME;
/**
* @author dungu.zpf
@@ -82,6 +84,16 @@ public class NacosDiscoveryProperties {
*/
private String serverAddr;
+ /**
+ * the nacos authentication username.
+ */
+ private String username;
+
+ /**
+ * the nacos authentication password.
+ */
+ private String password;
+
/**
* the domain name of a service, through which the server address can be dynamically
* obtained.
@@ -419,6 +431,22 @@ public class NacosDiscoveryProperties {
this.group = group;
}
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
@Override
public String toString() {
return "NacosDiscoveryProperties{" + "serverAddr='" + serverAddr + '\''
@@ -474,6 +502,12 @@ public class NacosDiscoveryProperties {
this.setGroup(
env.resolvePlaceholders("${spring.cloud.nacos.discovery.group:}"));
}
+ if (StringUtils.isEmpty(this.getUsername())) {
+ this.setUsername(env.resolvePlaceholders("${spring.cloud.nacos.username:}"));
+ }
+ if (StringUtils.isEmpty(this.getPassword())) {
+ this.setPassword(env.resolvePlaceholders("${spring.cloud.nacos.password:}"));
+ }
}
public NamingService namingServiceInstance() {
@@ -513,6 +547,8 @@ public class NacosDiscoveryProperties {
private Properties getNacosProperties() {
Properties properties = new Properties();
properties.put(SERVER_ADDR, serverAddr);
+ properties.put(USERNAME, Objects.toString(username,""));
+ properties.put(PASSWORD, Objects.toString(password,""));
properties.put(NAMESPACE, namespace);
properties.put(UtilAndComs.NACOS_NAMING_LOG_NAME, logName);
diff --git a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json
index b3dc069b..5cb5e588 100644
--- a/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json
+++ b/spring-cloud-starter-alibaba/spring-cloud-starter-alibaba-nacos-discovery/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -34,5 +34,27 @@
"type": "java.lang.Boolean",
"defaultValue": "true",
"description": "enable nacos discovery watch or not ."
+ },
+ {
+ "name": "spring.cloud.nacos.discovery.username",
+ "type": "java.lang.String",
+ "defaultValue": "${spring.cloud.nacos.username}",
+ "description": "nacos discovery service's username to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.discovery.password",
+ "type": "java.lang.String",
+ "defaultValue": "${spring.cloud.nacos.password}",
+ "description": "nacos discovery service's password to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.username",
+ "type": "java.lang.String",
+ "description": "nacos userName to authenticate."
+ },
+ {
+ "name": "spring.cloud.nacos.password",
+ "type": "java.lang.String",
+ "description": "nacos password to authenticate."
}
]}
diff --git a/spring-cloud-starter-alicloud/spring-cloud-alicloud-context/src/main/java/com/alibaba/alicloud/context/AliCloudContextAutoConfiguration.java b/spring-cloud-starter-alicloud/spring-cloud-alicloud-context/src/main/java/com/alibaba/alicloud/context/AliCloudContextAutoConfiguration.java
index 48e03d94..e364fc53 100644
--- a/spring-cloud-starter-alicloud/spring-cloud-alicloud-context/src/main/java/com/alibaba/alicloud/context/AliCloudContextAutoConfiguration.java
+++ b/spring-cloud-starter-alicloud/spring-cloud-alicloud-context/src/main/java/com/alibaba/alicloud/context/AliCloudContextAutoConfiguration.java
@@ -16,6 +16,7 @@
package com.alibaba.alicloud.context;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.cloud.commons.util.InetUtils;
@@ -25,15 +26,28 @@ import org.springframework.context.annotation.Configuration;
/**
* @author xiaolongzuo
+ * @author theonefx
*/
@Configuration(proxyBeanMethods = false)
-@EnableConfigurationProperties({ AliCloudProperties.class, InetUtilsProperties.class })
public class AliCloudContextAutoConfiguration {
- @Bean
- @ConditionalOnMissingBean
- public InetUtils inetUtils(InetUtilsProperties inetUtilsProperties) {
- return new InetUtils(inetUtilsProperties);
+ @Configuration(proxyBeanMethods = false)
+ @EnableConfigurationProperties(AliCloudProperties.class)
+ static class AliCloudPropertiesConfiguration {
+
+ }
+
+ @Configuration(proxyBeanMethods = false)
+ @EnableConfigurationProperties(InetUtilsProperties.class)
+ @ConditionalOnClass(InetUtilsProperties.class)
+ static class InetUtilsConfiguration {
+
+ @Bean
+ @ConditionalOnMissingBean
+ public InetUtils inetUtils(InetUtilsProperties inetUtilsProperties) {
+ return new InetUtils(inetUtilsProperties);
+ }
+
}
}