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

📄 confirmreq

📁 Perl写的CA认证程序
💻
字号:
## OpenCA - RA Server Command## (c) 1998-2001 by Massimiliano Pala and OpenCA Group####   File Name: confirmReq##       Brief: confirm Request## Description: Adds a confirmed request into the APPROVED_REQUEST dB##  Parameters: key, dataType, text, signatureif ( $cmd !~ /confirmReq/i ) {        configError( "Wrong Command Usage ($cmd/importReqs)!" );        exit 1;}## Get the parametersmy $key 	= $query->param( 'key' );my $dataType 	= $query->param( 'dataType' );my $text 	= $query->param( 'text' );my $head 	= $query->param( 'head' );my $signature 	= $query->param( 'signature' );my $inform	= "PEM";## Get Conf Parametersmy $tempDir	= getRequired('tempDir');my ( $req, $item, $sig, $sigStatus, $signer );$text  = "$head" . "$text\n";$text .= "-----BEGIN PKCS7-----\n";$text .= "$signature\n";$text .= "-----END PKCS7-----\n";if( not $req = $db->getItem( DATATYPE=>$dataType, KEY=>$key) ) {	generalError("Cannot find $dataType REQ in DB!");}if( $req->getParsed()->{HEADER}->{TYPE} =~ /(PKCS#10|IE)/i ) {	$inform = "PEM";} else {	$inform = $req->getParsed()->{HEADER}->{TYPE};}if( not $item = new OpenCA::REQ ( SHELL=>$cryptoShell, 			INFORM=>$inform, DATA=>$text )) {	generalError( "Cannot create a new REQ object ($key)!" );}$signer = libGetSignatureObject( OBJECT=>$item );if ( not $signer ) {	$sigStatus = "<FONT COLOR=\"Red\">Error $errno</FONT><br><br>$errval";} else {	my $sigCert = new OpenCA::X509 ( SHELL => $cryptoShell,                                   DATA => $signer->getSigner()->{CERTIFICATE});	$item->getParsed()->{HEADER}->{OPERATOR} = 					$sigCert->getParsed()->{SERIAL};	$item->getParsed()->{HEADER}->{OPERATOR_DN} = 					$sigCert->getParsed()->{DN};	if( libCheckSignature( OBJECT=>$item ) ) {		$sigStatus = "Valid";	} else {		$sigStatus = "<FONT COLOR=Red>Error $errno</FONT><BR>".			     "<BR>$errval";	}}if ( not $db->deleteItem( DATATYPE=>$dataType, KEY=>$key ) ) {	configError( "Error while deleting REQ ($key)!");	exit 1;}## Store new Item into the APPROVED_REQUEST db$key = $db->storeItem( DATATYPE=>"APPROVED_REQUEST", OBJECT=>$item );if ( not $key ) {	configError ( "Error while adding REQ to DB ($ser)!");	exit 1;}## Send Success Pagesuccess( "Request Approved", 	 "Certificate Request Successfully approved and archivied.<br><br>\n" .	 "<font size=-1 color=\"#006699\">signature: $sigStatus</font>");1;

⌨️ 快捷键说明

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