While trying to review the available certificates used by the Notification Server under Certificate Management (Settings > All Settings > Notification Server), the page can't load.
This started happening after migrating to a new SMP Server while still using the same FQDN as the previous one.
The following errors are displayed on the NS logs:
Entry 1:
HTTP Request failed:
/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http%3a%2f%2SMPSERVER.example.net%2fAltiris%2fConsole%2ftree.aspx%3fViewGuid%3da57fb0e9-0676-4e00-929a-6bb37dc1f888%26itemType%3dReport%26%26ConsoleGuid%3d1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
Key not valid for use in specified state.
[System.Security.Cryptography.CryptographicException @ mscorlib]
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._ExportCertificatesToBlob(SafeCertStoreHandle safeCertStoreHandle, X509ContentType contentType, IntPtr password)
at System.Security.Cryptography.X509Certificates.X509Certificate.ExportHelper(X509ContentType contentType, Object password)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate(X509Certificate2 masterCertificate, IntPtr& pAuthorityKeyID, UInt32& issuerKeyType)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.GenerateCertificate()
at Altiris.NS.Security.Cryptography.CertificateManager.IssueCertificate(X500DistinguishedName subject, String scope, CertificateUsageFlags certificateUsage, AsymmetricAlgorithm publicKey, String caName, DateTime expiryTime, X509Certificate2 signingCert, String sAlternateNames)
...
HTTP [POST]: http://SMPSERVER.example.net/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http://SMPSERVER.example.net/Altiris/Console/tree.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&itemType=Report&&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
ip: [::1]; languages: [en-US,en;q=0.9]; content-length: [391];
timings: [[D] 00:00:00.0273015(R: 00:00:00.0262973, W: 00:00:00.0010042)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:34:29 AM, Tick Count: 2518609 (00:41:58.6090000), Size: 7.66 KB
Process: w3wp (6140), Thread ID: 314, Module: w3wp.exe
Priority: 1, Source: WebApplication
Entry 2:
Failed to process web request.
Exception of type 'System.Web.HttpUnhandledException' was thrown.
[System.Web.HttpUnhandledException @ System.Web]
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at Altiris.NS.UI.Controls.PageCachePage.ProcessRequest(HttpContext context)
at Altiris.NS.UI.AltirisPage.ProcessRequest(HttpContext context)
Key not valid for use in specified state.
[System.Security.Cryptography.CryptographicException @ mscorlib]
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._ExportCertificatesToBlob(SafeCertStoreHandle safeCertStoreHandle, X509ContentType contentType, IntPtr password)
at System.Security.Cryptography.X509Certificates.X509Certificate.ExportHelper(X509ContentType contentType, Object password)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate(X509Certificate2 masterCertificate, IntPtr& pAuthorityKeyID, UInt32& issuerKeyType)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.GenerateCertificate()
at Altiris.NS.Security.Cryptography.CertificateManager.IssueCertificate(X500DistinguishedName subject, String scope, CertificateUsageFlags certificateUsage, AsymmetricAlgorithm publicKey, String caName, DateTime expiryTime, X509Certificate2 signingCert, String sAlternateNames)
at Altiris.NS.StandardItems.CertificateConfiguration.NSCertificateConfigurationItem.GenerateSmaPortalCertificate()
...
HTTP [POST]: http://SMPSERVER.example.net/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http://SMPSERVER.example.net/Altiris/Console/tree.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&itemType=Report&&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
ip: [::1]; languages: [en-US,en;q=0.9]; content-length: [391];
timings: [[D] 00:00:00.0273015(R: 00:00:00.0262973, W: 00:00:00.0010042)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:34:29 AM, Tick Count: 2518609 (00:41:58.6090000), Size: 7.91 KB
Process: w3wp (6140), Thread ID: 314, Module: Altiris.NS.UI.dll
Priority: 1, Source: Altiris.NS.UI.AltirisPage.ProcessRequest
Entry 3:
Failed to execute certificate command for point: 'SmaProxyCert' (0x0, Empty)
Key not valid for use in specified state.
[System.Security.Cryptography.CryptographicException @ mscorlib]
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._ExportCertificatesToBlob(SafeCertStoreHandle safeCertStoreHandle, X509ContentType contentType, IntPtr password)
at System.Security.Cryptography.X509Certificates.X509Certificate.ExportHelper(X509ContentType contentType, Object password)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate(X509Certificate2 masterCertificate, IntPtr& pAuthorityKeyID, UInt32& issuerKeyType)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.GenerateCertificate()
at Altiris.NS.Security.Cryptography.CertificateManager.IssueCertificate(X500DistinguishedName subject, String scope, CertificateUsageFlags certificateUsage, AsymmetricAlgorithm publicKey, String caName, DateTime expiryTime, X509Certificate2 signingCert, String sAlternateNames)
at Altiris.NS.StandardItems.CertificateConfiguration.NSCertificateConfigurationItem.GenerateSmaPortalCertificate()
at Altiris.NS.StandardItems.CertificateConfiguration.NsCertConfig.SmaProxyExecute(NsCertConfigPoint me, EConfigCommand cmd, Object arg, Int32& changes)
at Altiris.NS.StandardItems.CertificateConfiguration.NsCertConfig.NsCertConfigPoint.Execute(EConfigCommand cmd, Object arg, Int32& changes)
at Altiris.NS.StandardItems.CertificateConfiguration.NsCertConfig.Execute(EConfigCommand cmd, Object arg, EConfigType types)
...
HTTP [POST]: http://SMPSERVER.example.net/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http://SMPSERVER.example.net/Altiris/Console/tree.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&itemType=Report&&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
ip: [::1]; languages: [en-US,en;q=0.9]; content-length: [391];
timings: [[R] 00:00:00.0262973(W: 00:00:00.0010042)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:34:29 AM, Tick Count: 2518609 (00:41:58.6090000), Size: 8.95 KB
Process: w3wp (6140), Thread ID: 314, Module: Altiris.NS.StandardItems.dll
Priority: 1, Source: Altiris.NS.StandardItems.CertificateConfiguration.NsCertConfig.Execute
Entry 4:
Failed to generate certificate
Key not valid for use in specified state.
[System.Security.Cryptography.CryptographicException @ mscorlib]
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._ExportCertificatesToBlob(SafeCertStoreHandle safeCertStoreHandle, X509ContentType contentType, IntPtr password)
at System.Security.Cryptography.X509Certificates.X509Certificate.ExportHelper(X509ContentType contentType, Object password)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate(X509Certificate2 masterCertificate, IntPtr& pAuthorityKeyID, UInt32& issuerKeyType)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.GenerateCertificate()
...
HTTP [POST]: http://SMPSERVER.example.net/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http://SMPSERVER.example.net/Altiris/Console/tree.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&itemType=Report&&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
ip: [::1]; languages: [en-US,en;q=0.9]; content-length: [391];
timings: [[R] 00:00:00.0262973(W: 00:00:00.0010042)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:34:29 AM, Tick Count: 2518609 (00:41:58.6090000), Size: 9.09 KB
Process: w3wp (6140), Thread ID: 314, Module: Altiris.NS.dll
Priority: 1, Source: Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.GenerateCertificate
File: C:\ProgramData\Symantec\SMP\Logs\a.log
Entry 5:
Failed to process master certificate loading.
Key not valid for use in specified state.
[System.Security.Cryptography.CryptographicException @ mscorlib]
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._ExportCertificatesToBlob(SafeCertStoreHandle safeCertStoreHandle, X509ContentType contentType, IntPtr password)
at System.Security.Cryptography.X509Certificates.X509Certificate.ExportHelper(X509ContentType contentType, Object password)
at Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate(X509Certificate2 masterCertificate, IntPtr& pAuthorityKeyID, UInt32& issuerKeyType)
...
HTTP [POST]: http://SMPSERVER.example.net/Altiris/NS/Admin/Configuration/CertificateManagementPage.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&ParentGuid=00000000-0000-0000-0000-000000000000&TreeGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&ItemGuid=bff56118-7fb8-418b-b4b4-1a46f22c9d7c&itemType=Report&Url=http://SMPSERVER.example.net/Altiris/Console/tree.aspx?ViewGuid=a57fb0e9-0676-4e00-929a-6bb37dc1f888&itemType=Report&&ConsoleGuid=1b22db4e-a898-443f-9b99-855b1653d3f5&Cart_grdCertUsage_CAGrid_Callback=yes
ip: [::1]; languages: [en-US,en;q=0.9]; content-length: [391];
timings: [[R] 00:00:00.0262973(W: 00:00:00.0010042)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:34:29 AM, Tick Count: 2518609 (00:41:58.6090000), Size: 9.19 KB
Process: w3wp (6140), Thread ID: 314, Module: Altiris.NS.dll
Priority: 1, Source: Altiris.NS.Security.Cryptography.CryptoHelper.NSCertificateManager.LoadMasterCertificate
Entry 6:
Failed to get certificate details for resource: 168c1b29-4adf-4c0c-85c4-590f42e9dc58, port=443, thumb=XXXXXXXXXX0C6492BEC8029C9D1D7FB49CBA7BE0, cert=XXXXXXXX-bd5f-470b-8d4c-c8a80b4dffd6
The given key was not present in the dictionary.
[System.Collections.Generic.KeyNotFoundException @ mscorlib]
at System.ThrowHelper.ThrowKeyNotFoundException()
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at Altiris.NS.StandardItems.CertificateConfiguration.CertificateConfigurationManager.GetCertificateDescriptionString(Guid guidResource, Int32 port, String thumbprint)
at Altiris.NS.StandardItems.CertificateConfiguration.NSCertificateConfigurationItem.GetCertificateDetails(Guid guidResource, Int32 nPort, Guid guidCertificate, String thumbprint)
at Altiris.NS.StandardItems.CertificateConfiguration.NSCertificateConfigurationItem.GetDetails(Guid itemGuid, NameValueCollection nvc)
...
HTTP [GET]: http://SMPSERVER.example.net/Altiris/NS/GetItemDetails.aspx?ItemGuid=4c944c8d-bd5f-470b-8d4c-c8a80b4dffd6&ResourceGuid=168c1b29-4adf-4c0c-85c4-590f42e9dc58&Port=443&Thumbprint=XXXXXXXXXX0C6492BEC8029C9D1D7FB49CBA7BE0&DetailsProvider=XXXXXXXX-078a-47dc-9928-23cb833145d0
ip: [::1]; languages: [en-US,en;q=0.9];
timings: [[R] 00:00:00(W: 00:00:00)];
response: [200 OK]; x-smp-nsversion: [8.6.4286.0];
-----------------------------------------------------------------------------------------------------
Date: 10/23/2023 5:54:15 AM, Tick Count: 3704125 (01:01:44.1250000), Size: 3.20 KB
Process: w3wp (6140), Thread ID: 183, Module: Altiris.NS.StandardItems.dll
Priority: 1, Source: Altiris.NS.StandardItems.CertificateConfiguration.NSCertificateConfigurationItem.GetDetails
ITMS 8.x
The previous Server CA, Agent CA, and SMP Server certificate were not exported properly from the previous SMP Server.
During installation installation of the SMP a Server CA and Agent CA certificates are created. You can see it by loading the Microsoft Management Console with the certificate snap-in and looking in the trusted root certificate folder. The name will be "SMP-FQDN name of your Server Agent (Server) CA". Example: SMP-Symantec01.example.com Agent CA. The Microsoft Management console was used to export this file for backup. When the certificate was restored it was imported with the Microsoft Management Console and the certificate snap-in. The default import marks the key as not exportable. If you import the key and don't mark it as exportable you will receive the error when trying to load the information from these certificates on Certificate Management page.
Re-import the the Agent CA certificate with the Microsoft Management Console certificate snap-in, and ensure to flag the certificate as exportable: "Mark this key as exportable".