当我通过Spring Boot和访问权限部署Spring应用程序时,localhost:8080我必须进行身份验证,但是用户名和密码是什么或如何设置呢?我试图将其添加到我的tomcat- users文件中,但没有成功:
localhost:8080
tomcat- users
<role rolename="manager-gui"/> <user username="admin" password="admin" roles="manager-gui"/>
这是应用程序的起点:
@SpringBootApplication public class Application extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } }
这是Tomcat依赖项:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
我如何认证localhost:8080?
我认为您在类路径上具有Spring Security,然后使用默认用户和生成的密码自动配置Spring Security
请查看您的pom.xml文件中的内容:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
如果您的pom中包含该内容,则应该显示如下日志控制台消息:
Using default security password: ce6c3d39-8f20-4a41-8e01-803166bb99b6
然后,在浏览器提示中,您将导入用户user和控制台中打印的密码。
user
或者,如果您想配置Spring安全性,可以看一下Spring Boot安全示例
在Spring Boot Reference文档 的Security部分中对此进行了说明,它指示:
The default AuthenticationManager has a single user (‘user’ username and random password, printed at `INFO` level when the application starts up) Using default security password: 78fa095d-3f4c-48b1-ad50-e24c31d5cf35