Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Comunicacao HSL
Comunicacao HSL Backend
Commits
d20fb536
Commit
d20fb536
authored
3 years ago
by
Lucas Abruzzi da Rosa
Browse files
Options
Download
Email Patches
Plain Diff
Botão 'Authorize' no swagger e ignorando autenticação nos resources do swagger
parent
fc2382c9
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/main/java/pucrs/hslcommunicationservice/configuration/security/WebSecurityConfig.java
+11
-2
...tionservice/configuration/security/WebSecurityConfig.java
src/main/java/pucrs/hslcommunicationservice/configuration/swagger/SwaggerConfig.java
+25
-0
...unicationservice/configuration/swagger/SwaggerConfig.java
with
36 additions
and
2 deletions
+36
-2
src/main/java/pucrs/hslcommunicationservice/configuration/security/WebSecurityConfig.java
View file @
d20fb536
...
...
@@ -5,6 +5,7 @@ import org.springframework.context.annotation.Configuration;
import
org.springframework.http.HttpMethod
;
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.web.authentication.UsernamePasswordAuthenticationFilter
;
...
...
@@ -16,14 +17,22 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private
CustomAuthenticationProvider
customAuthenticationProvider
;
@Override
public
void
configure
(
WebSecurity
web
)
throws
Exception
{
web
.
ignoring
().
antMatchers
(
"/v2/api-docs"
,
"/configuration/ui"
,
"/swagger-resources/**"
,
"/configuration/security"
,
"/swagger-ui.html"
,
"/webjars/**"
);
}
@Override
protected
void
configure
(
HttpSecurity
httpSecurity
)
throws
Exception
{
httpSecurity
.
csrf
().
disable
()
.
authorizeRequests
()
.
antMatchers
(
HttpMethod
.
POST
,
"/login"
)
.
permitAll
()
.
antMatchers
(
"/swagger-ui**"
,
"/webjars/**"
,
"/swagger-resources/**"
,
"/v2/**"
)
.
permitAll
()
.
anyRequest
()
.
authenticated
()
.
and
()
...
...
This diff is collapsed.
Click to expand it.
src/main/java/pucrs/hslcommunicationservice/configuration/swagger/SwaggerConfig.java
View file @
d20fb536
...
...
@@ -4,16 +4,41 @@ import org.springframework.context.annotation.Bean;
import
org.springframework.context.annotation.Configuration
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.service.ApiKey
;
import
springfox.documentation.service.AuthorizationScope
;
import
springfox.documentation.service.SecurityReference
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spi.service.contexts.SecurityContext
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
import
java.util.Arrays
;
import
java.util.List
;
@Configuration
@EnableSwagger2
public
class
SwaggerConfig
{
private
ApiKey
apiKey
()
{
return
new
ApiKey
(
"JWT"
,
"Authorization"
,
"header"
);
}
private
SecurityContext
securityContext
()
{
return
SecurityContext
.
builder
().
securityReferences
(
defaultAuth
()).
build
();
}
private
List
<
SecurityReference
>
defaultAuth
()
{
AuthorizationScope
authorizationScope
=
new
AuthorizationScope
(
"global"
,
"accessEverything"
);
AuthorizationScope
[]
authorizationScopes
=
new
AuthorizationScope
[
1
];
authorizationScopes
[
0
]
=
authorizationScope
;
return
Arrays
.
asList
(
new
SecurityReference
(
"JWT"
,
authorizationScopes
));
}
@Bean
public
Docket
api
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
securityContexts
(
Arrays
.
asList
(
securityContext
()))
.
securitySchemes
(
Arrays
.
asList
(
apiKey
()))
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"pucrs.hslcommunicationservice.controller"
))
.
paths
(
PathSelectors
.
any
())
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help