複数の認証プロバイダーLDAP認証とJPAをサポートするSpring Security

Vaibhav Kulkarni:

進行中のスプリングブートプロジェクトに認証および承認サービスを実装しようとしています。JPAベースの認証プロバイダーを実装しましたが、正常に動作しています。LDAP認証プロバイダーを同じプロジェクトに追加し、ユーザー認証タイプに応じて認証方法を切り替えるにはどうすればよいですか?

以下は私のコードです

@Configuration
public class ProjectConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    private UsernamePasswordAuthProvider authProvider;
    @Autowired
    private LdapAuth ldapAuth;
    @Autowired
    private LdapAuthenticationpopulator ldapAuthenticationpopulator;


    private String ldapUrls = "ldap://localhost:3890";
    private String ldapSecurityPrincipal = "cn=admin,dc=mycompany,dc=com";
    private String ldapPrincipalPassword = "admin";
    private String userDnPattern = "uid={0}";
    @Autowired
    private UsernamePasswordAuthFilter usernamePasswordAuthFilter;

    @Bean
    public PasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder();
    }

    @Order(1)
    protected void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
        auth.ldapAuthentication()
                .contextSource()
                .url(ldapUrls)
                .managerDn(ldapSecurityPrincipal)
                .managerPassword(ldapPrincipalPassword)
                .and()
                .userDnPatterns(userDnPattern)
                .ldapAuthoritiesPopulator(ldapAuthenticationpopulator);
    }

    @Override
    @Order(2)
    protected void configure(AuthenticationManagerBuilder auth) {
        auth.authenticationProvider(authProvider);
    }

    @Override
    protected void configure(HttpSecurity http) {
        http.addFilterAt(usernamePasswordAuthFilter,
                BasicAuthenticationFilter.class);
    }

    @Override
    @Bean
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }
}

私のLDAP資格情報は正しいですが、その方法に到達していません。アプリケーションのDB ex(LDAP、JPA、SSO)から認証方法を取得し、対応する認証プロバイダーメソッドを実行するにはどうすればよいですか?

MultipleAuthenticationProvidersの複数のドキュメントを調べましたが、あまり明確ではありませんでした。これについて考えられる解決策があるかどうかをお知らせください。前もって感謝します

Vaibhav Kulkarni:

私はこれに対する一つの解決策を見つけました。LDAP対応またはJPA認証対応のプロパティをDBに配置し、特定の認証メソッドを呼び出しているブール値に応じて、実行時にそれらをロードしました。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Spring-Security PasswordEncoderをデフォルトの認証プロバイダーで使用していますか?

分類Dev

Spring SecurityとLDAP認証

分類Dev

Spring Security 5.1.1Spring-security-oauth2認証サーバーに接続するOAuth2クライアント

分類Dev

複数の認証によるSpring Security

分類Dev

Spring Securityカスタム認証プロバイダーをトランザクションでラップする

分類Dev

Spring-Securityと基本認証を使用したRESTサービスの認証

分類Dev

Spring Security Active Directory LDAP認証エラー

分類Dev

Spring SecurityとMarkLogicのJavaクライアントAPIを介してユーザーを認証する方法は?

分類Dev

Spring Securityで認証が失敗した後、元のページにリダイレクトする

分類Dev

複数の認証メカニズムを接続するSpring Boot Security

分類Dev

Spring Bootを使用したSpring Security:基本認証とJWTトークン認証を組み合わせる

分類Dev

同じリソースへのSpring Security OAuth2とLdap認証

分類Dev

Spring Boot + Spring Security:基本認証フォームを抑制する方法

分類Dev

Spring Securityでユーザーを認証する

分類Dev

Spring Securityは、認証済みユーザーと非認証ユーザーのRESTサービスでユーザー情報を取得します

分類Dev

Spring Securityで実行時に認証アプローチを切り替える?

分類Dev

APIリクエストで追加のヘッダーパラメーターを使用してOauth 2.0認証をスキップする-Spring Security

分類Dev

Spring Security認証アノテーションをデバッグする方法は?

分類Dev

permitAll()と期限切れの認証トークンを使用したURLのSpring Security

分類Dev

permitAll()と期限切れの認証トークンを使用したURLのSpring Security

分類Dev

Spring Securityによる認証

分類Dev

Spring Securityを使用して、Active Directoryサーバーに対してどのように認証しますか?

分類Dev

Spring Security JDBC認証ログインユーザーエラー

分類Dev

Spring Security OAuth2でさまざまなユーザータイプを認証する

分類Dev

Spring Security認証プロセスにフックする方法は?

分類Dev

Spring Security + Angularでログイン/認証する方法

分類Dev

Spring Security OAuth2は、ブラウザー(Angular)クライアント用のPKCEを使用した認証コードフローをサポートしていますか?

分類Dev

Spring Securityで認証マネージャーを挿入するときにデリゲートビルダーがnullになる

分類Dev

Spring Securityを使用したADAMに対するLDAPを使用した認証

Related 関連記事

  1. 1

    Spring-Security PasswordEncoderをデフォルトの認証プロバイダーで使用していますか?

  2. 2

    Spring SecurityとLDAP認証

  3. 3

    Spring Security 5.1.1Spring-security-oauth2認証サーバーに接続するOAuth2クライアント

  4. 4

    複数の認証によるSpring Security

  5. 5

    Spring Securityカスタム認証プロバイダーをトランザクションでラップする

  6. 6

    Spring-Securityと基本認証を使用したRESTサービスの認証

  7. 7

    Spring Security Active Directory LDAP認証エラー

  8. 8

    Spring SecurityとMarkLogicのJavaクライアントAPIを介してユーザーを認証する方法は?

  9. 9

    Spring Securityで認証が失敗した後、元のページにリダイレクトする

  10. 10

    複数の認証メカニズムを接続するSpring Boot Security

  11. 11

    Spring Bootを使用したSpring Security:基本認証とJWTトークン認証を組み合わせる

  12. 12

    同じリソースへのSpring Security OAuth2とLdap認証

  13. 13

    Spring Boot + Spring Security:基本認証フォームを抑制する方法

  14. 14

    Spring Securityでユーザーを認証する

  15. 15

    Spring Securityは、認証済みユーザーと非認証ユーザーのRESTサービスでユーザー情報を取得します

  16. 16

    Spring Securityで実行時に認証アプローチを切り替える?

  17. 17

    APIリクエストで追加のヘッダーパラメーターを使用してOauth 2.0認証をスキップする-Spring Security

  18. 18

    Spring Security認証アノテーションをデバッグする方法は?

  19. 19

    permitAll()と期限切れの認証トークンを使用したURLのSpring Security

  20. 20

    permitAll()と期限切れの認証トークンを使用したURLのSpring Security

  21. 21

    Spring Securityによる認証

  22. 22

    Spring Securityを使用して、Active Directoryサーバーに対してどのように認証しますか?

  23. 23

    Spring Security JDBC認証ログインユーザーエラー

  24. 24

    Spring Security OAuth2でさまざまなユーザータイプを認証する

  25. 25

    Spring Security認証プロセスにフックする方法は?

  26. 26

    Spring Security + Angularでログイン/認証する方法

  27. 27

    Spring Security OAuth2は、ブラウザー(Angular)クライアント用のPKCEを使用した認証コードフローをサポートしていますか?

  28. 28

    Spring Securityで認証マネージャーを挿入するときにデリゲートビルダーがnullになる

  29. 29

    Spring Securityを使用したADAMに対するLDAPを使用した認証

ホットタグ

アーカイブ