Skip to content

Commit

Permalink
fix(errors): Import kork-web ErrorConfiguration into fiat-api configu…
Browse files Browse the repository at this point in the history
…ration, wire up FiatAccessDeniedExceptionHandler (#785)
  • Loading branch information
jonsie authored Sep 25, 2020
1 parent ddab7db commit f2bc5c6
Showing 1 changed file with 14 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,15 @@

package com.netflix.spinnaker.fiat.shared;

import static org.springframework.core.Ordered.HIGHEST_PRECEDENCE;

import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jakewharton.retrofit.Ok3Client;
import com.netflix.spinnaker.config.DefaultServiceEndpoint;
import com.netflix.spinnaker.config.ErrorConfiguration;
import com.netflix.spinnaker.config.okhttp3.OkHttpClientProvider;
import com.netflix.spinnaker.kork.web.exceptions.ExceptionMessageDecorator;
import com.netflix.spinnaker.okhttp.SpinnakerRequestInterceptor;
import com.netflix.spinnaker.retrofit.Slf4jRetrofitLogger;
import lombok.Setter;
Expand All @@ -32,6 +36,8 @@
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.core.annotation.Order;
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
Expand All @@ -41,6 +47,7 @@
import retrofit.RestAdapter;
import retrofit.converter.JacksonConverter;

@Import(ErrorConfiguration.class)
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@Configuration
Expand Down Expand Up @@ -83,6 +90,13 @@ FiatWebSecurityConfigurerAdapter fiatSecurityConfig(FiatStatus fiatStatus) {
return new FiatWebSecurityConfigurerAdapter(fiatStatus);
}

@Bean
@Order(HIGHEST_PRECEDENCE)
FiatAccessDeniedExceptionHandler fiatAccessDeniedExceptionHandler(
ExceptionMessageDecorator exceptionMessageDecorator) {
return new FiatAccessDeniedExceptionHandler(exceptionMessageDecorator);
}

private class FiatWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdapter {
private final FiatStatus fiatStatus;

Expand Down

0 comments on commit f2bc5c6

Please sign in to comment.