0

アプリケーションのセキュリティを有効にしましたが、ユーザーがログインしない限り、これらの保護されたリソースにアクセスできません。

ただし、Java アプリケーション内で複数のテストを実行する必要があります。ログインページ ( browser ) からアプリケーションにログインし、そのセッション ID を使用して、テスト用の認証済みオブジェクト ( Java application )を取得できるかどうか疑問に思っています。

それが役立つ場合は、春のセキュリティを使用しています。

その方法を説明するのに時間がかかる場合は、一般的なアイデアを探しています。

4

1 に答える 1

0

Spring Security の認証には、現在のユーザーのプリンシパルおよび承認されたロールに対するハンドルがあります。以下を使用してアクセスできます。

Authentication authentication = SecurityContextHolder.getContext().getAuthentication();

Spring のRequestAttributesには、現在のセッション ID のハンドルがあります。以下を使用してアクセスできます。

RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
String sessionId = attributes.getSessionId();

これは、RequestContextFilterが web.xml で構成されている場合に機能します。

于 2013-05-11T13:20:27.840 に答える