亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? basicaccessrulesetencoder.java

?? 一套JAVA的CA證書簽發(fā)系統(tǒng).
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/************************************************************************* *                                                                       * *  EJBCA: The OpenSource Certificate Authority                          * *                                                                       * *  This software is free software; you can redistribute it and/or       * *  modify it under the terms of the GNU Lesser General Public           * *  License as published by the Free Software Foundation; either         * *  version 2.1 of the License, or any later version.                    * *                                                                       * *  See terms of license at gnu.org.                                     * *                                                                       * *************************************************************************/ package se.anatom.ejbca.authorization;import java.util.ArrayList;import java.util.Collection;import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;/** * A class used as a help class for displaying and configuring basic access rules * * @author  herrvendil  * @version $Id: BasicAccessRuleSetEncoder.java,v 1.5 2004/04/16 07:38:57 anatom Exp $ */public class BasicAccessRuleSetEncoder implements java.io.Serializable {	private boolean forceadvanced = false;			private int currentrole = BasicAccessRuleSet.ROLE_NONE;	private Collection availableroles = new ArrayList();	private HashSet currentcas = new HashSet();	private HashSet availablecas = new HashSet();	private HashSet currentendentityrules = new HashSet();	private ArrayList availableendentityrules = new ArrayList();	private HashSet currentendentityprofiles = new HashSet();	private HashSet availableendentityprofiles = new HashSet();	private HashSet currentotherrules = new HashSet();	private ArrayList availableotherrules = new ArrayList();        /**     * Tries to encode a advanced ruleset into basic ones.      * Sets the forceadvanced flag if encoding isn't possible.     */    public BasicAccessRuleSetEncoder(Collection currentaccessrules, Collection availableaccessrules, boolean usehardtokens, boolean usekeyrecovery){    	 HashSet aar = new HashSet();    	 aar.addAll(availableaccessrules);    	 Iterator iter = currentaccessrules.iterator();    	 while(iter.hasNext()) aar.add(((AccessRule) iter.next()).getAccessRule());    	     	 initAvailableRoles(aar);    	     	 initAvailableRules(usehardtokens, usekeyrecovery, aar);    	     	     	 initCurrentRole(currentaccessrules);    	     	 initCurrentRules(currentaccessrules);    }                /**     * Returns true if basic configuration of access rules isn't possible.     */    public boolean getForceAdvanced(){    	return forceadvanced;    }    /**     * Returns the current role of the administrator group.     * One of the BasicRuleSet ROLE_constants     *      */        public int getCurrentRole(){    	return currentrole;    }    /**     * Returns a Collection of basic roles the administrator is authorized to configure.     * @return a Collection of BasicRuleSet.ROLE_constants (Integer)     *      */       public Collection getAvailableRoles(){    	return availableroles;    }        /**     * @return a Collection of CAids the administratorgroup is authorized to or BasicAccessRuleSet.CA_ALL for all cas.     */           public HashSet getCurrentCAs(){    	return currentcas;    }    /**     * @return a Collection of available CAids or BasicAccessRuleSet.CA_ALL for all cas.     */              public Collection getAvailableCAs(){    	return availablecas;    }    /**     * @return a Collection of EndEntityRules the administratorgroup is authorized to, BasicAccessRuleSet.ENDENTITY_ constants (Integer).     */           	public HashSet getCurrentEndEntityRules(){		return currentendentityrules;			}		/**	 * @return a Collection of available EndEntityRules,  BasicAccessRuleSet.ENDENTITY_ constants (Integer)	 */ 		public Collection getAvailableEndEntityRules(){		return availableendentityrules;			}		/**	 * @return a Collection of authorized EndEntityProfileIds or BasicAccessRuleSet.ENDENTITYPROFILE_ALL for all	 */          	public HashSet getCurrentEndEntityProfiles(){		return currentendentityprofiles;	}	/**	 * @return a Collection of av	ailable EndEntityProfileIds or BasicAccessRuleSet.ENDENTITYPROFILE_ALL for all and entity profiles.	 */ 			public Collection getAvailableEndEntityProfiles(){	   return availableendentityprofiles;		}		/**	 * @return a Collection of auhtorized other rules. (Integer).	 */          	public HashSet getCurrentOtherRules(){		return currentotherrules;			}		/**	 * @return a Collection of available other rules (Integer).	 */ 			public Collection getAvailableOtherRules(){	   return availableotherrules;		}    	private void initAvailableRoles(HashSet availableruleset){				availableroles.add(new Integer(BasicAccessRuleSet.ROLE_NONE));        availableroles.add(new Integer(BasicAccessRuleSet.ROLE_CAADMINISTRATOR));                availableroles.add(new Integer(BasicAccessRuleSet.ROLE_RAADMINISTRATOR));                availableroles.add(new Integer(BasicAccessRuleSet.ROLE_SUPERVISOR));                		// Check if administrator can create superadministrators		if(availableruleset.contains(AvailableAccessRules.ROLE_SUPERADMINISTRATOR)){									availableroles.add(new Integer(BasicAccessRuleSet.ROLE_SUPERADMINISTRATOR));		}		}		private void initCurrentRole(Collection currentaccessrules){				// Check if administrator is superadministrator				if(currentaccessrules.size() >0){          if(isSuperAdministrator(currentaccessrules)){                	  this.currentrole = BasicAccessRuleSet.ROLE_SUPERADMINISTRATOR;          }else		    // Check if administrator is caadministrator            if(isCAAdministrator(currentaccessrules)){          	              	    this.currentrole = BasicAccessRuleSet.ROLE_CAADMINISTRATOR;            }else        		    // Check if administrator is raadministrator            if(isRAAdministrator(currentaccessrules)){          	            	  this.currentrole = BasicAccessRuleSet.ROLE_RAADMINISTRATOR;            }else		    // Check if administrator is supervisor            if(isSupervisor(currentaccessrules)){          	             	    this.currentrole = BasicAccessRuleSet.ROLE_SUPERVISOR;          	  	             }else          	    this.forceadvanced = true;		}else{			this.currentrole = BasicAccessRuleSet.ROLE_NONE;		}	        	}			private boolean isSuperAdministrator(Collection currentaccessrules){				boolean returnval = false;		if(currentaccessrules.size() ==1){			AccessRule ar = (AccessRule) currentaccessrules.iterator().next();			if(ar.getAccessRule().equals(AvailableAccessRules.ROLE_SUPERADMINISTRATOR) && 					                                   ar.getRule() == AccessRule.RULE_ACCEPT &&													   !ar.isRecursive())				returnval = true;		}				return returnval;	}		private boolean isCAAdministrator(Collection currentaccessrules){	   boolean returnval = false;	 	   	   	   	   if(currentaccessrules.size() >= 7){	     HashSet requiredacceptrecrules = new HashSet();	     requiredacceptrecrules.add(AvailableAccessRules.REGULAR_CAFUNCTIONALTY);	     requiredacceptrecrules.add(AvailableAccessRules.REGULAR_LOGFUNCTIONALITY);	     requiredacceptrecrules.add(AvailableAccessRules.REGULAR_RAFUNCTIONALITY);	     requiredacceptrecrules.add(AvailableAccessRules.REGULAR_SYSTEMFUNCTIONALITY);	     	     requiredacceptrecrules.add(AvailableAccessRules.ENDENTITYPROFILEBASE);	     HashSet requiredacceptnonrecrules = new HashSet();	     requiredacceptnonrecrules.add(AvailableAccessRules.ROLE_ADMINISTRATOR);	     requiredacceptnonrecrules.add(AvailableAccessRules.HARDTOKEN_EDITHARDTOKENISSUERS);	     requiredacceptnonrecrules.add(AvailableAccessRules.HARDTOKEN_EDITHARDTOKENPROFILES);	     	     Iterator iter = currentaccessrules.iterator();	     boolean illegal = false;	     while(iter.hasNext()){	     	AccessRule ar = (AccessRule) iter.next();	     	if(!isAllowedCAAdministratorRule(ar))	     	  if(ar.getRule() == AccessRule.RULE_ACCEPT && ar.isRecursive() && requiredacceptrecrules.contains(ar.getAccessRule()))	     	  		requiredacceptrecrules.remove(ar.getAccessRule());	     	  else			     	  	if(ar.getRule() == AccessRule.RULE_ACCEPT && !ar.isRecursive() && requiredacceptnonrecrules.contains(ar.getAccessRule()))	     	  		requiredacceptnonrecrules.remove(ar.getAccessRule());	     	    else{	     	    	illegal = true;					break;	     	    }		     		     }	     if(!illegal && requiredacceptrecrules.size()==0 && requiredacceptnonrecrules.size() == 0)	     	returnval = true;	     	   }	   	   	   return returnval;	}			private boolean isAllowedCAAdministratorRule(AccessRule ar){		boolean returnval = false;				if(ar.getAccessRule().equals(AvailableAccessRules.CABASE) && ar.getRule() == AccessRule.RULE_ACCEPT && ar.isRecursive())			returnval = true;		if(ar.getAccessRule().startsWith(AvailableAccessRules.CAPREFIX) && ar.getRule() == AccessRule.RULE_ACCEPT && !ar.isRecursive())			returnval = true;					if(ar.getAccessRule().startsWith(AvailableAccessRules.HARDTOKEN_ISSUEHARDTOKENS) && ar.getRule() == AccessRule.RULE_ACCEPT)			returnval = true;				return returnval;	}		private boolean isRAAdministrator(Collection currentaccessrules){		boolean returnval = false;				if(currentaccessrules.size() >= 4){			HashSet requiredaccepnonrecrules = new HashSet();			requiredaccepnonrecrules.add(AvailableAccessRules.ROLE_ADMINISTRATOR);			requiredaccepnonrecrules.add(AvailableAccessRules.REGULAR_CREATECERTIFICATE);			requiredaccepnonrecrules.add(AvailableAccessRules.REGULAR_STORECERTIFICATE);			requiredaccepnonrecrules.add(AvailableAccessRules.REGULAR_VIEWCERTIFICATE);									Iterator iter = currentaccessrules.iterator();			boolean illegal = false;			while(iter.hasNext()){				AccessRule ar = (AccessRule) iter.next();	     					if(!isAllowedRAAdministratorRule(ar))						if(ar.getRule() == AccessRule.RULE_ACCEPT && !ar.isRecursive() && requiredaccepnonrecrules.contains(ar.getAccessRule()))							requiredaccepnonrecrules.remove(ar.getAccessRule());						else{							illegal = true;							break;						}				}			if(!illegal && requiredaccepnonrecrules.size() == 0)				returnval = true;	     	    	     		}				return returnval;	}			private boolean isAllowedRAAdministratorRule(AccessRule ar){

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看一区日韩| 国产欧美一区二区三区沐欲| 粉嫩av一区二区三区粉嫩| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 欧美三级日本三级少妇99| 99亚偷拍自图区亚洲| 99久久亚洲一区二区三区青草| 韩国毛片一区二区三区| 国产成+人+日韩+欧美+亚洲| 不卡高清视频专区| 在线免费亚洲电影| 日韩无一区二区| 欧美精品一区二区蜜臀亚洲| 国产欧美一区二区在线| 中文字幕在线观看不卡| 亚洲午夜av在线| 久久精品国产亚洲a| thepron国产精品| 6080国产精品一区二区| 国产亚洲精久久久久久| 一级女性全黄久久生活片免费| 精品影视av免费| 色吊一区二区三区| 久久久精品人体av艺术| 午夜视频一区二区| 91日韩精品一区| 亚洲精品在线观看视频| 亚洲国产视频a| av高清不卡在线| 久久久久久久综合色一本| 亚洲成人在线免费| 99国产精品国产精品毛片| 久久亚洲精品国产精品紫薇| 午夜电影久久久| 欧美日韩精品一区二区| 亚洲婷婷在线视频| 97精品国产97久久久久久久久久久久| 日韩亚洲欧美综合| 亚洲午夜精品在线| 欧美视频中文一区二区三区在线观看| 久久这里只有精品视频网| 久久99国产精品尤物| 欧美一区二区三区性视频| 水蜜桃久久夜色精品一区的特点| 91捆绑美女网站| 午夜精品免费在线| 精品日本一线二线三线不卡| 狠狠色丁香婷婷综合| ww亚洲ww在线观看国产| 不卡电影一区二区三区| 亚洲第一会所有码转帖| 日韩免费观看高清完整版| 国产精品一品二品| 一区二区三区日韩精品视频| 欧美伦理电影网| 国产很黄免费观看久久| 亚洲一区二区三区视频在线播放| 日韩三级中文字幕| www.66久久| 韩国av一区二区| 亚洲国产综合色| 国产精品久久久久三级| 欧美刺激午夜性久久久久久久| 狠狠色丁香九九婷婷综合五月| 亚洲人成精品久久久久| 欧美tickle裸体挠脚心vk| 欧美视频一区在线| 成人三级伦理片| 国产福利视频一区二区三区| 天堂成人国产精品一区| 亚洲一区二区三区激情| 国产精品理伦片| 久久久久88色偷偷免费| 精品国产乱码久久久久久免费| 欧美美女一区二区| 欧美三级电影一区| 在线影院国内精品| 欧美日韩另类一区| 欧美精选午夜久久久乱码6080| 色婷婷精品久久二区二区蜜臂av| 国产一区二区三区观看| 美女看a上一区| 天天av天天翘天天综合网色鬼国产 | 精品无人区卡一卡二卡三乱码免费卡| 日韩高清不卡在线| 国产精品一区二区久久不卡 | 成人性生交大片免费| 欧美巨大另类极品videosbest | 日本精品一区二区三区高清| 欧美性大战xxxxx久久久| 精品日韩一区二区| 一区二区三区在线观看视频| 青青草国产精品亚洲专区无| 99精品国产91久久久久久| 久久婷婷成人综合色| 亚洲图片欧美视频| eeuss鲁片一区二区三区 | 一本到不卡精品视频在线观看| 欧美不卡激情三级在线观看| 亚洲欧美日韩综合aⅴ视频| 久久99精品国产| 91精品国产高清一区二区三区蜜臀 | 国精品**一区二区三区在线蜜桃| 在线亚洲高清视频| 亚洲国产中文字幕在线视频综合| 盗摄精品av一区二区三区| 日韩精品中午字幕| 日本不卡一区二区三区高清视频| 欧美做爰猛烈大尺度电影无法无天| 国产精品嫩草影院av蜜臀| 六月丁香综合在线视频| 欧洲一区在线观看| 日韩和欧美一区二区三区| 欧美日本高清视频在线观看| 美女诱惑一区二区| 日韩欧美电影一区| 国产成人av一区| 亚洲女人的天堂| 欧美日韩黄色一区二区| 国产精品自拍毛片| 国产精品初高中害羞小美女文| 91亚洲国产成人精品一区二三| 亚洲精品久久7777| 精品视频资源站| 国产91丝袜在线播放| 亚洲精品国产无天堂网2021| 日韩一区二区三区在线| 国产+成+人+亚洲欧洲自线| 亚洲国产精品久久不卡毛片| 精品久久免费看| 欧美三区在线观看| 成人ar影院免费观看视频| 久久疯狂做爰流白浆xx| 一区二区在线免费| 国产精品乱码一区二三区小蝌蚪| 欧美色图激情小说| 一本久道中文字幕精品亚洲嫩| 久久99久久精品欧美| 日韩av电影天堂| 亚洲第一福利视频在线| 一区精品在线播放| 国产精品亲子乱子伦xxxx裸| 国产偷国产偷亚洲高清人白洁 | 亚洲色大成网站www久久九九| 精品少妇一区二区三区日产乱码| 欧美日本免费一区二区三区| 91福利社在线观看| 色婷婷av一区二区三区大白胸| 国产大陆亚洲精品国产| 国产.欧美.日韩| 国产suv精品一区二区883| 久久99精品久久久久婷婷| 激情欧美一区二区| 国内久久婷婷综合| 亚洲国产精品影院| 一区二区免费视频| 亚洲国产另类av| 美日韩一区二区三区| 国产综合色精品一区二区三区| 国产jizzjizz一区二区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 日韩欧美亚洲国产精品字幕久久久| 91精品综合久久久久久| 久久精品一区八戒影视| 国产欧美精品一区二区三区四区| 玉米视频成人免费看| 久久99精品久久久久婷婷| 99精品国产99久久久久久白柏| 7777精品伊人久久久大香线蕉超级流畅| 精品国产一区久久| 亚洲精品一二三| 国产一区二区调教| 欧美视频第二页| 国产精品国模大尺度视频| 午夜精品福利视频网站| a美女胸又www黄视频久久| 欧美xxxxxxxx| 蜜臀av性久久久久蜜臀aⅴ四虎| 一本到三区不卡视频| 亚洲国产精华液网站w| 国产一区二区三区美女| 欧美成人免费网站| 麻豆国产91在线播放| 欧美日本一道本| 首页国产丝袜综合| 欧美特级限制片免费在线观看| 亚洲丝袜自拍清纯另类| 国产成人综合视频| 中文久久乱码一区二区| 高清shemale亚洲人妖| 国产精品无人区| 国产69精品久久99不卡| 国产精品福利一区| 91久久精品日日躁夜夜躁欧美| 一区二区在线观看不卡| 欧美自拍偷拍午夜视频| 久久黄色级2电影| www一区二区| 99re在线精品| 日本va欧美va瓶|