1. ホーム
  2. java

[解決済み] TomcatでSpring Bootを起動するときのユーザー名とパスワードは何ですか?

2022-04-22 15:29:51

質問

SpringアプリケーションをSpring Bootでデプロイして 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があり、デフォルトのユーザーと生成されたパスワードで自動的に設定されているのだと思います。

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 とパスワードがコンソールに出力されます。

また、Springのセキュリティを設定したい場合は、以下のサイトを参照してください。 Spring Bootのセキュアな例

で説明されていますが、Spring Bootの 参考文献 の中にある セキュリティ というセクションを表示しています。

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