問題タブ [spring-boot-actuator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1268 参照

spring-security - 設定可能なエンドポイントを失わずにスプリング セキュリティ アクチュエータをオーバーライドする

プロジェクトActuators内のエンドポイントを保護しようとしています。Spring Bootただし、代わりにすぐに実行できるSpring Security構成を使用しますActuators

簡単すぎるのでActuators、カスタム セキュリティ (ここではCASSSO)をプラグインする必要があります。

最初に試してみたのは、 context-pathforを追加することでしたActuators:

WebSecurityConfigurerAdapterそして私の設定を更新してください

動作しますが、ハードコーディングする必要がActuators context-pathあるため、更新する場合management.context-pathはセキュリティを更新する必要があります。

の値を取得できることはわかっていますmanagement.context-pathが、値が に等しい場合にそれを管理するにはどうすればよいです""か?

あなたは私に答えて、エンドポイント@Autowired EndpointHandlerMappingのリストを取得できActuatorsます... 最後に、 と同じロジックをコピーして貼り付けますManagementSecurityAutoConfiguration.ManagementWebSecurityConfigurerAdapter

さらにManagementSecurityAutoConfiguration.ManagementWebSecurityConfigurerAdapter @ConditionalOnMissingBean、それ自体を指していますが、ManagementSecurityAutoConfiguration.ManagementWebSecurityConfigurerAdapter内部静的保護クラスであるため、パラメーターを渡さずに無効にすることはできずmanagement.security.enabled=false、構成が述べているため奇妙になる可能性がありますmanagement.security.enabled=falseが、実際にはエンドポイントは保護されています...


結論

  1. Actuatorsセキュリティを適切に (一部だけ) 上書きする方法はありますか
  2. 私は何かを見逃してもいいですか、そして私は完全に間違っていますか?
0 投票する
1 に答える
3629 参照

hibernate - アクチュエーターとカスタム Security を使用した Spring Boot OpenSessionInViewFilter

Spring Boot を使用して RESTful Web サービスを作成しています。セキュリティのために、AbstractUserDetailsAuthenticationProvider を拡張して BasicAuthenticationFilter とカスタム AuthenticationProvider を使用しています。コントローラー クラスで @Secured アノテーションを使用してメソッド レベルのセキュリティを使用しています。スプリングアクチュエーターも機能させようとしていることを除いて、すべて正常に機能します。

アクチュエータの問題は、セッションが開いていないためにリクエストを認証しようとすると、休止状態の例外が発生することです。そのため、http://localhost:8081/infoにアクセスすると、休止状態の例外が発生します。

アクチュエーターは、アプリの残りの部分とは別のフィルター チェーンを使用しているようです。もしそうなら、それには正当な理由があると確信しています。ただし、OpenSessionInViewFilter を登録して、各フィルター チェーンの最初のフィルターにする方法がわかりません。私の OpenSessionInViewFilter は、私の @Configuration クラスの 1 つで FilterRegistrationBean を介して登録されます。

Spring Boot は素晴らしいですが、内部では多くの魔法が行われており、コードを掘り下げてすべての開始点を確認し、それをたどる方法をまだ理解していません。

これが私の構成の一部です。大切だと思うことをまとめてみました。他に見たい作品があれば教えてください。

どんな助けでも大歓迎です。

アクチュエーターの /info エンドポイントにアクセスしようとしたときのスタック トレースを次に示します。

0 投票する
5 に答える
16450 参照

spring-boot - スプリング ブート アクチュエーター / Swagger

私は Spring Boot アプリケーションに取り組んでおり、ドキュメントには Swagger を使用しています。

アプリケーションに Spring Boot Actuator を追加しましたが、アクチュエーター (/health /metrics ..) によって作成される新しいサービスを Swagger ドキュメントに追加したいと考えています。

Actuator と Swagger の構成方法がわかりません。

0 投票する
1 に答える
4801 参照

java - Spring Boot Actuator の DataSourcesHealthIndicatorConfiguration が dataSource Bean を見つけられない

Actuator を既存の Spring Boot (v1.2.2) プロジェクトに追加しました。私の目標は、/health エンドポイントから DB 情報を確認することです。現在、そのエンドポイントは次を返します。

これらのプロパティをプロジェクトのプロパティ ファイルに追加しました。

プロジェクトには、次のように DataSource Bean を作成する @Configuration クラスが既にあります。

@EnableAutoConfiguration アノテーションは、プロジェクトのどこにも使用されていません。

Bean エンドポイントから「dataSource」Bean を確認できます。

/configprops エンドポイントには、特に以下が含まれます。

しかし、dataSource の兆候はありません ;^(

このプロジェクトは MySql DB を使用しているため、'SELECT 1' クエリに正しく応答します。

HealthIndicators が構築された後に dataSource Bean が作成されているのだろうかと思いますが、これまでのところ、私の Spring foo は失敗しました。

カスタムの HealthIndicator を記述する必要はありませんが、必要な場合は記述します。

また、サンプル プロジェクトに Actuator を追加しました。これは、DataSource Bean を明示的に作成せず、H2 DB で CrudRepository を拡張する @Repository マークの付いた多数のインターフェイスを使用したという点で異なります。

サンプル プロジェクトの /configprops エンドポイントは、予想どおり、dataSource および diskSpace プロパティを返します。

0 投票する
0 に答える
677 参照

java - Springboot で web-inf/lib フォルダーの下にある jar の場所を取得してクラスパスを構成する方法

サイド springboot プロジェクトで JAVA_HOME を使用して「java」コマンドを使用する要件が 1 つあります。java コマンドを呼び出すときに、springboot war の WEB-INF/lib フォルダーで使用できる jar ファイルが必要です。この変数を Java コマンドの引数として渡すことができるように、変数内のすべての jar を一覧表示したいと考えています。

クラスパスを構成して、WEB-INF/lib フォルダーのすべての jar ファイルを一覧表示するにはどうすればよいですか????

0 投票する
2 に答える
1309 参照

spring - Spring Boot アプリケーションの監視

スプリング ブート アプリケーションを監視するツールに取り組んでいます。私たちの環境では、約 15 の異なる Spring Boot アプリが実行されています。誰かがサーバーにログインしなくても、これらのアプリケーションのステータスを提供する UI を実装したいと考えています。Googleで簡単に検索すると、次のオプションが見つかりました。

  1. 春のブート管理者
  2. ディスカバリー クライアント/サーバー

私はこれらの両方の POC を実行しましたが、どちらも pom ファイルと構成プロパティに依存関係を追加するためにクライアント アプリケーション (監視対象) が必要なようです (検出には、検出クライアントがレジストリをスキャンするオプションがあるかもしれませんが、私はできませんでしたうまくいかない)。さて、maven の依存関係を追加することはできますが、多くのアプリがあるため、実際にはそうしたくありません。サーバー上で実行中のすべてのSpring Bootアプリを「魔法のように検出」し、それらをどこかに表示する別の方法はありますか?

前もって感謝します。

0 投票する
3 に答える
3335 参照

spring - スプリングアクチュエータメトリックを読み取ってリセットする方法は?

spring-boot.1.3.0次のようにカスタムmetricsをメモリに保存する機能を提供するを使用しています。

CounterService質問: からカウントされた値をGaugeServiceプログラムで読み取るにはどうすればよいですか?

0 投票する
1 に答える
993 参照

spring - spring-data-mongodb から kerborized mongoDB に Kerberos トークンを渡す方法

私は Kerberos 化された MongoDB を使用しており、その kerberos 実装を使用してネイティブの Java/scala クライアントを使用して接続できます。ただし、spring-data-mongodb を使用して同じことを達成するための関連情報が見つかりません。

このリンクhttp://docs.spring.io/autorepo/docs/spring-security-kerberos/1.0.0.RC1/reference/htmlsingle/を見つけました。これはSpring Security kerberosの実装について説明していますが、spring-bootとは関係ありません-mongodb。

あなたの提案と役立つ指針を前もって感謝します。