implementation 'org.springframework.boot:spring-boot-starter-security'
해당 라이브러리를 추가한다.
하고 실행을하면.
콘솔에 다음과 같이 security password가 뜬다.
이제, 아무리 api를 요청해도 401 에러가 뜬다.
이를 해결하기 위해서는
header에 Authorization -> type -> basic Auth
username에는 user
password에는 방금 위에 패스워들 넣으면
값들이 정상적으로 반환이된다.!!
또한 내가 username과 password를 설정할 수도있다.
application.properties에서 다음과같이 설정하자.
spring.security.user.name=username
spring.security.user.password=pass
다음은 config파일을 만들어서 설정을 해보겠다.
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration;
@Configuration
public class SecurityConfig extends WebSecurityConfiguration {
@Autowired
public void configGlobal(AuthenticationManagerBuilder auth)
throws Exception{
auth.inMemoryAuthentication()
.withUser("guest")
.password("{noop}test1234")
.roles("USER");
}
}
여기서 {noop}은 한글이 인코딩되지 않도록 방지하는 역할이다
'RESTful' 카테고리의 다른 글
Swagger documentation 커스터마이징하기 (0) | 2022.01.16 |
---|---|
Swagger(rest api documentation) (0) | 2022.01.16 |
HATEOAS (0) | 2022.01.16 |
Request Parameter 와 Header를 이용한 API 관리 (0) | 2022.01.16 |
Rest API version 관리(URI) (0) | 2022.01.16 |