spring boot - 基本的 Active Directory 身份验证,然后是 JWT 令牌

Posted

技术标签:

【中文标题】spring boot - 基本的 Active Directory 身份验证,然后是 JWT 令牌【英文标题】:springboot - basic ActiveDirectory auth then JWT token 【发布时间】:2019-03-31 19:50:48 【问题描述】:

有没有人在 springboot 应用程序中找到了这方面的工作示例?

    /auth 控制器,用户提供 ActiveDirectory 凭据(通过基本身份验证或 POST json),如果他们提供了有效的 AD 凭据,则接收 JWT 令牌。不应涉及 LDIF 文件,Springboot 应用程序将根据 ldaps://ActiveDirectoryhost:636 端点验证凭据 /myapi 控制器仅在“授权承载”标题中发送来自步骤 1(上)的有效 JWT 令牌时才有效

我没有找到任何具有此设置的示例博客/指南,但我相信这将是一种常见的安全设置,除非我弄错了? 不应涉及 jpa/hibernate/persistence/mysql/postgres/H2db 连接 我在网上找到的所有示例都只是 JWT,或者只是 LDAP,或者使用 LDIF 或使用一些 H2/postgres 来存储凭据。

【问题讨论】:

试试这个:github.com/SNCF-SIV/spring-security-rest-jwt-ldap/blob/master/… 或者这个:***.com/questions/52134515/… 谢谢,但第一个链接不是 SpringBoot,第二个链接使用的是 LDIF :( 你找到解决这个问题的办法了吗? 【参考方案1】:

这行得通:

来自https://github.com/merugu/springsecurity/tree/master/ldapauthenticationjwttoken的JWT

来自https://medium.com/@dmarko484/spring-boot-active-directory-authentication-5ea04969f220的广告

必须将 github jwt repo 升级到 springboot 2.0.5 并将 setSearchFilter 1 (https://docs.spring.io/spring-security/site/docs/current/api/org/springframework/security/ldap/authentication/ad/ActiveDirectoryLdapAuthenticationProvider.html) 添加到 AD

第二个选项也适用于 Springboot 1.5: Spring security switch to Ldap authentication and database authorities (https://***.com/a/34658755) 在 https://github.com/cnapagoda/spring-boot-basic-auth 之上

【讨论】:

以上是关于spring boot - 基本的 Active Directory 身份验证,然后是 JWT 令牌的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security - 在Spring Boot中针对LDAP使用Active Directory对用户进行身份验证

Spring Boot 启动:No active profile set, falling back to default profiles: default

spring boot:浣跨敤澶氫釜redis鏁版嵁婧?spring boot 2.3.1)

spring boot 学习篇(-)

使用 Spring-boot Application 中的 Spring Security 使用 Active Directory(使用 AD 域)对用户进行身份验证时出现问题

Spring Boot + Azure Active Directory 签名的 JWT 被拒绝:需要另一个算法,或者找不到匹配的密钥