INFO Fetching config from server at : http://localhost:8888
WARN Could not locate PropertySource: Could not extract response: no suitable HttpMessageConverter found for response type [class org.springframework.cloud.config.environment.Environment] and content type [text/html;charset=UTF-8]
INFO The following profiles are active: development
有人面对过这个问题吗?如果没有身份验证,spring-cloud-config-client可以很好地工作,但是如果启用了基本身份验证,相同的代码就不能工作了。
Spring Cloud Config Server应用程序。属性:
spring.application.name=my-config
server.port=8888
spring.cloud.config.server.git.uri=file:///repo/my-config
spring.security.user.name=root
spring.security.user.password=root
Spring Cloud Config Client bootstrap.yml:
spring.application.name=my-service
spring.profiles.active=development
spring.cloud.config.uri=http://localhost:8888
management.endpoints.web.exposure.include=*
spring.cloud.config.username=root
spring.cloud.config.password=root
<spring-boot.version>2.2.2.RELEASE</spring-boot.version>
<spring-cloud-config.version>2.2.0.RELEASE</spring-cloud-config.version>
@Value("${spring.profiles.active}")
private String activeProfile;
logger.info("Active Profile: " + activeProfile);
奇怪的是,记录器的输出是空白的,这意味着没有活动的配置文件。因此,很明显,这个bootstrap.properties配置被忽略了。为了绕过这一点,我在my-service bootup中添加了这个JVM参数。
-Dspring.profiles.active=development -Dspring.application.name=my-service
这有效地解决了配置文件未被检测到的问题。但是,我仍然不清楚为什么从bootstrap.properties中忽略spring.profiles.active=development配置。
您需要在“config-server”应用程序中提供native
配置文件,而将development
配置文件留给客户端。以下配置工作:
配置服务器
>
bootstrap.yml
server:
port: 9001
servlet.context-path: /my-config-server
spring:
application.name: my-config-server
profiles:
active: native
main:
banner-mode: "OFF"
cloud:
config:
uri: http://localhost:9001/my-config-server
fail-fast: true
username: root
password: root
spring:
profiles: native
cloud:
config:
server:
native:
searchLocations: file:<path-to-files>
git:
clone-on-start: false # Only clone(true) on-demand
spring:
application.name: user-api
profiles:
active: development
main:
#banner-mode: "OFF"
cloud:
config:
uri: http://localhost:9001/my-config-server
fail-fast: true
username: root
password: root
问题内容: 我想我丢失了一些东西,因为我在文档中找不到如何编写供Redis实例与sidekiq一起使用的用户名和密码。 有没有办法做到这一点?还是通过ENV变量? 问题答案: Sidekiq将无法识别的redis选项直接传递给Redis驱动程序: Redis没有用户的概念,因此只有密码。
我一直在努力遵循这个教程: https://www.baeldung.com/spring-security-basic-authentication 我创建了几个restendpoint,如下所示: 现在的问题是,每当我试图发送POST请求时,我都会得到以下错误消息: HTTP状态401-访问此资源需要完全身份验证 我尝试了两种方法来发送请求,一种是通过邮递员 1.1 401 set-cooki
问题内容: 我试图让我的自定义Java应用程序使用我们的Active Directory服务器进行身份验证,但由于某种原因我无法使其正常工作。谁能看到为什么呢?这是我的方法如下: 结果: 问题答案: 你尝试过这种方式吗? 也更换 与
我正在开发一个Web应用程序 然而,我在尝试允许用户通过注册链接注册时遇到了一个问题。如果用户未经身份验证,则无法访问注册表的链接(“showRegistrationForm”) 有人能洞察为什么会发生这种情况吗?我在下面包含了我的安全配置中的代码片段
尝试将ember应用程序连接到oauth2身份验证服务时,获得一个[error=“unauthorized”,error_description=“访问此资源需要完全身份验证”]。如有任何建议,我们将不胜感激。我花了几天时间想解决这个问题,但没有效果。 下面是app.js中的代码
将配置服务器用户名和密码存储为环境变量(在客户端和服务器中)还是使用密钥库更好?密钥库密码无论如何都存储为环境变量,那么为什么实际使用密钥库呢?还是有更好的方法在SpringCloudConfig服务器中实现身份验证?