Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Get Certificate User Principal Name (UPN)See more Certificates ExamplesDemonstrates how to get a certificate's UPN from the SAN (Subject Alternative Name). Most certificates do not have a UPN. This example only applies to those certificates that have a User Principal Name. Note: This example requires Chilkat v9.5.0.90 or greater due to fixes made in getting the UPN from the SAN.
Use ChilkatAx-win32.pkg Procedure Test Handle hoCert Boolean iSuccess Handle hoXml String sUpn String sTemp1 Boolean bTemp1 Get Create (RefClass(cComChilkatCert)) To hoCert If (Not(IsComObjectCreated(hoCert))) Begin Send CreateComObject of hoCert End Get ComLoadFromFile Of hoCert "qa_data/certs/sample.cer" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoCert To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatXml)) To hoXml If (Not(IsComObjectCreated(hoXml))) Begin Send CreateComObject of hoXml End Get ComSubjectAlternativeName Of hoCert To sTemp1 Get ComLoadXml Of hoXml sTemp1 To iSuccess Get ComGetXml Of hoXml To sTemp1 Showln sTemp1 // A certificate with a User Principal Name in the SAN might have this: // <SubjectAltName> // <rfc822Name>joe@example.com</rfc822Name> // <name type="oid" oid="1.3.6.1.4.1.311.20.2.3">joe@example.com</name> // </SubjectAltName> // The OID 1.3.6.1.4.1.311.20.2.3 is for the User Principal Name. Get ComChilkatPath Of hoXml "/A/name,oid,1.3.6.1.4.1.311.20.2.3|*" To sUpn Get ComLastMethodSuccess Of hoXml To bTemp1 If (bTemp1 = False) Begin Showln "No user principle name." End Else Begin Showln "User Principle Name = " sUpn End End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.