私は、マイクロサービススイートのスプリングブートマイクロサービスに取り組んでいます。サービスエンドポイントは、@PreAuthorizeアノテーションと特別なステートレス認証を提供するカスタムGenericFilterBeanの2つの機能を使用してすべて保護されています。Mockセッションを使用してセキュリティをバイパスする
MockMvcを使って最初にログインURLに投稿し、指定されたエンドポイントから取得する例があります。これは、ログインが別のマイクロサービスによって実行されるため、私の問題です。クッキーは
- ログイン:
は、私はのように要約することができます完全に理解することなく、さまざまな試みを行っています
- MockMvcは、ログインを実行するために外部URLを呼び出すことはできませんので、最初は除外される
セキュリティとカスタムフィルタを無効にします。セッションを嘲笑してもクッキーを設定することはできません - 私は応答オブジェクトにaddCookieしか表示しません。カスタムフィルタを無効にすると何も起こりません(おそらく私はこれを間違っている)。
テストする適切な方法は、有効な模擬セッションを用意して、セキュリティをそのまま維持できるようにすることです。私はどのように進行するのか困惑しています。
春ブート親ポンポンがある:春 - クラウドスターター親 - Brixton.M4
どのように私は単一のマイクロサービスとバイパスのセキュリティをテストすることができますか?
はい - これは私の問題を克服するために正確に働いた!フィルタをデバッグして、プロキシを使用して通常の呼び出しからスクラップする可能性のある署名付きの一連の値を持つヘッダーが必要であることを確認しました。 mockMvc.perform(get( "/")。ヘッダ( "myheader"、 "token"));ありがとうございました! – Kieveli