发布一个k8s部署视频:https://edu.csdn.net/course/detail/26967
课程内容:各种k8s部署方式。包括minikube部署,kubeadm部署,kubeasz部署,rancher部署,k3s部署。包括开发测试环境部署k8s,和生产环境部署k8s。
腾讯课堂连接地址https://ke.qq.com/course/478827?taid=4373109931462251&tuin=ba64518
第二个视频发布 https://edu.csdn.net/course/detail/27109
腾讯课堂连接地址https://ke.qq.com/course/484107?tuin=ba64518
介绍主要的k8s资源的使用配置和命令。包括configmap,pod,service,replicaset,namespace,deployment,daemonset,ingress,pv,pvc,sc,role,rolebinding,clusterrole,clusterrolebinding,secret,serviceaccount,statefulset,job,cronjob,podDisruptionbudget,podSecurityPolicy,networkPolicy,resourceQuota,limitrange,endpoint,event,conponentstatus,node,apiservice,controllerRevision等。
第三个视频发布:https://edu.csdn.net/course/detail/27574
详细介绍helm命令,学习helm chart语法,编写helm chart。深入分析各项目源码,学习编写helm插件
————————————————
package com.demo.mongodb.realm;
import java.util.Iterator;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.AuthenticationInfo;
import org.apache.shiro.authc.AuthenticationToken;
import org.apache.shiro.authc.SimpleAuthenticationInfo;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.authz.AuthorizationInfo;
import org.apache.shiro.authz.SimpleAuthorizationInfo;
import org.apache.shiro.realm.AuthorizingRealm;
import org.apache.shiro.subject.PrincipalCollection;
import com.bugull.mongo.BuguMapper;
import com.demo.mongodb.entity.Permission;
import com.demo.mongodb.entity.Role;
import com.demo.mongodb.entity.User;
import com.demo.mongodb.entity.UserDao;
public class MongodbRealm extends AuthorizingRealm {
private UserDao userDao;
@Override
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
String name=getName();
Iterator iterator=principals.fromRealm(name).iterator();
String userName=null;
if(iterator.hasNext()){
userName = (String) iterator.next();
}
User user =(User) userDao.findOne("username", userName);
BuguMapper.fetchCascade(user, "roleSet");
if (user != null) {
SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
for (Role group : user.getRoleSet()) {
BuguMapper.fetchCascade(group, "perssionSet");
info.addRole(group.getName());
if(group.getPerssionSet()!=null){
Iterator it=group.getPerssionSet().iterator();
while(it.hasNext()){
info.addStringPermission(((Permission)it.next()).getName());
}
}
}
return info;
} else {
return null;
}
}
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authcToken) throws AuthenticationException {
UsernamePasswordToken token = (UsernamePasswordToken) authcToken;
User user =(User) userDao.query().is("username", token.getUsername()).result();
if (user != null) {
return new SimpleAuthenticationInfo(user.getUsername(), user.getPassword(), getName());
} else {
return null;
}
}
public UserDao getUserDao() {
return userDao;
}
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
}