codeunitAdministration & Setupofficial - Microsoftderived - from the source, no model text

Codeunit 1259 "Certificate Management"

Base Application · System.Security.Encryption

Across versions

  1. BC23present
  2. BC246 procedures added, 4 procedures changed
  3. BC25-26unchanged
  4. BC274 procedures removed, 1 procedures added
  5. BC28-30unchanged

Neighbourhood 12 connected objects and pages

Codeunit 3043 "DotNet_X509Certificate2" (calls, 13 links)DotNet_X509Certificate2Page 1263 "Certificate" (calls, 6 links)CertificateCodeunit 4100 "Temp Blob" (calls, 5 links)Temp BlobCodeunit 4110 "Base64 Convert" (calls, 4 links)Base64 ConvertCodeunit 3000 "DotNet_Array" (calls, 3 links)DotNet_ArrayCodeunit 3041 "DotNet_X509KeyStorageFlags" (calls, 3 links)Codeunit 419 "File Management" (calls, 2 links)File ManagementTable 1262 "Isolated Certificate" (calls, 2 links)Isolated CertificateCodeunit 1266 "Cryptography Management" (calls)Cryptography ManagementCodeunit 1474 "Signature Key" (calls)Signature KeyCodeunit 3058 "DotNet_AsymmetricAlgorithm" (calls)DotNet_AsymmetricAlgorithmCodeunit 3750 "DotNetHelper_SecureString" (calls)

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · System.Security.Encryption · BC23-30 · source at ea08af5e · facts from BC29

Procedures

  • UploadAndVerifyCert(var IsolatedCertificate: Record "Isolated Certificate"): Boolean
  • InitIsolatedCertificateFromBlob(var IsolatedCertificate: Record "Isolated Certificate"; NewTempBlob: Codeunit "Temp Blob"): Boolean
  • VerifyCert(var IsolatedCertificate: Record "Isolated Certificate"): Boolean
  • VerifyCertFromString(var IsolatedCertificate: Record "Isolated Certificate"; CertString: Text)
  • SaveCertToIsolatedStorage(IsolatedCertificate: Record "Isolated Certificate")
  • SavePasswordToIsolatedStorage(var IsolatedCertificate: Record "Isolated Certificate")
  • GetPasswordAsSecureString(var DotNet_SecureString: Codeunit DotNet_SecureString; IsolatedCertificate: Record "Isolated Certificate")
  • GetPasswordAsSecret(IsolatedCertificate: Record "Isolated Certificate"): SecretText + BC24
  • GetCertAsBase64String(IsolatedCertificate: Record "Isolated Certificate"): Text
  • GetCertDataScope(IsolatedCertificate: Record "Isolated Certificate"): DataScope
  • DeleteCertAndPasswordFromIsolatedStorage(IsolatedCertificate: Record "Isolated Certificate")
  • GetUploadedCertFileName(): Text
  • SetCertPassword(CertificatePassword: SecretText) Δ BC24 + BC24 − BC27
  • ReadCertFromStream(Password: SecretText; var InStr: InStream) + BC27
  • ValidateCertFields(var IsolatedCertificate: Record "Isolated Certificate") Δ BC27
  • GetRawCertDataAsBase64String(IsolatedCertificate: Record "Isolated Certificate"): Text
  • VerifyCertFromBase64(Base64String: Text): Boolean
  • GetCertSimpleName(IsolatedCertificate: Record "Isolated Certificate"): Text
  • GetCertPrivateKey(IsolatedCertificate: Record "Isolated Certificate"; var SignatureKey: Codeunit "Signature Key")
  • GetPublicKeyAsBase64String(FullCertificateBase64: Text; Password: SecretText): Text Δ BC24 + BC24 − BC27

Plus 5 local procedures.

Triggers

OnRun

Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.

Called by

  • Page 1263 “Certificate” (6 calls: HandleExpiredCert → GetUploadedCertFileName, OnOpenPage → UploadAndVerifyCert, SaveCertToIsolatedStorage → DeleteCertAndPasswordFromIsolatedStorage, …)
  • Table 1262 “Isolated Certificate” (2 calls: ExistsInIsolatedStorage → GetCertDataScope, OnDelete → DeleteCertAndPasswordFromIsolatedStorage)

Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Certificate Management"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources