Spring Security と組み込みの ApacheDS サーバーを使用して、LDAP 認証の単体テストをいくつか作成しました。サーバーは、Spring アプリケーション コンテキスト内の要素の構成を介して自動的に起動されます。テスト用に LDIF ファイルを指定します。すべてが素晴らしいです。テストは、テストが適切にシャットダウンできず、apacheds-spring-security ディレクトリを削除できなかったある日まで、Jenkins インスタンスで 1 週間実行されました。このディレクトリが存在するため、後続のテスト実行はクラッシュします。
この問題は、以前に
その答えは、作業ディレクトリの場所を指定するコマンド ライン引数を提供することでした。これができれば、Maven ビルドのターゲット ディレクトリを指定でき、Maven がビルドとテストの前にクリーンアップを行うときに問題を処理してくれます。
すべて良い。問題は、この作業ディレクトリを指定する方法ですか? -DapacheDSWorkDir="foo" は、Maven ビルドを実行すると無視され、プログラムでこの値を設定しようとしても機能しません。誰かアイデアはありますか?ご覧のとおり、構成には、基礎となる LDAP プロバイダーに関する言及は含まれていません。
<ldap-server id="ldapServer"
url="ldap://localhost:33389/dc=aws,dc=com"
manager-dn="uid=admin,ou=system"
manager-password="secret"/>
<ldap-server ldif="classpath:/ldap/test-server.ldif"
root="dc=aws,dc=com"/>
<bean:bean id="federatedLdapUserContextSource" class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">
<bean:constructor-arg value="ldap://localhost:33389/dc=aws,dc=com"/>
</bean:bean>
どんな助けでも大歓迎です。