⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 editcas.jsp

📁 一套JAVA的CA证书签发系统.
💻 JSP
📖 第 1 页 / 共 3 页
字号:
            ((HardCATokenInfo) catoken).setAuthenticationCode(authenticationcode);
         }

         catype  = Integer.parseInt(request.getParameter(HIDDEN_CATYPE));
         String subjectdn = request.getParameter(TEXTFIELD_SUBJECTDN);
         try{
           X509Name dummy = new X509Name(subjectdn);
         }catch(Exception e){
           illegaldnoraltname = true;
         }
         int certprofileid = 0;
         if(request.getParameter(SELECT_CERTIFICATEPROFILE) != null)
           certprofileid = Integer.parseInt(request.getParameter(SELECT_CERTIFICATEPROFILE));
         int signedby = 0;
         if(request.getParameter(SELECT_SIGNEDBY) != null)
            signedby = Integer.parseInt(request.getParameter(SELECT_SIGNEDBY));
         String description = request.getParameter(TEXTFIELD_DESCRIPTION);        
         if(description == null)
           description = "";
         
         int validity = 0;
         if(request.getParameter(TEXTFIELD_VALIDITY) != null)
           validity = Integer.parseInt(request.getParameter(TEXTFIELD_VALIDITY));  

         if(catoken != null && catype != 0 && subjectdn != null && caname != null 
            && signedby != 0  ){
           if(catype == CAInfo.CATYPE_X509){
              // Create a X509 CA
              String subjectaltname = request.getParameter(TEXTFIELD_SUBJECTALTNAME);             
              if(subjectaltname == null)
                subjectaltname = ""; 
              else{
                if(!subjectaltname.trim().equals("")){
                   se.anatom.ejbca.ra.raadmin.DNFieldExtractor subtest = 
                     new se.anatom.ejbca.ra.raadmin.DNFieldExtractor(subjectaltname,se.anatom.ejbca.ra.raadmin.DNFieldExtractor.TYPE_SUBJECTALTNAME);                   
                   if(subtest.isIllegal() || subtest.existsOther()){
                     illegaldnoraltname = true;
                   }
                }
              }    

              String policyid = request.getParameter(TEXTFIELD_POLICYID);
              if(policyid == null || policyid.trim().equals(""))
                 policyid = null; 

              int crlperiod = Integer.parseInt(request.getParameter(TEXTFIELD_CRLPERIOD));

              boolean useauthoritykeyidentifier = false;
              boolean authoritykeyidentifiercritical = false;
              String value = request.getParameter(CHECKBOX_AUTHORITYKEYIDENTIFIER);
              if(value != null){
                 useauthoritykeyidentifier = value.equals(CHECKBOX_VALUE);                 
                 value = request.getParameter(CHECKBOX_AUTHORITYKEYIDENTIFIERCRITICAL); 
                 if(value != null){
                   authoritykeyidentifiercritical = value.equals(CHECKBOX_VALUE);
                 } 
                 else
                   authoritykeyidentifiercritical = false;
              }

              boolean usecrlnumber = false;
              boolean crlnumbercritical = false;
              value = request.getParameter(CHECKBOX_USECRLNUMBER);
              if(value != null){
                 usecrlnumber = value.equals(CHECKBOX_VALUE);                 
                 value = request.getParameter(CHECKBOX_CRLNUMBERCRITICAL); 
                 if(value != null){
                   crlnumbercritical = value.equals(CHECKBOX_VALUE);
                 } 
                 else
                   crlnumbercritical = false;
              }              
              
             boolean finishuser = false;
             value = request.getParameter(CHECKBOX_FINISHUSER);
             if(value != null)
               finishuser = value.equals(CHECKBOX_VALUE);         

             String[] values = request.getParameterValues(SELECT_AVAILABLECRLPUBLISHERS);
             ArrayList crlpublishers = new ArrayList(); 
             if(values != null){
               for(int i=0; i < values.length; i++){
                  crlpublishers.add(new Integer(values[i]));
               }
             }

             int ocspactive = ExtendedCAServiceInfo.STATUS_INACTIVE;
             value = request.getParameter(CHECKBOX_ACTIVATEOCSPSERVICE);
             if(value != null && value.equals(CHECKBOX_VALUE))
                ocspactive = ExtendedCAServiceInfo.STATUS_ACTIVE;             
              
             if(crlperiod != 0 && !illegaldnoraltname){
               if(request.getParameter(BUTTON_CREATE) != null){           
      
		 // Create and active OSCP CA Service.
		 ArrayList extendedcaservices = new ArrayList();
		 extendedcaservices.add(
		             new OCSPCAServiceInfo(ocspactive,
						  "CN=OCSPSignerCertificate, " + subjectdn,
			     		  "",
						  2048,
						  OCSPCAServiceInfo.KEYALGORITHM_RSA));
                 X509CAInfo x509cainfo = new X509CAInfo(subjectdn, caname, 0, subjectaltname,
                                                        certprofileid, validity, 
                                                        null, catype, signedby,
                                                        null, catoken, description, -1, null,
                                                        policyid, crlperiod, crlpublishers, 
                                                        useauthoritykeyidentifier, 
                                                        authoritykeyidentifiercritical,
                                                        usecrlnumber, 
                                                        crlnumbercritical, 
                                                        finishuser, extendedcaservices);
                 try{
                   cadatahandler.createCA((CAInfo) x509cainfo);
                 }catch(CAExistsException caee){
                    caexists = true; 
                 }catch(CATokenAuthenticationFailedException catfe){
                    catokenauthfailed = true;
                 }
                 includefile="choosecapage.jsp"; 
               }
               if(request.getParameter(BUTTON_MAKEREQUEST) != null){
                 caid = CertTools.stringToBCDNString(subjectdn).hashCode();  
		 // Create and OSCP CA Service.
		 ArrayList extendedcaservices = new ArrayList();
		 extendedcaservices.add(
		             new OCSPCAServiceInfo(ocspactive,
						  "CN=OCSPSignerCertificate, " + subjectdn,
			     		          "",
						  2048,
						  OCSPCAServiceInfo.KEYALGORITHM_RSA));
                 X509CAInfo x509cainfo = new X509CAInfo(subjectdn, caname, caid, subjectaltname,
                                                        certprofileid, validity,
                                                        null, catype, CAInfo.SIGNEDBYEXTERNALCA,
                                                        null, catoken, description, -1, null, 
                                                        policyid, crlperiod, crlpublishers, 
                                                        useauthoritykeyidentifier, 
                                                        authoritykeyidentifiercritical,
                                                        usecrlnumber, 
                                                        crlnumbercritical, 
                                                        finishuser, extendedcaservices);
                 cabean.saveRequestInfo(x509cainfo);                
                 filemode = MAKEREQUESTMODE;
                 includefile="recievefile.jsp"; 
               }
             }                          
           } 
         } 
       } 
       if(request.getParameter(BUTTON_CANCEL) != null){
         // Don't save changes.
         includefile="choosecapage.jsp"; 
       }                        
      }
    if( action.equals(ACTION_EDIT_CA)){
      if( request.getParameter(BUTTON_SAVE)  != null || 
          request.getParameter(BUTTON_RECEIVEREQUEST)  != null || 
          request.getParameter(BUTTON_RENEWCA)  != null ||
          request.getParameter(BUTTON_REVOKECA)  != null ||
          request.getParameter(BUTTON_PUBLISHCA) != null ||
          request.getParameter(BUTTON_REVOKERENEWOCSPCERTIFICATE) != null){
         // Create and save CA                          
         caid = Integer.parseInt(request.getParameter(HIDDEN_CAID));
         caname = request.getParameter(HIDDEN_CANAME);
         catype = Integer.parseInt(request.getParameter(HIDDEN_CATYPE));
         
         CATokenInfo catoken = null;
         catokentype = Integer.parseInt(request.getParameter(HIDDEN_CATOKENTYPE));
         if(catokentype == CATokenInfo.CATOKENTYPE_P12){
           catoken = new SoftCATokenInfo();          
         } 
         if(catokentype == CATokenInfo.CATOKENTYPE_HSM){
            String properties = request.getParameter(TEXTFIELD_HARDCATOKENPROPERTIES);
            if(catokenpath == null)
              throw new Exception("Error in CATokenData");  
            catoken = new HardCATokenInfo();                       
            ((HardCATokenInfo) catoken).setProperties(properties);
         }

          
         String description = request.getParameter(TEXTFIELD_DESCRIPTION);        

         int validity = 0;
         if(request.getParameter(TEXTFIELD_VALIDITY) != null)
           validity = Integer.parseInt(request.getParameter(TEXTFIELD_VALIDITY));
            

         if(caid != 0 && description != null && catype !=0 ){
           if(catype == CAInfo.CATYPE_X509){
              // Edit X509 CA data              
              
              int crlperiod = Integer.parseInt(request.getParameter(TEXTFIELD_CRLPERIOD));

              boolean useauthoritykeyidentifier = false;
              boolean authoritykeyidentifiercritical = false;
              String value = request.getParameter(CHECKBOX_AUTHORITYKEYIDENTIFIER);
              if(value != null){
                 useauthoritykeyidentifier = value.equals(CHECKBOX_VALUE);                 
                 value = request.getParameter(CHECKBOX_AUTHORITYKEYIDENTIFIERCRITICAL); 
                 if(value != null){
                   authoritykeyidentifiercritical = value.equals(CHECKBOX_VALUE);
                 } 
                 else
                   authoritykeyidentifiercritical = false;
              }


              boolean usecrlnumber = false;
              boolean crlnumbercritical = false;

              value = request.getParameter(CHECKBOX_USECRLNUMBER);
              if(value != null){
                 usecrlnumber = value.equals(CHECKBOX_VALUE);                 
                 value = request.getParameter(CHECKBOX_CRLNUMBERCRITICAL); 
                 if(value != null){
                   crlnumbercritical = value.equals(CHECKBOX_VALUE);
                 } 
                 else
                   crlnumbercritical = false;
              }              
              
             boolean finishuser = false;
             value = request.getParameter(CHECKBOX_FINISHUSER);
             if(value != null)
               finishuser = value.equals(CHECKBOX_VALUE);         

             String[] values = request.getParameterValues(SELECT_AVAILABLECRLPUBLISHERS);
             ArrayList crlpublishers = new ArrayList(); 
             if(values != null){
                 for(int i=0; i < values.length; i++){
                    crlpublishers.add(new Integer(values[i]));
                 }
              }
              
              // Create extended CA Service updatedata.
              int active = ExtendedCAServiceInfo.STATUS_INACTIVE;
              value = request.getParameter(CHECKBOX_ACTIVATEOCSPSERVICE);
              if(value != null && value.equals(CHECKBOX_VALUE))
                active = ExtendedCAServiceInfo.STATUS_ACTIVE;             

              boolean renew = false;
              if(active == ExtendedCAServiceInfo.STATUS_ACTIVE && 
                 request.getParameter(BUTTON_REVOKERENEWOCSPCERTIFICATE) != null){
                 cadatahandler.revokeOCSPCertificate(caid);
                 renew=true;
                 ocsprenewed = true;             
                 includefile="choosecapage.jsp"; 
               }

	      ArrayList extendedcaservices = new ArrayList();
              extendedcaservices.add(
		             new OCSPCAServiceInfo(active, renew));       

             if(crlperiod != 0){
               X509CAInfo x509cainfo = new X509CAInfo(caid, validity,
                                                      catoken, description, 
                                                      crlperiod, crlpublishers, 
                                                      useauthoritykeyidentifier, 
                                                      authoritykeyidentifiercritical,
                                                      usecrlnumber, 
                                                      crlnumbercritical, 
                                                      finishuser,extendedcaservices);
                 
               cadatahandler.editCA((CAInfo) x509cainfo);
                 

               
               if(request.getParameter(BUTTON_SAVE) != null){
                  // Do nothing More

                  includefile="choosecapage.jsp"; 
               }
               if(request.getParameter(BUTTON_RECEIVEREQUEST) != null){                  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -