Springbootインターフェース情報はどのように開示されますか
実際の開発では、Spring Bootのインターフェース情報がデフォルトで公開されます。この場合、公開された情報を解決する下記の方法があります。
- すべてのインターフェース情報の公開を無効にする
application.properties または application.yml 設定ファイルに次の設定を追加します。
management.endpoints.web.exposure.exclude=*
すると、健全性チェックや情報などのエンドポイントを含む、すべてのエンドポイントの公開が無効になります。
- インターフェース情報を部分的に公開する:
管理におけるインターフェース情報の選択的な公開は、管理.endpoints.web.露出.包含プロパティを構成ファイルに示すことで、例えばそうされます
management.endpoints.web.exposure.include=health,info
- カスタムインターフェイス情報のアクセスパス:
management.endpoints.web.base-path プロパティを使用して設定ファイルでエンドポイント情報のアクセスパスをカスタマイズできます。たとえば、
management.endpoints.web.base-path=/admin
- セキュリティ認証を追加する:
Spring Securityを使用してインタフェースの権限制御など、セキュリティー認証をインタフェース情報に追加できます。設定ファイルでセキュリティー認証ルールを設定します。例:
spring.security.user.name=admin
spring.security.user.password=123456
配置終了後、インターフェース情報へアクセスする際には認証がおこなわれます。
Spring Boot 2.x バージョンにのみ上記の方法が適用されます。より古いバージョンの Spring Boot の場合、インターフェース情報の制御を実現するために異なる設定方法を使用する必要がある場合があります。