Как исправить несанкционированную ошибку в Google App Engine с весенним отдыхом? - PullRequest
0 голосов
/ 04 января 2019

Я загрузил проект весеннего отдыха в Google App Engine, который я сделал с помощью стандартного проекта App Engine в Maven.Когда я делаю запрос к API, я получаю «Ошибка: Несанкционированный» в качестве ответа.Перед развертыванием я проверил apis на локальном сервере ядра приложений, и они возвращали результаты, как и ожидалось.

Пожалуйста, обратитесь к конфигурации безопасности, как показано ниже:

package com.travelplanner.rest.config;

//COPY
import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.User.UserBuilder;
import org.springframework.security.provisioning.JdbcUserDetailsManager;
import org.springframework.security.provisioning.UserDetailsManager;

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    private DataSource securityDataSource;

    @Bean  
    public UserDetailsManager userDetailsManager() {  
        JdbcUserDetailsManager jdbcUserDetailsManager = new JdbcUserDetailsManager();
        jdbcUserDetailsManager.setDataSource(securityDataSource);
        return jdbcUserDetailsManager; 
    }       

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.jdbcAuthentication().dataSource(securityDataSource);
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {

        http.cors().and().authorizeRequests().antMatchers("/api/users/**").authenticated()
        .and().httpBasic().and().csrf().disable().sessionManagement()
        .sessionCreationPolicy(SessionCreationPolicy.STATELESS);  
    }

}

Пожалуйста, обратитесь к ответузаголовок, если это полезно:

alt-svc →quic=":443"; ma=2592000; v="44,43,39,35"
cache-control →private
content-encoding →gzip
content-length →163
content-type →text/html;charset=utf-8
date →Fri, 04 Jan 2019 13:16:50 GMT
pragma →no-cache
server →Google Frontend
status →401
strict-transport-security →max-age=31536000 ; includeSubDomains
vary →Accept-Encoding
www-authenticate →Basic realm="Realm"
x-cloud-trace-context →1152278a96141cf513a5830f6dcf4f92;o=1

У меня базовая безопасность при установке Spring, и даже когда я делаю запрос с правильными учетными данными, я получаю вышеуказанную ошибку.

Api: https://exoticatravels -1543931266259.appspot.com / api / users / travel-plan / 1

Пользователь: xlz@wwe.com pass: thepass

Пожалуйста, помогите!Заранее спасибо.

...