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
(Perl) 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/
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $secrets = chilkat::CkSecrets->new(); # On Windows, this is the Windows Credentials Manager # On MacOS/iOS, it is the Apple Keychain $secrets->put_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. $jsonMatch = chilkat::CkJsonObject->new(); $jsonMatch->UpdateString("appName","Test*"); $jsonMatch->UpdateString("service","*"); $jsonMatch->UpdateString("domain","*"); $jsonMatch->UpdateString("username","Starfish*"); $results = chilkat::CkJsonObject->new(); $results->put_EmitCompact(0); $success = $secrets->ListSecrets($jsonMatch,$results); if ($success == 0) { print $secrets->lastErrorText() . "\r\n"; exit; } print $results->emit() . "\r\n"; # 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; $count_i = $results->SizeOfArray("secrets"); while ($i < $count_i) { $results->put_I($i); $appName = $results->stringOf("secrets[i].appName"); $service = $results->stringOf("secrets[i].service"); $domain = $results->stringOf("secrets[i].domain"); $username = $results->stringOf("secrets[i].username"); # Information field for Windows Credentials Manager. $targetName = $results->stringOf("secrets[i].targetName"); # Informational fields if on MacOS using the Apple Keychain. $keyChainService = $results->stringOf("secrets[i].keyChainService"); $keyChainAccount = $results->stringOf("secrets[i].keyChainAccount"); $i = $i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.