📄 editcapage.jsp
字号:
<%
TreeMap rootcaprofiles = info.getAuthorizedRootCACertificateProfileNames();
TreeMap subcaprofiles = info.getAuthorizedSubCACertificateProfileNames();
TreeMap casigners = info.getCANames();
HashMap certprofileidtonamemap = info.getCertificateProfileIdToNameMap();
HashMap publisheridtonamemap = ejbcawebbean.getInformationMemory().getPublisherIdToNameMap();
Collection availablecatokens = HardCATokenManager.getAvailableHardCATokens();
String[] availablecatokentypes = new String[availablecatokens.size() + 1];
String[] availablecatokentypetexts = new String[availablecatokens.size() + 1];
availablecatokentypes[0] = "NONE";
availablecatokentypetexts[0] = ejbcawebbean.getText("SOFT");
Iterator availablecatokensiter = availablecatokens.iterator();
int numberofavailabletokens = 1;
while(availablecatokensiter.hasNext()){
AvailableHardCAToken nextavailable = (AvailableHardCAToken) availablecatokensiter.next();
if(nextavailable.isUsed()){
availablecatokentypes[numberofavailabletokens] = nextavailable.getClassPath();
if(nextavailable.isTranslateable()){
availablecatokentypetexts[numberofavailabletokens] = ejbcawebbean.getText(nextavailable.getName());
}else{
availablecatokentypetexts[numberofavailabletokens] = nextavailable.getName();
}
numberofavailabletokens++;
}
}
row = 0;
CAInfo cainfo = null;
X509CAInfo x509cainfo = null;
String catokentext = null;
CATokenInfo catokeninfo = null;
boolean revokable = true;
boolean signbyexternal = false;
boolean isexternal = false;
boolean waitingresponse = false;
if(editca){
cainfo = cabean.getCAInfo(caid).getCAInfo();
catokeninfo = cainfo.getCATokenInfo();
if(catokeninfo instanceof SoftCATokenInfo){
catokentext = ejbcawebbean.getText("SOFT");
}
if(catokeninfo instanceof HardCATokenInfo){
catokentype = CATokenInfo.CATOKENTYPE_HSM;
catokenpath = ((HardCATokenInfo ) catokeninfo).getClassPath();
AvailableHardCAToken availablecatoken = HardCATokenManager.getAvailableHardCAToken(catokenpath);
if(!availablecatoken.isUsed())
throw new Exception("HardCAToken is not used, configuration error");
if(availablecatoken.isTranslateable()){
catokentext = ejbcawebbean.getText(availablecatoken.getName());
}else{
catokentext = availablecatoken.getName();
}
}
revokable = cainfo.getStatus() != SecConst.CA_REVOKED && cainfo.getStatus() != SecConst.CA_EXTERNAL && cainfo.getStatus() != SecConst.CA_WAITING_CERTIFICATE_RESPONSE;
signbyexternal = cainfo.getSignedBy() == CAInfo.SIGNEDBYEXTERNALCA;
isexternal = cainfo.getStatus() == SecConst.CA_EXTERNAL;
waitingresponse = cainfo.getStatus() == SecConst.CA_WAITING_CERTIFICATE_RESPONSE;
x509cainfo = (X509CAInfo) cainfo;
}
OCSPCAServiceInfo ocspcainfo = null;
java.security.cert.X509Certificate ocspcert = null;
if(editca && !isexternal){
Iterator iter = x509cainfo.getExtendedCAServiceInfos().iterator();
while(iter.hasNext()){
ExtendedCAServiceInfo serviceinfo = (ExtendedCAServiceInfo) iter.next();
if(serviceinfo instanceof OCSPCAServiceInfo){
ocspcainfo = (OCSPCAServiceInfo) serviceinfo;
if(ocspcainfo.getOCSPSignerCertificatePath() != null)
ocspcert = (java.security.cert.X509Certificate) ocspcainfo.getOCSPSignerCertificatePath().get(0);
}
}
}
%>
<SCRIPT language="JavaScript">
<!--
<% if(!editca){ %>
var rootcaprofiles = new Array(<%= rootcaprofiles.keySet().size()%>);
var subcaprofiles = new Array(<%= subcaprofiles.keySet().size()%>);
var NAME = 0;
var ID = 1;
<%
Iterator iter = rootcaprofiles.keySet().iterator();
int i = 0;
while(iter.hasNext()){
String next = (String) iter.next(); %>
rootcaprofiles[<%=i%>] = new Array(2);
rootcaprofiles[<%=i%>][NAME] = "<%= next %>";
rootcaprofiles[<%=i%>][ID] = <%= rootcaprofiles.get(next) %>;
<% i++;
}
iter = subcaprofiles.keySet().iterator();
i = 0;
while(iter.hasNext()){
String next = (String) iter.next(); %>
subcaprofiles[<%=i%>] = new Array(2);
subcaprofiles[<%=i%>][NAME] = "<%= next %>";
subcaprofiles[<%=i%>][ID] = <%= subcaprofiles.get(next) %>;
<% i++;
}
%>
function fillCertProfileField(){
var certprofselect = document.ca.<%=SELECT_CERTIFICATEPROFILE%>;
var num = certprofselect.length;
for( i=num-1; i >= 0; i-- ){
certprofselect.options[i]=null;
}
var profiles = subcaprofiles;
if(document.ca.<%= SELECT_SIGNEDBY %>.options[document.ca.<%= SELECT_SIGNEDBY %>.options.selectedIndex].value == <%= CAInfo.SELFSIGNED %>)
profiles = rootcaprofiles;
for( i=0; i < profiles.length; i ++){
certprofselect.options[i]=new Option(profiles[i][NAME],
profiles[i][ID]);
}
}
<% if(!processrequest){ %>
function isExternal(){
var makebutton = document.ca.<%= BUTTON_MAKEREQUEST %>;
var createbutton = document.ca.<%= BUTTON_CREATE %>;
var validityfield = document.ca.<%=TEXTFIELD_VALIDITY%>;
var certproffield = document.ca.<%=SELECT_CERTIFICATEPROFILE %>;
var subjectaltname = document.ca.<%=TEXTFIELD_SUBJECTALTNAME%>;
var policyidfield = document.ca.<%=TEXTFIELD_POLICYID%>;
var activateocsp = document.ca.<%=CHECKBOX_ACTIVATEOCSPSERVICE%>;
makebutton.disabled = true;
createbutton.disabled = false;
validityfield.disabled = false;
certproffield.disabled = false;
subjectaltname.disabled = false;
policyidfield.disabled = false;
activateocsp.disabled = false;
activateocsp.checked = true;
if(document.ca.<%= SELECT_SIGNEDBY %>.options[document.ca.<%= SELECT_SIGNEDBY %>.options.selectedIndex].value == <%= CAInfo.SIGNEDBYEXTERNALCA %>){
makebutton.disabled = false;
createbutton.disabled = true;
validityfield.disabled = true;
certproffield.disabled = true;
subjectaltname.disabled = true;
policyidfield.disabled = true;
activateocsp.disabled = true;
activateocsp.checked = false;
}
}
<% } %>
<% }
if(revokable){ %>
function confirmrevokation(){
var returnval = false;
if(document.ca.<%= SELECT_REVOKEREASONS %>.options.selectedIndex == -1){
alert("<%= ejbcawebbean.getText("AREVOKEATIONREASON") %>");
returnval = false;
}else{
returnval = confirm("<%= ejbcawebbean.getText("AREYOUSUREREVOKECA") %>");
}
return returnval;
}
<% }
if(editca && !isexternal){ %>
function confirmrenewal(){
return confirm("<%= ejbcawebbean.getText("AREYOUSURERENEWCA") %>") && checkallfields();
}
<% if(ocspcert != null){ %>
function viewocspcert(){
var link = "<%= VIEWCERT_LINK %>?<%= CERTSERNO_PARAMETER %>=<%= java.net.URLEncoder.encode(ocspcert.getSerialNumber().toString(16) + "," + CertTools.getIssuerDN(ocspcert),"UTF-8")%>";
link = encodeURI(link);
window.open(link, 'view_cert','height=600,width=500,scrollbars=yes,toolbar=no,resizable=1');
}
function checkactivateocsp(){
if(document.ca.<%=CHECKBOX_ACTIVATEOCSPSERVICE%>.checked){
document.ca.<%=BUTTON_REVOKERENEWOCSPCERTIFICATE%>.disabled = false;
}
else{
document.ca.<%=BUTTON_REVOKERENEWOCSPCERTIFICATE%>.disabled = true;
}
}
<% }
} %>
function checkusefield(usefield, criticalfield){
var usebox = eval("document.ca." + usefield);
var cribox = eval("document.ca." + criticalfield);
if(usebox.checked){
cribox.disabled = false;
}
else{
cribox.checked=false;
cribox.disabled = true;
}
}
function checkallfields(){
var illegalfields = 0;
<% if(!editca){ %>
if(!checkfieldforcompletednchars("document.ca.<%=TEXTFIELD_SUBJECTDN%>","<%= ejbcawebbean.getText("ONLYCHARACTERS") + " " + ejbcawebbean.getText("SUBJECTDN") %>"))
illegalfields++;
if((document.ca.<%= TEXTFIELD_SUBJECTDN %>.value == "")){
alert("<%= ejbcawebbean.getText("YOUAREREQUIRED") + " " + ejbcawebbean.getText("SUBJECTDN")%>");
illegalfields++;
}
<% } %>
<% if(!editca || (editca && cainfo.getSignedBy() != CAInfo.SIGNEDBYEXTERNALCA)){ %>
if(!checkfieldfordecimalnumbers("document.ca.<%=TEXTFIELD_VALIDITY%>","<%= ejbcawebbean.getText("ONLYDECNUMBERSINVALIDITY") %>"))
illegalfields++;
if((document.ca.<%= TEXTFIELD_VALIDITY %>.value == "") && document.ca.<%= SELECT_SIGNEDBY %>.options[document.ca.<%= SELECT_SIGNEDBY %>.options.selectedIndex].value != <%= CAInfo.SIGNEDBYEXTERNALCA %>){
alert("<%= ejbcawebbean.getText("YOUAREREQUIRED") + " " + ejbcawebbean.getText("VALIDITY")%>");
illegalfields++;
}
<% }
if(catype == CAInfo.CATYPE_X509){
if(!editca){%>
if(!checkfieldforcompletednchars("document.ca.<%=TEXTFIELD_SUBJECTALTNAME%>","<%= ejbcawebbean.getText("ONLYCHARACTERS") + " " + ejbcawebbean.getText("SUBJECTALTNAME")%>"))
illegalfields++;
if(!checkfieldforipaddess("document.ca.<%=TEXTFIELD_POLICYID%>","<%= ejbcawebbean.getText("ONLYNUMBERALSANDDOTS") + ejbcawebbean.getText("POLICYID")%>"))
illegalfields++;
<% } %>
<% if(!processrequest){ %>
if(!checkfieldfordecimalnumbers("document.ca.<%=TEXTFIELD_CRLPERIOD%>","<%= ejbcawebbean.getText("ONLYDECNUMBERSINCRLPERIOD") %>"))
illegalfields++;
if((document.ca.<%= TEXTFIELD_CRLPERIOD %>.value == "")){
alert("<%= ejbcawebbean.getText("YOUAREREQUIRED") + " " + ejbcawebbean.getText("CRLPERIOD")%>");
illegalfields++;
}
<% }
} %>
return illegalfields == 0;
}
-->
</SCRIPT>
<body <% if(!editca) out.write(" onload='fillCertProfileField()' "); %>>
<div align="center">
<% if(processrequest){ %>
<h2><%= ejbcawebbean.getText("PROCESSREQUEST") %><br></h2>
<h3><%= ejbcawebbean.getText("CANAME")+ " : " + caname %><br>
<%= ejbcawebbean.getText("ONLYTHEPUBLICKEY") %></h3>
<% }else{
if(editca){ %>
<h2><%= ejbcawebbean.getText("EDITCA") %><br></h2>
<h3><%= ejbcawebbean.getText("CANAME")+ " : " + cainfo.getName() %> </h3>
<% }else{ %>
<h2><%= ejbcawebbean.getText("CREATECA") %><br></h2>
<h3><%= ejbcawebbean.getText("CANAME")+ " : " + caname %> </h3>
<% }
}%>
</div>
<table width="100%" border="0" cellspacing="3" cellpadding="3">
<tr id="Row<%=row++%2%>">
<td width="50%" valign="top">
<div align="left">
<h3> </h3>
</div>
</td>
<td width="50%" valign="top">
<div align="right">
<A href="<%=THIS_FILENAME %>"><u><%= ejbcawebbean.getText("BACKTOCAS") %></u></A>
<!-- <A onclick='displayHelpWindow("<%= ejbcawebbean.getHelpfileInfix("ca_help.html") + "#cas"%>")'>
<u><%= ejbcawebbean.getText("HELP") %></u> </A></div> -->
</td>
</tr>
<% if(!processrequest){ %>
<form name="changecatype" action="<%= THIS_FILENAME %>" method="post">
<input type="hidden" name='<%= ACTION %>' value='<%=ACTION_CHOOSE_CATYPE %>'>
<tr id="Row<%=row++%2%>">
<td width="50%" align="right">
<%= ejbcawebbean.getText("TYPEOFCA") %>
</td>
<td width="50%" valign="top">
X509
</td>
</tr>
</form>
<% if(!isexternal) {
if(editca){ %>
<tr id="Row<%=row++%2%>">
<td width="50%" align="right">
<%= ejbcawebbean.getText("CATOKENTYPE") %>
</td>
<td><%= catokentext %>
</td>
</tr>
<% }else{ %>
<form name="changecatokentype" action="<%= THIS_FILENAME %>" method="post">
<input type="hidden" name='<%= ACTION %>' value='<%=ACTION_CHOOSE_CATOKENTYPE %>'>
<input type="hidden" name='<%= HIDDEN_CANAME %>' value='<%=caname %>'>
<tr id="Row<%=row++%2%>">
<td width="50%" align="right">
<%= ejbcawebbean.getText("CATOKENTYPE") %>
</td>
<td><select name="<%=SELECT_CATOKEN %>" size="1" onchange="document.changecatokentype.submit()"'>
<% for(int i=0; i < numberofavailabletokens; i++){%>
<option value="<%=availablecatokentypes[i] %>" <% if(catokenpath.equals(availablecatokentypes[i]))
out.write("selected"); %>><%= availablecatokentypetexts[i] %></option>
<% } %>
</select>
</td>
</tr>
</form>
<% }
}
}%>
<form name="ca" method="post" action="<%=THIS_FILENAME %>" ENCTYPE="post">
<input type="hidden" name='<%= HIDDEN_CATOKENTYPE %>' value='<%=catokentype %>'>
<input type="hidden" name='<%= HIDDEN_CATYPE %>' value='<%=catype %>'>
<% if(processrequest){ %>
<input type="hidden" name='<%= ACTION %>' value='<%=ACTION_PROCESSREQUEST2 %>'>
<input type="hidden" name='<%= HIDDEN_CANAME %>' value='<%=caname %>'>
<% } else { %>
<% if(editca){ %>
<input type="hidden" name='<%= ACTION %>' value='<%=ACTION_EDIT_CA %>'>
<input type="hidden" name='<%= HIDDEN_CAID %>' value='<%=caid %>'>
<input type="hidden" name='<%= HIDDEN_CANAME %>' value='<%=cainfo.getName() %>'>
<% } else { %>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -