Classic ASP
Classic ASP
Windows Credentials Manager / Apple Keychain - List Matching Secrets
See more Secrets Examples
List secrets matching one or more wildcarded names for app, service, domain, and username.Note: This example requires Chilkat v10.1.0 or later.
Chilkat Classic ASP Downloads
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
set secrets = Server.CreateObject("Chilkat.Secrets")
' On Windows, this is the Windows Credentials Manager
' On MacOS/iOS, it is the Apple Keychain
secrets.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.
set jsonMatch = Server.CreateObject("Chilkat.JsonObject")
success = jsonMatch.UpdateString("appName","Test*")
success = jsonMatch.UpdateString("service","*")
success = jsonMatch.UpdateString("domain","*")
success = jsonMatch.UpdateString("username","Starfish*")
set results = Server.CreateObject("Chilkat.JsonObject")
results.EmitCompact = 0
success = secrets.ListSecrets(jsonMatch,results)
If (success = 0) Then
Response.Write "<pre>" & Server.HTMLEncode( secrets.LastErrorText) & "</pre>"
Response.End
End If
Response.Write "<pre>" & Server.HTMLEncode( results.Emit()) & "</pre>"
' 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")
Do While i < count_i
results.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
Loop
%>
</body>
</html>