Commit f9467261 by zhaoxiaolei

LDAP

parent 3ba85684
......@@ -7,6 +7,10 @@
<facet type="web" name="Web">
<configuration>
<webroots />
<sourceRoots>
<root url="file://$MODULE_DIR$/src/main/java" />
<root url="file://$MODULE_DIR$/src/main/resources" />
</sourceRoots>
</configuration>
</facet>
<facet type="kotlin-language" name="Kotlin">
......@@ -38,6 +42,7 @@
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
......@@ -78,8 +83,6 @@
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.2.0" level="project" />
......@@ -123,6 +126,25 @@
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.36.Final" level="project" />
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.2.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
<orderEntry type="library" name="Maven: net.minidev:json-smart:2.3" level="project" />
<orderEntry type="library" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
<orderEntry type="library" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
<orderEntry type="library" name="Maven: org.assertj:assertj-core:3.11.1" level="project" />
<orderEntry type="library" name="Maven: org.mockito:mockito-core:2.23.4" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.9.12" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy-agent:1.9.12" level="project" />
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.6" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-library:1.3" level="project" />
<orderEntry type="library" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-test:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.xmlunit:xmlunit-core:2.6.2" level="project" />
<orderEntry type="library" name="Maven: redis.clients:jedis:2.9.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.6.2" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.projectlombok:lombok:1.18.8" level="project" />
......@@ -156,7 +178,6 @@
<orderEntry type="library" name="Maven: jakarta.persistence:jakarta.persistence-api:2.2.3" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.3.10.Final" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.23.2-GA" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.9.12" level="project" />
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
<orderEntry type="library" name="Maven: org.jboss:jandex:2.0.5.Final" level="project" />
<orderEntry type="library" name="Maven: org.dom4j:dom4j:2.1.1" level="project" />
......@@ -197,6 +218,5 @@
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-ldap:2.1.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.ldap:spring-ldap-core:2.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
</component>
</module>
\ No newline at end of file
......@@ -19,6 +19,7 @@ import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.ldap.filter.EqualsFilter;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.Errors;
......@@ -349,12 +350,16 @@ public class IntegrateController {
return ResultGenerator.genSuccessResult(integrateService.getUserDimension(userinfo));
}
@PostMapping("/checkToken")
@PostMapping("/checkUserToken")
@ApiOperation(value = "检查token是否过期", notes = "checkToken", httpMethod = "POST")
public CrmResponseEntity<?> checkToken(@RequestBody UserInfo userinfo) {
return ResultGenerator.genSuccessResult(integrateService.checkToken(userinfo));
public CrmResponseEntity<?> checkUserToken(@RequestBody UserInfo userinfo) {
return ResultGenerator.genSuccessResult(integrateService.checkUserToken(userinfo));
}
@PostMapping("/ldapAuth")
@ApiOperation(value = "登录LDAP验证用户", notes = "ldapAuth", httpMethod = "POST")
public CrmResponseEntity<?> ldapAuth(@RequestBody UserInfo userinfo) {
return ResultGenerator.genSuccessResult(integrateService.ldapAuth(userinfo));
}
}
package cn.com.uitech.authorization.controller;
import cn.com.uitech.authorization.service.IntegrateService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@Controller
public class aquanTest {
@Autowired
IntegrateService integrateService;
@Test
public void testOne() {
System.out.println("验证结果"+integrateService.ldapAuth("ldapupdate","6KRutglNdiXp"));
}
}
\ No newline at end of file
......@@ -11,4 +11,6 @@ public interface UserInfoMapper extends IBaseMapper<UserInfo> {
UserInfo getUser(UserInfo userinfo);
List<MenuInfo> getUserDimension(String userCode);
UserInfo getUserOne(UserInfo userinfo);
}
package cn.com.uitech.authorization.pojo.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.springframework.ldap.odm.annotations.Attribute;
import org.springframework.ldap.odm.annotations.Entry;
import org.springframework.ldap.odm.annotations.Id;
import javax.naming.Name;
@Entry(objectClasses = {"person"})
public class Person {
@Id
@JsonIgnore // 必写
private Name distinguishedName;
/* 登录账号 */
@Attribute(name = "sAMAccountName")
private String loginName;
/* 用户姓名 */
@Attribute(name = "cn")
private String userName;
/* 邮箱 */
@Attribute(name = "mail")
private String email;
// gettet...setter...toString...
}
\ No newline at end of file
......@@ -21,7 +21,7 @@ public class UserInfo {
@Column(name = "user_code")
private String userCode;
@Column(name = "pass_word")
private String password;
private String passWord;
@Column(name = "user_name")
private String userName;
@Column(name = "user_dimension")
......
......@@ -47,7 +47,7 @@ public interface IntegrateService {
Object getUserDimension(UserInfo userinfo);
Object checkToken(UserInfo userinfo);
Object checkUserToken(UserInfo userinfo);
boolean ldapAuth(String username, String passWord);
Object ldapAuth(UserInfo userinfo);
}
......@@ -19,8 +19,11 @@ import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.ldap.core.CollectingAuthenticationErrorCallback;
import org.springframework.ldap.core.LdapTemplate;
import org.springframework.ldap.filter.AndFilter;
import org.springframework.ldap.filter.EqualsFilter;
import org.springframework.ldap.query.LdapQuery;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -37,6 +40,8 @@ import java.util.Date;
import java.util.List;
import java.util.Map;
import static org.springframework.ldap.query.LdapQueryBuilder.query;
@Service
@Transactional
......@@ -72,21 +77,22 @@ public class IntegrateServiceImpl implements IntegrateService {
private String content_type_msg;
@Value("${plm.header_Authorization}")
private String headerAuthorization;
@Value("${spring.ldap.base}")
private String base;
@Autowired
private LdapTemplate ldapTemplate;
@Override
public boolean ldapAuth(String username, String passWord) {
EqualsFilter filter = new EqualsFilter("sAMAccountName", username);
return ldapTemplate.authenticate(base, filter.toString(), passWord);
}
@Override
/**
* @Author 赵晓雷
* @Description setSuperBOMInfo 集成物料数据
* @Date 2021/12/29 14:28
* @Param [saveSuperBomInputDtos]
* @return cn.com.uitech.authorization.pojo.dto.GetProductOutDto
**/
public GetProductOutDto setSuperBOMInfo(List<SaveSuperBomInputDto> saveSuperBomInputDtos) {
GetProductOutDto result = new GetProductOutDto();
//TYPE=SuperPart数据插入到SuperBOMInfo
......@@ -184,6 +190,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description setSuperCharacterValueInfo 集成特征/特征值数据
* @Date 2021/12/29 14:28
* @Param [saveSuperCharacterValueInputDtos]
* @return cn.com.uitech.authorization.pojo.dto.GetProductOutDto
**/
public GetProductOutDto setSuperCharacterValueInfo(List<SaveSuperCharacterValueInputDto> saveSuperCharacterValueInputDtos) {
GetProductOutDto result = new GetProductOutDto();
try {
......@@ -239,6 +252,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description SetSuperTableInfo 集成约束表数据
* @Date 2021/12/29 14:27
* @Param [saveTableInputDtos]
* @return cn.com.uitech.authorization.pojo.dto.GetProductOutDto
**/
public GetProductOutDto SetSuperTableInfo(List<SaveTableInputDto> saveTableInputDtos) {
GetProductOutDto result = new GetProductOutDto();
try {
......@@ -354,16 +374,37 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description getName 根据vcode获取vname
* @Date 2021/12/29 14:26
* @Param [v]
* @return java.lang.String
**/
public String getName(Object v) {
return characteristicValueMapper.getName(v);
}
@Override
/**
* @Author 赵晓雷
* @Description getCNameByCode 根据ccode获取name
* @Date 2021/12/29 14:26
* @Param [characteristicCode, superBomCode]
* @return cn.com.uitech.authorization.pojo.entity.Characteristic
**/
public Characteristic getCNameByCode(String characteristicCode, String superBomCode) {
return characteristicMapper.getCNameByCode(characteristicCode, superBomCode);
}
@Override
/**
* @Author 赵晓雷
* @Description GetSKUByConfigInfo 根据配置获取sku信息
* @Date 2021/12/29 14:25
* @Param [superBomSkuInfo]
* @return java.lang.Object
**/
public Object GetSKUByConfigInfo(SuperBomSkuInfo superBomSkuInfo) {
GetProductOutDto result = new GetProductOutDto();
......@@ -547,12 +588,18 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description GetConfigBySUKINFO 根据sku信息获取配置
* @Date 2021/12/29 14:25
* @Param [superBomSkuInfo]
* @return java.lang.Object
**/
public Object GetConfigBySUKINFO(SuperBomSkuInfo superBomSkuInfo) {
GetProductOutDto result = new GetProductOutDto();
//checkToken(superBomSkuInfo.getToken());
//撞配
SuperBomSkuInfo returnSkuInfo = new SuperBomSkuInfo();
superBomSkuInfo.setApplyUser("CRM");
Object ob = GetSKUByConfigInfo(superBomSkuInfo);
boolean flag = ob instanceof GetProductOutDto;
......@@ -579,6 +626,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
/**
* @return
* @Author 赵晓雷
* @Description 调用服务校验token
* @Date 2021/12/29 14:23
* @Param
**/
private GetProductOutDto checkToken(String token) {
GetProductOutDto result = new GetProductOutDto();
if (!StringUtils.isEmpty(token)) {
......@@ -597,19 +651,28 @@ public class IntegrateServiceImpl implements IntegrateService {
return result;
}
/**
* 查询sku信息
*
* @param superBomSkuInfo
* @return
*/
@Override
/**
* @Author 赵晓雷
* @Description querySkuList 获取sku列表
* @Date 2021/12/29 14:22
* @Param [superBomSkuInfo]
* @return com.github.pagehelper.PageInfo<cn.com.uitech.authorization.pojo.entity.SuperBomSkuInfo>
**/
public PageInfo<SuperBomSkuInfo> querySkuList(SuperBomSkuInfo superBomSkuInfo) {
PageHelper.startPage(superBomSkuInfo.getPage(), superBomSkuInfo.getPerPage());
return new PageInfo<>(superBomSkuInfoMapper.querySkuList(superBomSkuInfo));
}
@Override
/**
* @Author 赵晓雷
* @Description querySkuOne 查询sku信息One
* @Date 2021/12/29 14:21
* @Param [configId]
* @return java.lang.Object
**/
public Object querySkuOne(String configId) {
return superBomSkuInfoMapper.querySkuOne(configId);
......@@ -624,7 +687,7 @@ public class IntegrateServiceImpl implements IntegrateService {
if (StringUtils.isEmpty(redis)) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date(System.currentTimeMillis());
String md5Str = MD5Util.getMD5Str(getOne.getPassword() + "_unis_cpq_" + getOne.getUserCode() + formatter.format(date));
String md5Str = MD5Util.getMD5Str(getOne.getPassWord() + "_unis_cpq_" + getOne.getUserCode() + formatter.format(date));
String doubleMd5 = MD5Util.getMD5Str(md5Str);
result.setData(doubleMd5);
result.setCode(200);
......@@ -641,41 +704,99 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description getUserDimension 获取用户权限
* @Date 2021/12/29 14:20
* @Param [userinfo]
* @return java.lang.Object
**/
public Object getUserDimension(UserInfo userinfo) {
GetProductOutDto result = new GetProductOutDto();
UserInfo getOne = userInfoMapper.getUser(userinfo);
if (!ObjectUtils.isEmpty(getOne)) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date(System.currentTimeMillis());
String md5Str = MD5Util.getMD5Str(getOne.getPassword() + "_unis_cpq_" + getOne.getUserCode() + formatter.format(date));
String doubleMd5 = MD5Util.getMD5Str(md5Str);
List<MenuInfo> list = userInfoMapper.getUserDimension(getOne.getUserCode());
result.setData(list);
result.setMsg(doubleMd5);
List<MenuInfo> userDimension = userInfoMapper.getUserDimension(userinfo.getUserCode());
if (!CollectionUtils.isEmpty(userDimension)) {
result.setData(userDimension);
result.setCode(200);
redisHelper.set("unis_cpq:" + doubleMd5, doubleMd5, 86400);
} else {
result.setMsg("用户不存在/密码错误");
result.setMsg("用户没有权限");
result.setCode(500);
}
return result;
}
@Override
public Object checkToken(UserInfo userinfo) {
/**
* @Author 赵晓雷
* @Description checkUserToken 检查TOKEN是否过期
* @Date 2021/12/29 14:20
* @Param [userinfo]
* @return java.lang.Object
**/
public Object checkUserToken(UserInfo userinfo) {
GetProductOutDto result = new GetProductOutDto();
UserInfo getOne = userInfoMapper.getUserOne(userinfo);
if (!ObjectUtils.isEmpty(getOne)) {
String redis = redisHelper.get("unis_cpq:" + userinfo.getUserCode());
if (!StringUtils.isEmpty(redis)) {
if (userinfo.getToken().equals(redis)) {
result.setMsg(null);
result.setCode(200);
result.setData(true);
} else {
result.setMsg("token不一致");
result.setCode(500);
result.setData(false);
}
} else {
result.setMsg("token已过期");
result.setCode(500);
result.setData(false);
}
} else {
result.setMsg("用户不存在");
result.setCode(500);
}
return result;
}
return null;
@Override
public Object ldapAuth(UserInfo userinfo) {
GetProductOutDto result = new GetProductOutDto();
EqualsFilter filter = new EqualsFilter("sAMAccountName", userinfo.getUserCode());
boolean authenticate = ldapTemplate.authenticate("", filter.toString(), userinfo.getPassWord());
//true 存在
if (authenticate) {
String redis = redisHelper.get("unis_cpq:" + userinfo.getUserCode());
if (StringUtils.isEmpty(redis)) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date(System.currentTimeMillis());
String md5Str = MD5Util.getMD5Str(userinfo.getPassWord() + "_unis_cpq_" + userinfo.getUserCode() + formatter.format(date));
String doubleMd5 = MD5Util.getMD5Str(md5Str);
result.setData(doubleMd5);
result.setCode(200);
redisHelper.set("unis_cpq:" + userinfo.getUserCode(), doubleMd5, 86400);
//用于代码校验token
//redisHelper.set("unis_cpq:" + doubleMd5, doubleMd5, 86400);
} else {
result.setMsg(null);
result.setCode(200);
result.setData(redis);
}
}else{
result.setMsg("用户不存在/密码不正确");
result.setCode(500);
}
return result;
}
/**
* @return Configid, SKUCode,SKUCode,产品型号,产品小型好,69码
* @Author 赵晓雷
* @Description 申请SKU功能
* @Date 2021/11/29 15:01
* @Param 选配器出参+申请SKU参数,是否政采,模式
* @Description 申请PLM回号
* @Date 2021/12/29 14:20
* @Param
* @return
**/
public ApplySkuCodeResultDto applySkuCode(SuperBomSkuInfo superBomSkuInfo) {
ApplySkuCodeResultDto dto = new ApplySkuCodeResultDto();
Map<String, Object> map = null;
......@@ -750,6 +871,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description getSuperBomInfoByConfigId 根据configId获取配置
* @Date 2021/12/29 14:19
* @Param [map]
* @return java.lang.Object
**/
public Object getSuperBomInfoByConfigId(Map<String, Object> map) {
String configId = (String) map.get("configId");
String skuCode = (String) map.get("skuCode");
......@@ -836,6 +964,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description GetSKUByH3CConfigInfo H3C撞配
* @Date 2021/12/29 14:19
* @Param [configSkuInfo]
* @return java.lang.Object
**/
public Object GetSKUByH3CConfigInfo(GetSKUByH3CConfigInfo configSkuInfo) {
//checkToken(configSkuInfo.getToken());
......@@ -1100,6 +1235,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description 根据configid获取配置
* @Date 2021/12/29 14:18
* @Param [getConfigurationInputDTO]
* @return java.lang.Object
**/
public Object getConfigInfo(GetConfigurationInputDTO getConfigurationInputDTO) {
if (CollectionUtils.isEmpty(getConfigurationInputDTO.getConfigIds())) {
if (!StringUtils.isEmpty(getConfigurationInputDTO.getSkuCode())) {
......@@ -1130,6 +1272,13 @@ public class IntegrateServiceImpl implements IntegrateService {
}
@Override
/**
* @Author 赵晓雷
* @Description saveSukInfo 保存sku信息-调用PLM申请回号
* @Date 2021/12/29 14:18
* @Param [superBomSkuInfo]
* @return java.lang.Object
**/
public Object saveSukInfo(SuperBomSkuInfo superBomSkuInfo) {
superBomSkuInfo.setApplyUser("CRM");
GetProductOutDto result = new GetProductOutDto();
......
......@@ -120,6 +120,7 @@ public class TempServiceImpl implements TempServer {
result.setMsg(msg);
}
}
getTempList();
}else{
result.setCode(200);
result.setMsg("数据初始化完成");
......
......@@ -36,6 +36,11 @@ spring:
sleuth:
sampler:
probability: 1.0
ldap:
urls: ldap://10.0.2.3:389
base: OU=紫光计算机,DC=unispc,DC=com
username: ldapupdate
password: 6KRutglNdiXp
selector:
url: http://172.16.0.89:8080/api/v1/selector
......
......@@ -2,7 +2,7 @@ server:
port: 8081
spring:
profiles:
active: lcrx-prod
active: lcrx
application:
name: ${APPLICATION_NAME:uitech}--${SERVICE_NAME:system}
# 遇到相同名字时,是否允许覆盖注册
......
......@@ -4,7 +4,7 @@
<mapper namespace="cn.com.uitech.authorization.mapper.UserInfoMapper">
<select id="getUser" resultType="cn.com.uitech.authorization.pojo.entity.UserInfo">
select * from user_info where user_code = #{userCode} and pass_word = #{password}
select * from user_info where user_code = #{userCode} and pass_word = #{passWord}
</select>
<select id="getUserDimension" resultType="cn.com.uitech.authorization.pojo.entity.MenuInfo">
......@@ -17,4 +17,8 @@
WHERE
A.user_code = #{userCode}
</select>
<select id="getUserOne" resultType="cn.com.uitech.authorization.pojo.entity.UserInfo">
select * from user_info where user_code = #{userCode}
</select>
</mapper>
\ No newline at end of file
package cn.com.uitech.authorization.service;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import static org.junit.Assert.*;
/**
* @Author: ZXN
* @Date: 2021/12/29/11:01
* @Description:
* @version: 1.0
* This Class Created with IntelliJ IDEA 2019.1.4
*/
@RunWith(SpringRunner.class)
@SpringBootTest
public class IntegrateServiceTest {
@Autowired
private IntegrateService integrateService;
@Test
public void ldapAuth() {
System.out.println("验证结果"+integrateService.ldapAuth("ldapupdate","6KRutglNdiXp"));
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment