Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [%SYS] >  [PKI] >  [CAServer]
Private  Storage   

persistent class PKI.CAServer extends %Persistent, %SOAP.WebService

Certificate Authority server. Use with PKI.CAClient.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
3 10 6 1


Summary

Properties
%Concurrency Action AddressingIn AddressingOut
AdminEmail Attachments AttributePrompt AttributeType
Base64LineBreaks BodyId BodyXmlId CAFilename
CAPath ContentId ContentLocation Days
FaultAddressing FaultHeaders HeadersIn HeadersOut
ImportHandler IsMTOM Location MTOMRequired
MethodName MsgClass Name NamespacesOut
OneWay OutputTypeAttribute Password RMSession
ReferencesInline RequestMessageStart ResponseAttachments ResponseContentId
ResponseContentLocation SAXFlags SMTPPassword SMTPServer
SMTPUsername SecurityContextToken SecurityIn SecurityNamespace
SecurityOut SessionCookie SoapFault SoapVersion
Timeout Transport Username WriteSOAPBodyMethod
policyAlternative

Methods
%%OIDGet %1Check %AddEnvelopeNamespace %AddJrnObjToSyncSet
%AddToSaveSet %AddToSyncSet %BMEBuilt %BindExport
%BuildIndices %BuildIndicesSegment %BuildObjectGraph %CheckConstraints
%CheckConstraintsForExtent %ClassIsLatestVersion %ClassName %Close
%ComposeOid %ConstructClone %Delete %DeleteExtent
%DeleteId %DispatchClassMethod %DispatchGetModified %DispatchGetProperty
%DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%DowngradeConcurrency %ExecuteAfterTriggers %ExecuteBeforeTriggers %Exists
%ExistsId %Extends %FileIndices %FileIndicesBuffered
%GUID %GUIDSet %GetElementFromBody %GetLock
%GetParameter %GetSwizzleObject %Id %IncrementCount
%InsertBatch %IsA %IsModified %IsNull
%JournalObject %KillExtent %KillExtentData %LoadFromMemory
%LockExtent %LockId %New %NormalizeObject
%ObjectIsNull %ObjectModified %Oid %OnBeforeAddToSync
%OnCreateRMSession %OnDetermineClass %Open %OpenId
%OriginalNamespace %PackageName %PhysicalAddress %PurgeIndices
%Reload %RemoveFromSaveSet %ResolveConcurrencyConflict %RestoreTCPDevice
%RollBack %SQLAcquireLock %SQLAcquireTableLock %SQLAfterTriggers
%SQLBeforeTriggers %SQLBuildIndices %SQLBuildPurgeIndexForRow %SQLBuildPurgeIndices
%SQLCheckUnique %SQLCheckUniqueIndices %SQLCheckUniqueKeys %SQLCopyIcolIntoName
%SQLCopyNameIntoIcol %SQLCreateInsDelTables %SQLDefineiDjVars %SQLDelete
%SQLDeleteChildren %SQLDeleteTempStreams %SQLEExit %SQLExists
%SQLFKeyDelLock %SQLFastInsert %SQLFieldValidate %SQLGetLock
%SQLGetOld %SQLGetOldAll %SQLGetOldIndex %SQLInsert
%SQLInsertComputes %SQLInsertStreams %SQLInvalid %SQLInvalid2
%SQLMVDelete %SQLMVIndexDelete %SQLMVIndexInsert %SQLMVIndexUpdate
%SQLMVInsert %SQLMVUpdate %SQLMissing %SQLNormalizeCompFields
%SQLNormalizeFields %SQLPurgeIndices %SQLQuickBulkInsert %SQLQuickBulkLoad
%SQLQuickBulkSave %SQLQuickBulkUpdate %SQLQuickDelete %SQLQuickDeleteChildren
%SQLQuickFindPKeyByRowID %SQLQuickFindRowIDByPKey %SQLQuickInsert %SQLQuickLoad
%SQLQuickLoadChildren %SQLQuickLogicalToOdbc %SQLQuickOdbcToLogical %SQLQuickUpdate
%SQLReleaseLock %SQLReleaseTableLock %SQLStorageValidation %SQLTrigDelTab
%SQLTrigInsTab %SQLUnlock %SQLUnlock2 %SQLUnlockError
%SQLUnlockRef %SQLUpdate %SQLUpdateComputes %SQLUpdateStreams
%SQLValidateCompFields %SQLValidateFields %SQLicompView %SQLnBuild
%Save %SaveDirect %SaveIndices %SaveTCPDevice
%SerializeObject %SetModified %SortBegin %SortEnd
%SyncObjectIn %SyncTransport %UnlockExtent %UnlockId
%UpgradeConcurrency %ValidateIndices %ValidateObject BeginSOAPEnvelope
BuildSubject CheckSOAPEnvelope Configure ConvertParameter
Decrypt Encrypt EncryptBroker EndSOAPEnvelope
EscapeHTML EscapeURL Fault FileWSDL
GetBinaryWriter GetBodyId GetCertificate GetMsgClass
GetSecurityOut HandleException HyperEventBody HyperEventCall
HyperEventFrame HyperEventHead Include Initialize
InitializeSecurity InsertHiddenField InsertHiddenFields InvokeMsgClass
IsPrivate Link ListCertificates LogGlobal
LogInput LogInputHTTPHeaders LogOutput LogOutputHTTPHeaders
LogText MakeFault MakeFault12 MakeFault12Code
MakeFault12Text MakeSecurityFault MakeStatusFault Namespace
NormalizeName OnCancelSecureConversation OnCompile OnHTTPHeader
OnPage OnPageError OnPostHTTP OnPostHyperEvent
OnPostSOAP OnPostWebMethod OnPreHTTP OnPreHyperEvent
OnPreSOAP OnPreWebMethod OnRequestMessage OnSOAPRequest
OnStartSecureConversation Page Process ProcessBinary
ProcessBody ProcessBodyNode ProcessHTTP ProcessSOAPEnvelope
QuoteJS ReadBinaryMessage Reset ResetSecurity
ReturnFault ReturnInternalStatusFault ReturnOneWay RewriteURL
SecurityOutGet SecurityOutSet SessionCookieSet SessionCookieSetInternal
ShowError Sign StartTimer StopTimer
SubmitCSR ThrowError TimeoutSet UnescapeHTML
UnescapeURL WSAddSignatureConfirmation WebMethod WriteFaultHeaders
WriteHTTPContent WriteSOAPHeaders WriteSOAPMessage WriteStartAttachments


Parameters

• parameter NAMESPACE = "http://pki.intersystems.com";
SOAP Namespace for the WebService
• parameter SERVICENAME = "CAServer";
Name of the WebService.
• parameter USECLASSNAMESPACES = 1;
Namespaces of referenced classes will be used in the WSDL.

Properties

• property AdminEmail as %String;
Email address of the administrator of this Certificate Authority server. Email notification will be sent to this address on receipt of a Certificate Signing Request.
• property AttributePrompt as %String(MAXLEN=100) [ InitialExpression = "Country,State or Province,Locality,Organization,Organizational Unit,Common Name" ];
Prompts to use when building a %List for constructing a Subject Distinguished Name.
• property AttributeType as %String [ InitialExpression = "C,ST,L,O,OU,CN" ];
Attribute type keywords to use when building the "-subject" argument to the "openssl req" command
• property CAFilename as %String [ Required ];
Name of this Certificate Authority server's Certificate (.cer) and Private Key (.key) files
• property CAPath as %String(MAXLEN=200);
Path to this Certificate Authority server's Certificate (.cer) and Private Key (.key) files
• property Days as %Integer [ InitialExpression = 365,Required ];
Validity period (in days) for issued certificates
• property Name as %String [ InitialExpression = "IRIS CA",Required ];
The default Certificate Authority server has the name "IRIS CA". There is at most one per InterSystems IRIS instance.
• property SMTPPassword as %String;
SMTP password for sending email notification on receipt of a Certificate Signing Request or issuance of a Certificate
• property SMTPServer as %String;
SMTP server for sending email notification on receipt of a Certificate Signing Request or issuance of a Certificate
• property SMTPUsername as %String;
SMTP username for sending email notification on receipt of a Certificate Signing Request or issuance of a Certificate

Methods

• method BuildSubject(values As %List) as %String
Build the "-subject" argument to the "openssl req" command from a %List
• classmethod Configure(server As PKI.CAServer, attrList As %List, password As %String, days As %Integer, ByRef st As %Status) as %String
Configure this Certificate Authority server. Must be called before Certificate Signing Requests can be submitted or Certificates issued. Creates the OpenSSL configuration file "openssl.cnf" if it does not exist. When called for the first time, this method creates this Certificate Authority server's Certificate (.cer) and Private Key (.key) files, and creates and saves its PKI.Certificate object. Once created these can not be changed. The other properties of this Certificate Authority server can be updated later.
Parameters:
server - PKI.CAServer object, with all required properties set
attrList - %List containing attribute values to be used in constructing this Certificate Authority server's Subject Distinguished Name (first invocation only)
password - Password used to encrypt Private Key file (first invocation only)
days - desired validity period of CA certificate, in days
st - On return, contains a status code
Return value:
String describing successful configuration, or error
• method GetCertificate(number As %String) as PKI.Certificate [ WebMethod ]
Web method for retrieving an X.509 Certificate issued by this Certificate Authority server.
Parameter:
number - serial number of the X.509 Certificate requested, or 0 to request this Certificate Authority server's X.509 Certificate
Return value:
A PKI.Certificate object
• method ListCertificates(hostname As %String, instance As %String) as %XML.DataSet [ WebMethod ]
Web method for retrieving a list of X.509 Certificates issued by this Certificate Authority server.
Return value:
An %XML.DataSet object
• method Sign(name As %String, password As %String, certType As %Integer, ByRef st As %Status) as %String
Issue an X.509 Certificate for a Certificate Signing Request. This method creates and saves a PKI.Certificate object and sends notification to the email address of the local technical contact of the Certificate Authority client that generated the Certificate Signing Request.
Parameters:
name - Name of the Certificate Signing Request to be processed
password - Password for this Certificate Authority server's Private Key file
certType - Intended usage of the issued certificate
1 = TLS/SSL, XML encryption and signature verification
2 = Intermediate Certificate Authority server
st - On return, contains a status code
Return value:
String describing successful Certificate issuance, or error
• method SubmitCSR(csr As PKI.CSR) as %String [ WebMethod ]
Web method for submitting a Certificate Signing Request. This method saves the PKI.CSR object and sends notification to the email address of the administrator of this Certificate Authority server.
Parameter:
csr - a PKI.CSR object
Return value:
String describing successful Certificate Signing Request submission, or a SOAP fault on error

Indices

•index (NameIndex on Name) [IdKey];


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.