mirror of
https://github.com/dataease/dataease.git
synced 2025-02-24 03:22:56 +08:00
perf(X-Pack): 本地用户登录 MFA 二次校验
This commit is contained in:
parent
3fa3e404bb
commit
6f9728d15b
BIN
core/core-frontend/src/assets/authenticator_android.png
Normal file
BIN
core/core-frontend/src/assets/authenticator_android.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.8 KiB |
BIN
core/core-frontend/src/assets/authenticator_iphone.png
Normal file
BIN
core/core-frontend/src/assets/authenticator_iphone.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 30 KiB |
2
de-xpack
2
de-xpack
@ -1 +1 @@
|
||||
Subproject commit d3b0867dda8112d038fc4aec5845391ffc2202eb
|
||||
Subproject commit cac37fbedde6e095a2c0b52326336a969e102b24
|
@ -3,7 +3,9 @@ package io.dataease.api.permissions.login.api;
|
||||
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
||||
import io.dataease.api.permissions.login.dto.MfaLoginDTO;
|
||||
import io.dataease.api.permissions.login.dto.PwdLoginDTO;
|
||||
import io.dataease.api.permissions.login.vo.MfaQrVO;
|
||||
import io.dataease.auth.vo.TokenVO;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@ -45,4 +47,10 @@ public interface LoginApi {
|
||||
@GetMapping("/logout")
|
||||
void logout();
|
||||
|
||||
@PostMapping("/mfa/qr/{id}")
|
||||
MfaQrVO mfaQr(@PathVariable("id") Long id);
|
||||
|
||||
@PostMapping("/mfa/login")
|
||||
TokenVO mfaLogin(@RequestBody MfaLoginDTO dto);
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,18 @@
|
||||
package io.dataease.api.permissions.login.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class MfaLoginDTO implements Serializable {
|
||||
@Serial
|
||||
private static final long serialVersionUID = -8218773323394184937L;
|
||||
|
||||
private Long id;
|
||||
|
||||
private String code;
|
||||
|
||||
private String key;
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
package io.dataease.api.permissions.login.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class MfaQrVO implements Serializable {
|
||||
@Serial
|
||||
private static final long serialVersionUID = -3465640829593927730L;
|
||||
|
||||
private String img;
|
||||
|
||||
private String key;
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
package io.dataease.auth.vo;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
@ -13,4 +15,7 @@ public class MfaItem implements Serializable {
|
||||
private boolean enabled;
|
||||
|
||||
private boolean ready;
|
||||
|
||||
@JsonSerialize(using= ToStringSerializer.class)
|
||||
private Long uid;
|
||||
}
|
||||
|
@ -78,6 +78,8 @@ public class WhitelistUtils {
|
||||
|| StringUtils.startsWithAny(requestURI, "/websocket")
|
||||
|| StringUtils.startsWithAny(requestURI, "/map/")
|
||||
|| StringUtils.startsWithAny(requestURI, "/oauth2/")
|
||||
|| StringUtils.startsWithAny(requestURI, "/mfa/qr/")
|
||||
|| StringUtils.startsWithAny(requestURI, "/mfa/login")
|
||||
|| StringUtils.startsWithAny(requestURI, "/typeface/download")
|
||||
|| StringUtils.startsWithAny(requestURI, "/typeface/defaultFont")
|
||||
|| StringUtils.startsWithAny(requestURI, "/typeface/listFont")
|
||||
|
Loading…
Reference in New Issue
Block a user