WANG %!s(int64=6) %!d(string=hai) anos
pai
achega
9254cf40c4

+ 8 - 0
examcloud-exchange-starter/src/main/java/cn/com/qmth/examcloud/exchange/config/DefaultWebMvcConfigurerAdapter.java

@@ -22,6 +22,7 @@ import cn.com.qmth.examcloud.commons.web.security.RequestPermissionInterceptor;
 import cn.com.qmth.examcloud.commons.web.security.SpringCloudInterceptor;
 import cn.com.qmth.examcloud.commons.web.security.bean.Role;
 import cn.com.qmth.examcloud.commons.web.security.bean.User;
+import cn.com.qmth.examcloud.commons.web.security.bean.UserType;
 import cn.com.qmth.examcloud.commons.web.security.enums.RoleMeta;
 import cn.com.qmth.examcloud.core.basic.api.CommonCloudService;
 
@@ -73,6 +74,13 @@ public class DefaultWebMvcConfigurerAdapter extends WebMvcConfigurerAdapter {
 
 			@Override
 			public boolean hasPermission(String mappingPath, User user) {
+
+				// 学生鉴权
+				if (user.getUserType().equals(UserType.STUDENT)) {
+					String key = "[s]" + mappingPath;
+					return PropertiesUtil.getBoolean(key, false);
+				}
+
 				List<Role> roleList = user.getRoleList();
 
 				if (CollectionUtils.isEmpty(roleList)) {

+ 1 - 0
examcloud-exchange-starter/src/main/resources/security-mapping.properties

@@ -0,0 +1 @@
+[s][${$rmp.ctr.exchange.inner}/upyun][put/{siteId}/{fileName}.{fileSuffix}][PUT]=true