Sample code for 30+ languages & platforms
Lianja

Windows Credentials Manager / Apple Keychain - Create or Update a JSON Secret

See more Secrets Examples

On Windows, creates or updates a JSON secret, such as an OAuth2 access token response, in the Windows Credentials Manager.

On MacOS or iOS, creates or updates a JSON secret in the Apple Keychain.

Note: This example requires Chilkat v10.1.0 or later.

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loSecrets = createobject("CkSecrets")

// On Windows, this is the Windows Credentials Manager
// On MacOS/iOS, it is the Apple Keychain
loSecrets.Location = "local_manager"

// Specify the name of the secret.
// service and username are required.
// appName and domain are optional.
// Note: The values are arbitrary and can be anything you want.
loJson = createobject("CkJsonObject")
loJson.UpdateString("appName","MyApp")
loJson.UpdateString("service","OAuth2")
loJson.UpdateString("domain","onedrive")
loJson.UpdateString("username","matt")

// Get the secret to be stored.
loJsonSecret = createobject("CkJsonObject")
llSuccess = loJsonSecret.LoadFile("qa_data/tokens/oneDrive.json")
if (llSuccess = .F.) then
    ? loJsonSecret.LastErrorText
    release loSecrets
    release loJson
    release loJsonSecret
    return
endif

// Create or update the secret.
llSuccess = loSecrets.UpdateSecretJson(loJson,loJsonSecret)
if (llSuccess = .F.) then
    ? loSecrets.LastErrorText
    release loSecrets
    release loJson
    release loJsonSecret
    return
endif

? "Success."


release loSecrets
release loJson
release loJsonSecret