Рубрики
Без рубрики

Настройка Spring Security с помощью Azure Active Directory

Ниже приведены параметры настройки веб-приложения Spring Boot для использования проверки подлинности Azure Active Directory… Помечен как azure, spring, java.

Ниже приведены параметры настройки веб-приложения Spring Boot для использования проверки подлинности Azure Active Directory.

Приложение основано на spring-boot-starter-родительском: 2.1.4.РЕЛИЗ .

Фрагмент зависимостей POM:


    com.microsoft.azure
    azure-active-directory-spring-boot-starter
    2.1.6



    org.springframework.boot
    spring-boot-starter-security



    org.springframework.security
    spring-security-oauth2-client



    org.springframework.security
    spring-security-oauth2-jose

Фрагмент приложения.свойства :

# Active Directory Authentication
spring.security.oauth2.client.registration.azure.client-id=109a3748-yada-yada-yada-f80c1f30621e
spring.security.oauth2.client.registration.azure.client-secret=OBAYaOKp-HwhateverIxFxY@?
azure.activedirectory.tenant-id=f447e5ca-yada-yada-yada-370ff157fdb6
azure.activedirectory.user-group.allowed-groups=group1, group2
azure.activedirectory.active-directory-groups=group1, group2

AADOAuth2LoginSecurityConfig.java :

@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AADOAuth2LoginSecurityConfig extends WebSecurityConfigurerAdapter {

    @Autowired
    private OAuth2UserService oidcUserService;

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
                .csrf().disable()
                .authorizeRequests()
                .antMatchers("/**").hasRole("group1")
                .anyRequest().authenticated()
                .and()
                .exceptionHandling().accessDeniedPage("/browse/403")
                .and()
                .oauth2Login()
                .userInfoEndpoint()
                .oidcUserService(oidcUserService);
    }

}

Я застрял с JSP, поэтому используйте теги, например:


    Authorised users only


User's name: 

Конфигурация Azure – это то, где она начинает становиться странной. Существует соответствующая регистрация приложения с аутентификацией, настроенной следующим образом:

У меня есть настройка localhost , которая позволяет использовать префикс http для локальной разработки – в этом нет ничего плохого.

Однако для моих двух развертываний службы приложений я должен использовать http скорее, чем https (ПРИМЕЧАНИЕ. мое приложение настроено на прием только HTTPS), и я могу сделать это, только выбрав “Общедоступный клиент (мобильный и настольный)”.

Если я попытаюсь использовать https с типом “Веб”, я получу следующую ошибку при аутентификации:

Оригинал: “https://dev.to/cowinr/setting-up-spring-security-with-azure-active-directory-55l5”