Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) Windows Credentials Manager / Apple Keychain - List Matching SecretsSee more Secrets ExamplesList secrets matching one or more wildcarded names for app, service, domain, and username. 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/
LOCAL loSecrets LOCAL loJsonMatch LOCAL loResults LOCAL lnSuccess LOCAL lcAppName LOCAL lcService LOCAL lcDomain LOCAL lcUsername LOCAL lcTargetName LOCAL lcKeyChainService LOCAL lcKeyChainAccount LOCAL i LOCAL lnCount_i * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Secrets') loSecrets = CreateObject('Chilkat.Secrets') * On Windows, this is the Windows Credentials Manager * On MacOS/iOS, it is the Apple Keychain loSecrets.Location = "local_manager" * Set wildcarded or exact values for appName, service, domain, and username. * Omit any members where anything is allowed to match, or alternatively specify "*" to match anything. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJsonMatch = CreateObject('Chilkat.JsonObject') loJsonMatch.UpdateString("appName","Test*") loJsonMatch.UpdateString("service","*") loJsonMatch.UpdateString("domain","*") loJsonMatch.UpdateString("username","Starfish*") * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loResults = CreateObject('Chilkat.JsonObject') loResults.EmitCompact = 0 lnSuccess = loSecrets.ListSecrets(loJsonMatch,loResults) IF (lnSuccess = 0) THEN ? loSecrets.LastErrorText RELEASE loSecrets RELEASE loJsonMatch RELEASE loResults CANCEL ENDIF ? loResults.Emit() * Sample output on Windows. * The "targetName" is purely informational and indicates the raw TargetName of the secret (i.e. Credential) stored in the Credentials Manager. * { * "secrets": [ * { * "appName": "Test2", * "service": "Custom", * "domain": "Ocean", * "username": "Starfish20", * "targetName": "Test2/Custom/Ocean/Starfish20" * }, * { * "appName": "Test2", * "service": "Custom", * "domain": "Ocean", * "username": "Starfish", * "targetName": "Test2/Custom/Ocean/Starfish" * } * ] * } * --------------------------------------------------------------------------------------- * Here's sample code for parsing the JSON list of secrets. i = 0 lnCount_i = loResults.SizeOfArray("secrets") DO WHILE i < lnCount_i loResults.I = i lcAppName = loResults.StringOf("secrets[i].appName") lcService = loResults.StringOf("secrets[i].service") lcDomain = loResults.StringOf("secrets[i].domain") lcUsername = loResults.StringOf("secrets[i].username") * Information field for Windows Credentials Manager. lcTargetName = loResults.StringOf("secrets[i].targetName") * Informational fields if on MacOS using the Apple Keychain. lcKeyChainService = loResults.StringOf("secrets[i].keyChainService") lcKeyChainAccount = loResults.StringOf("secrets[i].keyChainAccount") i = i + 1 ENDDO RELEASE loSecrets RELEASE loJsonMatch RELEASE loResults |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.