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

📄 cainterfacebean.java

📁 一个免费的CA,基于EJB平台的,老师叫我们测试,现把之共享出来让大家参考
💻 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 org.ejbca.ui.web.admin.cainterface;import java.io.ByteArrayOutputStream;import java.rmi.RemoteException;import java.security.cert.Certificate;import java.security.cert.X509Certificate;import java.util.Collection;import java.util.Collections;import java.util.Comparator;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.TreeMap;import javax.ejb.CreateException;import javax.naming.InitialContext;import javax.naming.NamingException;import javax.servlet.http.HttpServletRequest;import org.bouncycastle.asn1.DEROutputStream;import org.bouncycastle.jce.PKCS10CertificationRequest;import org.ejbca.core.ejb.ServiceLocator;import org.ejbca.core.ejb.authorization.IAuthorizationSessionLocal;import org.ejbca.core.ejb.authorization.IAuthorizationSessionLocalHome;import org.ejbca.core.ejb.ca.caadmin.ICAAdminSessionLocal;import org.ejbca.core.ejb.ca.caadmin.ICAAdminSessionLocalHome;import org.ejbca.core.ejb.ca.crl.ICreateCRLSessionHome;import org.ejbca.core.ejb.ca.publisher.IPublisherSessionLocal;import org.ejbca.core.ejb.ca.publisher.IPublisherSessionLocalHome;import org.ejbca.core.ejb.ca.sign.ISignSessionLocal;import org.ejbca.core.ejb.ca.sign.ISignSessionLocalHome;import org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocal;import org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocalHome;import org.ejbca.core.ejb.hardtoken.IHardTokenSessionLocal;import org.ejbca.core.ejb.hardtoken.IHardTokenSessionLocalHome;import org.ejbca.core.ejb.ra.IUserAdminSessionLocal;import org.ejbca.core.ejb.ra.IUserAdminSessionLocalHome;import org.ejbca.core.ejb.ra.raadmin.IRaAdminSessionLocal;import org.ejbca.core.ejb.ra.raadmin.IRaAdminSessionLocalHome;import org.ejbca.core.model.ca.caadmin.CAInfo;import org.ejbca.core.model.ca.catoken.CATokenOfflineException;import org.ejbca.core.model.ca.certificateprofiles.CertificateProfile;import org.ejbca.core.model.ca.crl.RevokedCertInfo;import org.ejbca.core.model.ca.store.CRLInfo;import org.ejbca.core.model.ca.store.CertReqHistory;import org.ejbca.core.model.ca.store.CertificateInfo;import org.ejbca.core.model.log.Admin;import org.ejbca.ui.web.RequestHelper;import org.ejbca.ui.web.admin.configuration.EjbcaWebBean;import org.ejbca.ui.web.admin.configuration.InformationMemory;import org.ejbca.ui.web.admin.rainterface.CertificateView;import org.ejbca.ui.web.admin.rainterface.RevokedInfoView;import org.ejbca.util.Base64;import org.ejbca.util.CertTools;/** * A class used as an interface between CA jsp pages and CA ejbca functions. * * @author  Philip Vendil * @version $Id: CAInterfaceBean.java,v 1.5 2006/10/31 08:24:11 anatom Exp $ */public class CAInterfaceBean implements java.io.Serializable {    /** Creates a new instance of CaInterfaceBean */    public CAInterfaceBean() {    }    // Public methods    public void initialize(HttpServletRequest request, EjbcaWebBean ejbcawebbean) throws  Exception{      if(!initialized){        administrator = new Admin(((X509Certificate[]) request.getAttribute( "javax.servlet.request.X509Certificate" ))[0]);        ServiceLocator locator = ServiceLocator.getInstance();        ICertificateStoreSessionLocalHome certificatesessionhome = (ICertificateStoreSessionLocalHome) locator.getLocalHome(ICertificateStoreSessionLocalHome.COMP_NAME);        certificatesession = certificatesessionhome.create();                ICAAdminSessionLocalHome caadminsessionhome = (ICAAdminSessionLocalHome) locator.getLocalHome(ICAAdminSessionLocalHome.COMP_NAME);        caadminsession = caadminsessionhome.create();                IAuthorizationSessionLocalHome authorizationsessionhome = (IAuthorizationSessionLocalHome) locator.getLocalHome(IAuthorizationSessionLocalHome.COMP_NAME);        authorizationsession = authorizationsessionhome.create();                IUserAdminSessionLocalHome adminsessionhome = (IUserAdminSessionLocalHome) locator.getLocalHome(IUserAdminSessionLocalHome.COMP_NAME);        adminsession = adminsessionhome.create();        IRaAdminSessionLocalHome raadminsessionhome = (IRaAdminSessionLocalHome) locator.getLocalHome(IRaAdminSessionLocalHome.COMP_NAME);        raadminsession = raadminsessionhome.create();                       		ISignSessionLocalHome home = (ISignSessionLocalHome)locator.getLocalHome(ISignSessionLocalHome.COMP_NAME );	    signsession = home.create();	    	    IHardTokenSessionLocalHome hardtokensessionhome = (IHardTokenSessionLocalHome)locator.getLocalHome(IHardTokenSessionLocalHome.COMP_NAME);	    hardtokensession = hardtokensessionhome.create();               	    	    IPublisherSessionLocalHome publishersessionhome = (IPublisherSessionLocalHome) locator.getLocalHome(IPublisherSessionLocalHome.COMP_NAME);	    publishersession = publishersessionhome.create();               	    	            this.informationmemory = ejbcawebbean.getInformationMemory();                  certificateprofiles = new CertificateProfileDataHandler(administrator, certificatesession, authorizationsession, informationmemory);        cadatahandler = new CADataHandler(administrator, caadminsession, adminsession, raadminsession, certificatesession, authorizationsession, signsession, ejbcawebbean);        publisherdatahandler = new PublisherDataHandler(administrator, publishersession, authorizationsession,         		                                        caadminsession, certificatesession,  informationmemory);        initialized =true;      }    }    public CertificateView[] getCACertificates(int caid) {      CertificateView[] returnval = null;                  Collection chain = signsession.getCertificateChain(administrator, caid);            returnval = new CertificateView[chain.size()];      Iterator iter = chain.iterator();      int i=0;      while(iter.hasNext()){        Certificate next = (Certificate) iter.next();          RevokedInfoView revokedinfo = null;        RevokedCertInfo revinfo = certificatesession.isRevoked(administrator, CertTools.getIssuerDN((X509Certificate) next), ((X509Certificate) next).getSerialNumber());        if(revinfo != null && revinfo.getReason() != RevokedCertInfo.NOT_REVOKED)          revokedinfo = new RevokedInfoView(revinfo);        returnval[i] = new CertificateView((X509Certificate) next, revokedinfo,null);        i++;      }      return returnval;    }        /**     * Method that returns a HashMap connecting available CAIds (Integer) to CA Names (String).     *     */         public HashMap getCAIdToNameMap(){      return informationmemory.getCAIdToNameMap();          }    /**     * Return the name of the CA based on its ID     * @param caId the ca ID     * @return the name of the CA or null if it does not exists.     */    public String getName(Integer caId) {        return (String)informationmemory.getCAIdToNameMap().get(caId);    }    public Collection getAuthorizedCAs(){      return informationmemory.getAuthorizedCAIds();    }                  public TreeMap getEditCertificateProfileNames() {      return informationmemory.getEditCertificateProfileNames();    }    /** Returns the profile name from id proxied */    public String getCertificateProfileName(int profileid) {      return this.informationmemory.getCertificateProfileNameProxy().getCertificateProfileName(profileid);    }        public int getCertificateProfileId(String profilename){      return certificateprofiles.getCertificateProfileId(profilename);    }    public CertificateProfile getCertificateProfile(String name)  throws Exception{      return certificateprofiles.getCertificateProfile(name);    }    public CertificateProfile getCertificateProfile(int id)  throws Exception{      return certificateprofiles.getCertificateProfile(id);    }    public void addCertificateProfile(String name) throws Exception{       CertificateProfile profile = new CertificateProfile();       profile.setAvailableCAs(informationmemory.getAuthorizedCAIds());              certificateprofiles.addCertificateProfile(name, profile);                  }   

⌨️ 快捷键说明

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