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

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

?? basicaccessrulesetencoder.java

?? 一套JAVA的CA證書簽發系統.
?? 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高清在线| 26uuu另类欧美| 91成人在线精品| 色就色 综合激情| 欧美日韩国产综合久久| 亚洲精品欧美综合四区| 国产精品国产a| 一区二区三区在线观看网站| 亚洲制服欧美中文字幕中文字幕| 一片黄亚洲嫩模| 国产在线精品免费| 色噜噜偷拍精品综合在线| 亚洲精品欧美二区三区中文字幕| 亚洲自拍另类综合| 国产成人一区在线| 欧美最新大片在线看| 欧美大片在线观看一区| 亚洲欧洲另类国产综合| 日日夜夜一区二区| 欧美日韩一卡二卡| a级精品国产片在线观看| 91高清视频免费看| 精品1区2区在线观看| 夜夜揉揉日日人人青青一国产精品| 美日韩黄色大片| 欧美做爰猛烈大尺度电影无法无天| 精品国产伦理网| 欧美日韩视频在线第一区| 国产精品成人一区二区三区夜夜夜| 日韩电影免费一区| 91网站最新网址| 国产欧美日韩激情| 偷拍与自拍一区| 欧美日韩免费电影| 欧美三级三级三级| 国产精品蜜臀在线观看| 国产曰批免费观看久久久| 欧美一级片免费看| 老司机精品视频在线| 欧美日韩你懂的| 亚洲女人小视频在线观看| 国产三级久久久| 成人三级伦理片| 国产精品盗摄一区二区三区| 91老师国产黑色丝袜在线| 精品国产免费一区二区三区四区| 秋霞成人午夜伦在线观看| 在线不卡免费av| 污片在线观看一区二区| 欧美一区二区三区思思人| 性久久久久久久久| 正在播放一区二区| 裸体一区二区三区| 国产精品视频第一区| 色综合天天狠狠| 久久99精品一区二区三区| 国产精品成人免费精品自在线观看| 99久久精品免费精品国产| 午夜精品成人在线| 国产亚洲成年网址在线观看| 一本大道久久a久久精二百| 亚洲福利视频导航| 国产日韩欧美高清| 色综合久久九月婷婷色综合| 国产永久精品大片wwwapp | 欧美一区二区三区四区高清| 成人午夜短视频| 麻豆91精品91久久久的内涵| 亚洲激情综合网| 国产喷白浆一区二区三区| 91久久精品日日躁夜夜躁欧美| 久久久噜噜噜久噜久久综合| 国内偷窥港台综合视频在线播放| 亚洲国产精品欧美一二99| 国产欧美日韩亚州综合| 91精品国产色综合久久久蜜香臀| 99视频精品全部免费在线| 久久99精品久久久久婷婷| 91麻豆精品国产自产在线| av成人动漫在线观看| 极品少妇xxxx偷拍精品少妇| 亚洲成在人线在线播放| 亚洲成人黄色影院| 亚洲大片一区二区三区| 亚洲一二三四久久| 亚洲第一搞黄网站| 青青青伊人色综合久久| 欧美三级乱人伦电影| 国产一区二区三区观看| 激情文学综合插| 国产一区二区三区免费在线观看| 欧美性大战久久久| 欧美日韩亚洲综合在线| 欧美日韩精品专区| 日韩欧美123| 中文字幕一区在线观看视频| 亚洲小说欧美激情另类| 九色porny丨国产精品| 香蕉乱码成人久久天堂爱免费| 亚洲精品第1页| 天堂影院一区二区| 韩国三级中文字幕hd久久精品| 国产一区欧美二区| 91色乱码一区二区三区| 在线电影欧美成精品| 欧美国产丝袜视频| 日韩精品成人一区二区在线| 成人av资源网站| 欧美大黄免费观看| 国产精品网曝门| 香蕉久久夜色精品国产使用方法 | 欧美变态tickling挠脚心| 久久人人爽人人爽| 亚洲欧洲制服丝袜| 国产成人一区二区精品非洲| 欧美日韩在线免费视频| 亚洲国产经典视频| 免费精品99久久国产综合精品| 成人黄动漫网站免费app| 欧美影视一区二区三区| 不卡一区二区三区四区| 日韩美女天天操| 国产精品一线二线三线| 日韩av在线发布| 欧美日韩一本到| 午夜久久久影院| 欧美亚洲综合色| 亚洲精品网站在线观看| 国产精品资源在线| 日韩一级片网址| 污片在线观看一区二区| 91国偷自产一区二区三区成为亚洲经典| 欧美夫妻性生活| 曰韩精品一区二区| 日本一区二区视频在线观看| 色综合天天综合色综合av| 中文字幕一区二区三区在线不卡| 欧美精品vⅰdeose4hd| 99久久国产综合精品麻豆| 亚洲最快最全在线视频| 7777精品伊人久久久大香线蕉 | 久久亚洲春色中文字幕久久久| 国产精品2024| 丝袜亚洲精品中文字幕一区| 国产三级精品视频| 欧美成人精品福利| 91精品国产综合久久精品| 欧洲另类一二三四区| a级精品国产片在线观看| 免费欧美高清视频| 一区在线播放视频| 亚洲成av人片在www色猫咪| 久久综合国产精品| 欧美日韩电影在线| 色婷婷综合久久久久中文一区二区 | 91国内精品野花午夜精品| 亚洲综合免费观看高清在线观看| 亚洲三级在线免费| 亚洲妇女屁股眼交7| 亚洲成a人片综合在线| 一区二区三区日韩精品| 一区二区三区四区亚洲| 亚洲男人电影天堂| 亚洲一区二区在线免费观看视频| 国产拍揄自揄精品视频麻豆| 久久免费的精品国产v∧| 精品日韩在线观看| 精品国内二区三区| 国产网红主播福利一区二区| 国产色综合一区| 一区二区三区四区蜜桃| 午夜精品aaa| 国产中文字幕一区| gogogo免费视频观看亚洲一| 色综合久久综合| 日韩久久精品一区| 久久精品欧美一区二区三区麻豆| 久久九九久精品国产免费直播| 久久久亚洲精品石原莉奈| 中国色在线观看另类| 国产精品初高中害羞小美女文| 99久精品国产| 欧美一级在线免费| 一级精品视频在线观看宜春院 | 久久精品72免费观看| 91蝌蚪国产九色| 日韩精品资源二区在线| 在线播放视频一区| 日韩欧美视频在线| 国产欧美日韩视频一区二区| 《视频一区视频二区| 亚洲综合一区二区三区| 青青草原综合久久大伊人精品优势| 国产精品91xxx| 中文在线一区二区 | 99在线视频精品| 91麻豆精品国产综合久久久久久| 精品国产免费人成电影在线观看四季| 亚洲国产精品成人综合 | 成人性生交大合|