KDPika Licensing Sign inStart free
API v1
Show all languages
Browse documentation

Choose a page in the navigation drawer.

KDPika Licensing · API v1 Intermediate

Protect tokens and identity

Stage 11: protect tokens and identity with a clear outcome, verification steps and one next action.

On this page
Updated 2026-10-20 UTCDownload Markdown
Complete Integration Guide

Before you start: Handle errors and offline use, or bring the same completed Sandbox setup.

Stage 11 of 14 · 15 min
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14

Already completed this? Skip to the next stage →

What you will do

Keep one stable installation identity and protect its token/cache.

The example intentionally uses a private state directory. It demonstrates the SDK's file behavior, not complete production vault integration.

PlatformSimplest correct starting point
WindowsA per-user LocalAppData directory with user-only ACLs; assess DPAPI or Credential Manager through an appropriate adapter.
macOSA user-owned application-support directory; assess Keychain for the private token.
LinuxA user-owned application-data directory with restrictive permissions; assess Secret Service availability.
Shared backendA private path outside the web root, isolated per application tenant/installation.

Do not invent an adapter constructor option. The Python SDK can use its existing keyring support; the other current SDKs' file implementations require assessment before claiming a vault. No vault is installed by the sample.

  1. Preserve the SDK-created installation identity through restarts.
  2. Keep App ID/environment/state namespaces separate.
  3. Never sync activation tokens through a public repository or distribute your activated test directory.
  4. Serialize identity, activation and deactivation writes for the same installation.

Expected result

A restarted app validates the same installation without consuming another seat. Another OS user cannot read its private files.

If it does not work

Deleting identity state is not a license reset. A customer-controlled desktop cannot be made tamper-proof; enforce valuable online operations on your authenticated backend too.

Stage checklist

  • I checked file permissions on every supported OS.
  • My app does not ship a private activation token or developer API key.
  • Unsupported storage/runtime assumptions are resolved before Live.

Next steps

Continue to Stage 12: Deliver licenses to customers

You are here: Stage 11 of 14.

Was this page helpful?

Choose an answer

Do not include personal data, license keys or credentials. Retained for up to 30 days. This is not a support inbox.

Search documentation

Arrow keys to move, Enter to open, Escape to close. Search stays in your browser.

Cookie settings