(Tcl) Windows Credentials Manager / Apple Keychain - Get a String Secret to a StringBuilder
On Windows, fetches the content of a text secret from the Windows Credentials Manager.
On MacOS or iOS, fetches from the Apple Keychain.
Note: This example requires Chilkat v10.1.0 or later. For more information, see https://cknotes.com/chilkat-secrets-class-added-in-version-10-1-0/
load ./chilkat.dll
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set secrets [new_CkSecrets]
# On Windows, this is the Windows Credentials Manager
# On MacOS/iOS, it is the Apple Keychain
CkSecrets_put_Location $secrets "local_manager"
# Specify the secret to be fetched.
set json [new_CkJsonObject]
CkJsonObject_UpdateString $json "appName" "MyApp"
CkJsonObject_UpdateString $json "service" "OAuth2"
CkJsonObject_UpdateString $json "domain" "onedrive"
CkJsonObject_UpdateString $json "username" "matt"
# Append the content of the secret to a Chilkat StringBuilder object.
set sb [new_CkStringBuilder]
set success [CkSecrets_GetSecretSb $secrets $json $sb]
if {$success == 0} then {
puts [CkSecrets_lastErrorText $secrets]
delete_CkSecrets $secrets
delete_CkJsonObject $json
delete_CkStringBuilder $sb
exit
}
puts [CkStringBuilder_getAsString $sb]
puts "Success."
delete_CkSecrets $secrets
delete_CkJsonObject $json
delete_CkStringBuilder $sb
|