📄 editcas.jsp
字号:
<%@ page pageEncoding="ISO-8859-1"%><%@page errorPage="/errorpage.jsp" import="java.util.*, java.io.*, org.apache.commons.fileupload.*, se.anatom.ejbca.webdist.webconfiguration.EjbcaWebBean,se.anatom.ejbca.ra.raadmin.GlobalConfiguration, se.anatom.ejbca.SecConst, se.anatom.ejbca.util.FileTools, se.anatom.ejbca.util.CertTools, se.anatom.ejbca.authorization.AuthorizationDeniedException, se.anatom.ejbca.webdist.cainterface.CAInterfaceBean, se.anatom.ejbca.ca.caadmin.CAInfo, se.anatom.ejbca.ca.caadmin.X509CAInfo, se.anatom.ejbca.ca.caadmin.CATokenInfo, se.anatom.ejbca.ca.caadmin.SoftCATokenInfo, se.anatom.ejbca.webdist.cainterface.CADataHandler, se.anatom.ejbca.webdist.rainterface.RevokedInfoView, se.anatom.ejbca.ca.caadmin.CATokenInfo, se.anatom.ejbca.ca.caadmin.SoftCATokenInfo, se.anatom.ejbca.webdist.webconfiguration.InformationMemory, org.bouncycastle.asn1.x509.X509Name, se.anatom.ejbca.common.ExtendedPKCS10CertificationRequest, se.anatom.ejbca.protocol.PKCS10RequestMessage, se.anatom.ejbca.ca.exception.CAExistsException, se.anatom.ejbca.ca.exception.CADoesntExistsException, se.anatom.ejbca.ca.exception.CATokenOfflineException, se.anatom.ejbca.ca.exception.CATokenAuthenticationFailedException, se.anatom.ejbca.ca.caadmin.extendedcaservices.OCSPCAServiceInfo, se.anatom.ejbca.ca.caadmin.extendedcaservices.ExtendedCAServiceInfo, se.anatom.ejbca.ca.caadmin.hardcatokens.HardCATokenManager, se.anatom.ejbca.ca.caadmin.AvailableHardCAToken, se.anatom.ejbca.ca.caadmin.HardCATokenInfo"%><html><jsp:useBean id="ejbcawebbean" scope="session" class="se.anatom.ejbca.webdist.webconfiguration.EjbcaWebBean" /><jsp:useBean id="cabean" scope="session" class="se.anatom.ejbca.webdist.cainterface.CAInterfaceBean" /><%! // Declarations static final String ACTION = "action"; static final String ACTION_EDIT_CAS = "editcas"; static final String ACTION_EDIT_CA = "editca"; static final String ACTION_CREATE_CA = "createca"; static final String ACTION_CHOOSE_CATYPE = "choosecatype"; static final String ACTION_CHOOSE_CATOKENTYPE = "choosecatokentype"; static final String ACTION_MAKEREQUEST = "makerequest"; static final String ACTION_RECEIVERESPONSE = "receiveresponse"; static final String ACTION_PROCESSREQUEST = "processrequest"; static final String ACTION_PROCESSREQUEST2 = "processrequest2"; static final String ACTION_RENEWCA_MAKEREQUEST = "renewcamakeresponse"; static final String ACTION_RENEWCA_RECIEVERESPONSE = "renewcarecieveresponse"; static final String CHECKBOX_VALUE = "true";// Used in choosecapage.jsp static final String BUTTON_EDIT_CA = "buttoneditca"; static final String BUTTON_DELETE_CA = "buttondeleteca"; static final String BUTTON_CREATE_CA = "buttoncreateca"; static final String BUTTON_RENAME_CA = "buttonrenameca"; static final String BUTTON_PROCESSREQUEST = "buttonprocessrequest"; static final String SELECT_CAS = "selectcas"; static final String TEXTFIELD_CANAME = "textfieldcaname"; static final String HIDDEN_CANAME = "hiddencaname"; static final String HIDDEN_CAID = "hiddencaid"; static final String HIDDEN_CATYPE = "hiddencatype"; static final String HIDDEN_CATOKENPATH = "hiddencatokenpath"; static final String HIDDEN_CATOKENTYPE = "hiddencatokentype"; // Buttons used in editcapage.jsp static final String BUTTON_SAVE = "buttonsave"; static final String BUTTON_CREATE = "buttoncreate"; static final String BUTTON_CANCEL = "buttoncancel"; static final String BUTTON_MAKEREQUEST = "buttonmakerequest"; static final String BUTTON_RECEIVEREQUEST = "buttonreceiverequest"; static final String BUTTON_RENEWCA = "buttonrenewca"; static final String BUTTON_REVOKECA = "buttonrevokeca"; static final String BUTTON_RECIEVEFILE = "buttonrecievefile"; static final String BUTTON_PUBLISHCA = "buttonpublishca"; static final String BUTTON_REVOKERENEWOCSPCERTIFICATE = "checkboxrenewocspcertificate"; static final String TEXTFIELD_SUBJECTDN = "textfieldsubjectdn"; static final String TEXTFIELD_SUBJECTALTNAME = "textfieldsubjectaltname"; static final String TEXTFIELD_CRLPERIOD = "textfieldcrlperiod"; static final String TEXTFIELD_DESCRIPTION = "textfielddescription"; static final String TEXTFIELD_VALIDITY = "textfieldvalidity"; static final String TEXTFIELD_POLICYID = "textfieldpolicyid"; static final String TEXTFIELD_HARDCATOKENPROPERTIES = "textfieldhardcatokenproperties"; static final String TEXTFIELD_AUTHENTICATIONCODE = "textfieldauthenticationcode"; static final String CHECKBOX_AUTHORITYKEYIDENTIFIER = "checkboxauthoritykeyidentifier"; static final String CHECKBOX_AUTHORITYKEYIDENTIFIERCRITICAL = "checkboxauthoritykeyidentifiercritical"; static final String CHECKBOX_USECRLNUMBER = "checkboxusecrlnumber"; static final String CHECKBOX_CRLNUMBERCRITICAL = "checkboxcrlnumbercritical"; static final String CHECKBOX_FINISHUSER = "checkboxfinishuser"; static final String CHECKBOX_ACTIVATEOCSPSERVICE = "checkboxactivateocspservice"; static final String HIDDEN_CATOKEN = "hiddencatoken"; static final String SELECT_REVOKEREASONS = "selectrevokereasons"; static final String SELECT_CATYPE = "selectcatype"; static final String SELECT_CATOKEN = "selectcatoken"; static final String SELECT_SIGNEDBY = "selectsignedby"; static final String SELECT_KEYSIZE = "selectsize"; static final String SELECT_AVAILABLECRLPUBLISHERS = "selectavailablecrlpublishers"; static final String SELECT_CERTIFICATEPROFILE = "selectcertificateprofile"; static final String SELECT_SIGNATUREALGORITHM = "selectsignaturealgorithm"; static final String FILE_RECIEVEFILE = "filerecievefile"; static final String FILE_CACERTFILE = "filecacertfile"; static final String FILE_REQUESTFILE = "filerequestfile"; static final String CERTSERNO_PARAMETER = "certsernoparameter"; static final int MAKEREQUESTMODE = 0; static final int RECIEVERESPONSEMODE = 1; static final int PROCESSREQUESTMODE = 2; static final int CERTREQGENMODE = 0; static final int CERTGENMODE = 1;%><% // Initialize environment int caid = 0; String caname = null; String includefile = "choosecapage.jspf"; String processedsubjectdn = ""; int catype = CAInfo.CATYPE_X509; // default int catokentype = CATokenInfo.CATOKENTYPE_P12; // default String catokenpath = "NONE"; InputStream file = null; boolean caexists = false; boolean cadeletefailed = false; boolean illegaldnoraltname = false; boolean errorrecievingfile = false; boolean ocsprenewed = false; boolean catokenoffline = false; boolean catokenauthfailed = false; GlobalConfiguration globalconfiguration = ejbcawebbean.initialize(request, "/super_administrator"); cabean.initialize(request, ejbcawebbean); CADataHandler cadatahandler = cabean.getCADataHandler(); String THIS_FILENAME = globalconfiguration.getCaPath() + "/editcas/editcas.jsp"; String action = ""; final String VIEWCERT_LINK = globalconfiguration.getBaseUrl() + globalconfiguration.getAdminWebPath() + "viewcertificate.jsp"; boolean issuperadministrator = false; boolean editca = false; boolean processrequest = false; boolean buttoncancel = false; boolean caactivated = false; boolean carenewed = false; boolean capublished = false; int filemode = 0; int row = 0; HashMap caidtonamemap = cabean.getCAIdToNameMap(); InformationMemory info = ejbcawebbean.getInformationMemory();%> <head> <title><%= globalconfiguration .getEjbcaTitle() %></title> <base href="<%= ejbcawebbean.getBaseUrl() %>"> <link rel=STYLESHEET href="<%= ejbcawebbean.getCssFile() %>"> <script language=javascript src="<%= globalconfiguration.getAdminWebPath() %>ejbcajslib.js"></script></head><% if(FileUpload.isMultipartContent(request)){ errorrecievingfile = true; DiskFileUpload upload = new DiskFileUpload(); upload.setSizeMax(60000); upload.setSizeThreshold(59999); List /* FileItem */ items = upload.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { if(item.getFieldName().equals(ACTION)) action = item.getString(); if(item.getFieldName().equals(HIDDEN_CAID)) caid = Integer.parseInt(item.getString()); if(item.getFieldName().equals(HIDDEN_CANAME)) caname = item.getString(); if(item.getFieldName().equals(BUTTON_CANCEL)) buttoncancel = true; }else{ file = item.getInputStream(); errorrecievingfile = false; } } }else{ action = request.getParameter(ACTION); } try{ // Determine action if( action != null){ if( action.equals(ACTION_EDIT_CAS)){ // Actions in the choose CA page. if( request.getParameter(BUTTON_EDIT_CA) != null){ // Display profilepage.jsp includefile="choosecapage.jspf"; if(request.getParameter(SELECT_CAS) != null){ caid = Integer.parseInt(request.getParameter(SELECT_CAS)); if(caid != 0){ editca = true; includefile="editcapage.jspf"; } } } if( request.getParameter(BUTTON_DELETE_CA) != null) { // Delete profile and display choosecapage. if(request.getParameter(SELECT_CAS) != null){ caid = Integer.parseInt(request.getParameter(SELECT_CAS)); if(caid != 0){ cadeletefailed = !cadatahandler.removeCA(caid); } } includefile="choosecapage.jspf"; } if( request.getParameter(BUTTON_RENAME_CA) != null){ // Rename selected profile and display profilespage. if(request.getParameter(SELECT_CAS) != null && request.getParameter(TEXTFIELD_CANAME) != null){ String newcaname = request.getParameter(TEXTFIELD_CANAME).trim(); String oldcaname = (String) caidtonamemap.get(new Integer(request.getParameter(SELECT_CAS))); if(!newcaname.equals("") ){ try{ cadatahandler.renameCA(oldcaname, newcaname); }catch( CAExistsException e){ caexists=true; } } } includefile="choosecapage.jspf"; } if( request.getParameter(BUTTON_CREATE_CA) != null){ // Add profile and display profilespage. includefile="choosecapage.jspf"; caname = request.getParameter(TEXTFIELD_CANAME); if(caname != null){ caname = caname.trim(); if(!caname.equals("")){ editca = false; includefile="editcapage.jspf"; } } } if( request.getParameter(BUTTON_PROCESSREQUEST) != null){ caname = request.getParameter(TEXTFIELD_CANAME); if(caname != null){ caname = caname.trim(); if(!caname.equals("")){ filemode = PROCESSREQUESTMODE; includefile="recievefile.jspf"; } } } } if( action.equals(ACTION_CREATE_CA)){ if( request.getParameter(BUTTON_CREATE) != null || request.getParameter(BUTTON_MAKEREQUEST) != null){ // Create and save CA caname = request.getParameter(HIDDEN_CANAME); CATokenInfo catoken = null; catokentype = Integer.parseInt(request.getParameter(HIDDEN_CATOKENTYPE)); if(catokentype == CATokenInfo.CATOKENTYPE_P12){ int keysize = Integer.parseInt(request.getParameter(SELECT_KEYSIZE)); String signalg = request.getParameter(SELECT_SIGNATUREALGORITHM); if(keysize == 0 || signalg == null) throw new Exception("Error in CATokenData"); catoken = new SoftCATokenInfo(); catoken.setSignatureAlgorithm(signalg); ((SoftCATokenInfo) catoken).setKeySize(keysize); } if(catokentype == CATokenInfo.CATOKENTYPE_HSM){ catokenpath = request.getParameter(HIDDEN_CATOKENPATH); String properties = request.getParameter(TEXTFIELD_HARDCATOKENPROPERTIES); String signalg = request.getParameter(SELECT_SIGNATUREALGORITHM); String authenticationcode = request.getParameter(TEXTFIELD_AUTHENTICATIONCODE); if(catokenpath == null || catokenpath == null || signalg == null) throw new Exception("Error in CATokenData"); catoken = new HardCATokenInfo(); ((HardCATokenInfo) catoken).setClassPath(catokenpath); ((HardCATokenInfo) catoken).setProperties(properties); ((HardCATokenInfo) catoken).setSignatureAlgorithm(signalg);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -