Site icon EfmSoft

What does HRESULT 0x80090023 (NTE_TOKEN_KEYSET_STORAGE_FULL) mean?

 
Previous Next
NTE_SILENT_CONTEXT NTE_TEMPORARY_PROFILE

NTE_TOKEN_KEYSET_STORAGE_FULL

NTE_TOKEN_KEYSET_STORAGE_FULL should be read at the hardware-token capacity boundary. A smart card, HSM, TPM-backed provider, or other security token cannot allocate another persistent key container in its protected storage. Inventory persistent keys and free protected storage on the selected token before deleting objects or provisioning another key container.

Read the failure at the correct layer

The provider is backed by a finite or separately managed device such as a smart card, TPM, HSM, virtual token, reader, or remote key service. Provider installation, device discovery, readiness, object capacity, authentication state, and key policy are separate layers and should be logged separately.

Build an incident record

RecordWhy it matters for this code
provider-visible device identifier, reader or endpoint, firmware and driver version, and connection stateShows whether the status follows hardware, middleware, or stored objects.
token object inventory, capacity or quota, and whether the target key is persistentPreserves device capacity and readiness evidence before cleanup.
the same operation with another known-good device through the same middlewareSeparates provider installation from physical availability.

Code-specific checks:

  • Enumerate existing containers and identify abandoned enrollment, renewal, or test keys.
  • Check the token vendor capacity limits, object quotas, and whether certificates were removed without deleting their private-key objects.
  • Back up or recover required material before deleting containers; then retry a single controlled key creation.

What to include in an escalation package

  • A known-good control result produced under the same identity, architecture, and provider selection.

Use two comparison axes

Keep the application, account, and provider configuration fixed while changing one device variable: reconnect the same token, use another reader or endpoint, then use a known-good token. This reveals whether the status follows hardware, transport, middleware, or stored objects.

  1. Use one known-good control that changes only the suspected part of the hardware-token capacity path.
  2. Record where behavior first diverges in the hardware-token capacity path instead of judging only by the final application message.

Do not collapse it into a neighboring code

This is persistent-object capacity, not ordinary process memory. NTE_OUT_OF_MEMORY or OSS_OUT_MEMORY describe allocation failures in host memory. Deleting token objects before exporting labels, IDs, certificates, and policy information can destroy the only evidence of capacity leaks or failed enrollment cleanup.

For hardware-token capacity, also retain the original numeric value; neighboring constants can encode materially different remediation paths even when an application presents all of them as an authentication, certificate, or security failure.

Verification after the change

The original provider must discover a ready device and complete the intended operation with stable object inventory; temporary success after selecting unrelated hardware is only isolation evidence.

Technical references

These sources define the HRESULT and the relevant hardware-token capacity interface, protocol, or data format.


Looking for a different code? Search another status or error code.

Exit mobile version