當前位置:首頁 » 操作系統 » java許可權管理源碼

java許可權管理源碼

發布時間: 2023-06-10 19:29:50

java 中如何實現許可權管理

struts攔截器不推薦使用 建議使用spring AOP 面向切面 統一許可權操作當做一類失誤處理 對於資料庫許可權 簡單許可權可以設定一張許可權表 復雜許可權 但許可權沒有從屬關系可以使用2進製表示 0101010 0和1分別代表是否具有該許可權操作 多級許可權表結構又相應復雜
給你一個簡單的管理代碼
public class CheckIdAdvice implements MethodInterceptor {
protected final Log log = LogFactory.getLog(getClass());
public Object invoke(MethodInvocation invocation) throws Throwable {
String methodName = invocation.getMethod().getName();
for(int i=0;i<Constant.levelOneMethod.length;i++)
{
if(Constant.levelOneMethod[i].equals(methodName))
{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin.getQuanxian()!=null&&admin.getQuanxian()>=1)
{

return invocation.proceed();
}
else
{
log.info("進入失敗");
return false;
}

}
}
for(int i=0;i<Constant.levelTwoMethod.length;i++)
{
if(Constant.levelTwoMethod[i].equals(methodName))
{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin.getQuanxian()!=null&&admin.getQuanxian()>=3)
{

return invocation.proceed();
}
else
{
log.info("進入失敗");
return false;
}
}
}
for(int i=0;i<Constant.levelThreeMethod.length;i++)
{
if(Constant.levelThreeMethod[i].equals(methodName))

{
Map map=(Map) ActionContext.getContext().get("session");
Admin admin=(Admin)map.get("admin");
if(admin!=null&&admin.getQuanxian()>=5)
{

return invocation.proceed();
}
else
{
log.info("進入失敗");
return false;
}
}
}

return invocation.proceed();

}

}

㈡ java實現論壇許可權管理

我把之前寫過的給你好了,辦法應該有很多種,我使用比較簡單的session屬性判斷,就是1。如果管理員登錄了,馬上設置管理員的session屬性,2,3。在有管理員區分的頁面的前面加個管理員的session判斷就行了

1.登錄頁面或登錄處理頁面
if(管理員賬號密碼驗證成功) {
session.setAttribute("admin","logined"); //設置session

}
2.登錄判斷頁面
_adminLogined.jsp
<%@ page language="java" pageEncoding="gb18030"%>
<%
//==========管理員判斷===========
String sessAdmin = (String)session.getAttribute("admin");
if(sessAdmin == null || !sessAdmin.trim().equals("logined")) {
response.sendRedirect("login.jsp");
return; //這個return 很重要 否則會繼續向下執行 詳見response特性
}
%>

3。論壇頁面(有用到管理員許可權的)如:刪除,修改頁面
在這些頁面前面加上這句,如果不是管理員,刪除修改頁面是訪問不了的
<%@ include file="_adminLogined.jsp" %>

㈢ 誰能給個java許可權管理功能的框架或者代碼(有完整的用戶、角色、許可權3者關系體系的)

代碼沒有,這個玩意要有一般也是集成在項目中的,一般不會發給你。可以給你說個思路:

  1. 用戶表t_user (userId,xxxxx)

  2. 角色表t_role(roleId,xxxx) //一般就是id再加上個名稱欄位,比如管理員,普通用戶

  3. 用戶角色表t_role_user(id,userId,userId) 用戶角色關聯表

  4. 功能表或者叫資源表 t_function(functionId,url,parentFunctionId,xxx) //存放菜單名稱 url地址之類

  5. 角色功能表(id,roleId,functionId) //角色能有哪些功能


一般的許可權控制,登錄的時候根據用戶查詢到該用戶有哪些角色,根據角色查詢到該角色有哪些功能。把有的功能做成菜單給用戶展示。

㈣ 現本人要做一個許可權管理模塊,急需java寫的許可權管理模塊的源碼一份做為參考,要求能夠演示的

關於許可權管理,如果是網站的話,最簡單的方式就是用過濾器。通過用戶訪問的URL進行控制。
這種方式,在寫控制或網頁時,不用考慮許可權問題!許可權由過濾器統一管理。
spring 的servlet.xml配置如下:
<!-- 許可權系統 攔截 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/admin/**" />
<bean class="com.zmax.web.spring.AdminContextInterceptor">
<!-- 開發模式,懶得登錄 -->
<property name="devmode" value="1"/>
<property name="auth" value="true" />
<property name="loginUrl" value="/admin/login.do" />
<property name="returnUrl" value="/admin/index.do" />
<property name="excludeUrls">
<list>
<value>/test.do</value>
<value>/login.do</value>
<value>/logout.do</value>
</list>
</property>
</bean>
</mvc:interceptor>
相應的JAVA代碼:
package com.zmax.utils;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;

public class AdminContextInterceptor extends HandlerInterceptorAdapter{
private static final Logger logger = Logger.getLogger(AdminContextInterceptor.class);
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
if (logger.isDebugEnabled())
logger.debug("許可權預處理");
//獲取用戶訪問的地址
String uri = getURI(request);
// 不在驗證的范圍內
if (exclude(uri)) {
return true;
}
AdminUser adminUser=(AdminUser)session.getAttribute(request, SessionName.ADMINUSER);
// 用戶為null跳轉到登陸頁面
if (adminUser == null) {
if(devmode==null||devmode.equals(0)){
response.sendRedirect(getLoginUrl(request));
return false;
}
}
//如果用戶許可權不夠,跳到登錄頁面
if(checkAdmin(adminUser,uri)){
response.sendRedirect(getLoginUrl(request));
return false;
}else{
//許可權夠了,返回true
adminUser=adminUserService.get(devmode);
session.setAttribute(request, response, SessionName.ADMINUSER, adminUser);
return true;
}

return true;
}

@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler, ModelAndView mav)
throws Exception {
if (logger.isDebugEnabled())
logger.debug("許可權處理");

}

@Override
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
if (logger.isDebugEnabled())
logger.debug("許可權後處理");
}
}

㈤ java 中怎麼做許可權系統的控制和分配

下面是一個java的web許可權管理模塊的應用與實現。

先介紹數據模型和應用界面,後繼對實現細節做選擇性闡述。

數據表關系如下:

該圖標明了登陸用戶、角色、部門(機構)、用戶組、角色和模塊功能之間的關系。為方便起見,所有表都只保留必要欄位。

在本系統設計中,如下概念有著相對特殊的含義。

一、用戶(user): 系統的使用者。

二、部門(org):體現了用戶的行政關系,

三、組(group) :是某相同職能的用戶的集合,可以和用戶一樣與角色產生關聯。設置組的目的是為了方便用戶的角色分配,減少用戶與角色的直接對應關系。用戶的角色可以是其組角色和其直接分配的角色之合集。限於作者的時間和精力,組功能在該系統中沒有具體的實現。
四、角色(role):角色對應著某些功能(function)的集合,被分配一個角色意味著有權執行這些功能。角色表中的欄位"functions"記錄相關的功能id,id之間用逗號隔開。

五、功能(function):系統的一個或者多個執行准入。

㈥ javaweb應用系統,求一套許可權管理源代碼,不同角色勾選不同菜單,擁有對應菜單許可權不一樣!

代碼沒有寫出起來,給你說一下原理吧!許可權主要分為用戶角色菜單一個角色對應多個用戶,多個角色對應多個菜單這樣用戶登錄時可以通過用戶自己的角色得到相應的菜單而菜單就直接關繫到具體的功能操作了這樣就劃分出許可權了比如每個人都有自己的名字如「1,2,3,4」而用戶可能有同樣的角色如:「1,2是管理員」「3,4是主任」這樣的管理員和主任就是角色這兩個角色的權利(許可權)當然不同了這樣就是許可權管理了啊中文java技術網

熱點內容
喵喵試玩腳本 發布:2025-04-05 19:42:08 瀏覽:455
我的世界布吉島伺服器怎麼加材質包 發布:2025-04-05 19:32:27 瀏覽:594
ftp怎麼連接路由 發布:2025-04-05 19:20:52 瀏覽:232
手游腳本商城 發布:2025-04-05 19:08:23 瀏覽:799
摘星游戲腳本 發布:2025-04-05 18:49:51 瀏覽:590
c語言中k什麼意思 發布:2025-04-05 18:49:40 瀏覽:87
php在線編程 發布:2025-04-05 18:47:30 瀏覽:542
sqlserver運行 發布:2025-04-05 18:41:32 瀏覽:44
如何安卓遷移蘋果 發布:2025-04-05 18:35:03 瀏覽:577
c語言輸入處理 發布:2025-04-05 18:34:58 瀏覽:99