blob: 4707f330da7954954db2dd1fb07909760e96b45d [file] [log] [blame]
## 基于 Basic 认证的资源接口请求方式
采用 Basic 认证,对 API 资源接口进行访问控制
### 项目配置
1、在 client 项目的 application.yml 中新增配置
```
infras.security.api.basic.enabled: true
```
若要禁用则,注释掉配置 修改为 false
2、在 ClientApplication(项目启动类)中,添加注解 @EnableInfrasApiSecurity
注,不能同时存在 注解 @EnableInfrasOAuth2
### 请求 API 资源接口
请求地址:/api/user
请求头:
`Authorization,认证头,Basic <user:password 的 base64 编码>`
示例(user:password admin:111111):
`Authorization: Basic YWRtaW46MTExMTEx`
请求示例:
```
curl -i -s -X GET -H "Authorization: Basic YWRtaW46MTExMTEx" "http://localhost:8080/api/user"
```
注:
-H "Authorization: Basic YWRtaW46MTExMTEx" 为请求头参数
响应结果:
```
{
"password":null,
"username":"admin",
"authorities":[{"authority":"ROLE_ADMIN"},{"authority":"administrator"},{"authority":"user"}],
"accountNonExpired":true,
"accountNonLocked":true,
"credentialsNonExpired":true,
"enabled":true
}
```