【发布时间】:2019-07-20 11:00:32
【问题描述】:
当我从 IntelliJ 运行我的应用程序时,我得到一个 warning / error 尽管应用程序构建良好并运行所有测试,这是我应该忽略的事情,还是可以解决这个问题?
Kubernetes secret 用于创建随机密码,因此我为该特定变量设置了一个占位符。
2019-02-26 19:45:29.600 INFO 38918 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2019-02-26 19:45:29.684 WARN 38918 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'actuatorSecurity': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'ACTUATOR_PASSWORD' in value "${ACTUATOR_PASSWORD}"
2019-02-26 19:45:29.685 INFO 38918 --- [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2019-02-26 19:45:29.685 INFO 38918 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2019-02-26 19:45:29.707 INFO 38918 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
2019-02-26 19:45:29.713 INFO 38918 --- [ main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
qronicle-deployment.yaml
apiVersion: v1
kind: Secret
metadata:
name: actuator
namespace: {{ .Release.Namespace }}
type: Opaque
data:
actuator-password: {{ randAlphaNum 10 | b64enc | quote }}
....
- name: ACTUATOR_PASSWORD
valueFrom:
secretKeyRef:
name: actuator
key: actuator-password
application.properties
# spring boot actuator access control
management.endpoints.web.exposure.include=*
security.user.actuator-username=admin
security.user.actuator-password=${ACTUATOR_PASSWORD}
ACTUATOR_PASSWORD在这里被消费
@Configuration
@EnableWebSecurity
class ActuatorSecurity : WebSecurityConfigurerAdapter() {
@Value("\${security.user.actuator-username}")
private val actuatorUsername: String? = null
@Value("\${security.user.actuator-password}")
private val actuatorPassword: String? = null
....
}
【问题讨论】:
标签: spring-boot kotlin spring-security kubernetes