Sample code for 30+ languages & platforms
Perl Requires Chilkat v10.1.0+

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

See more Secrets Examples

On Windows, creates or updates a binary secret in the Windows Credentials Manager.

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

Chilkat Perl Downloads

Chilkat2 Perl
use strict;
use warnings;
use Chilkat2;

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

my $secrets = Chilkat2::Secrets->new;

# On Windows, this is the Windows Credentials Manager
# On MacOS/iOS, it is the Apple Keychain
$secrets->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.
my $json = Chilkat2::JsonObject->new;
$json->UpdateString('appName', 'Test2');
$json->UpdateString('service', 'Custom');
$json->UpdateString('domain', 'Ocean');
$json->UpdateString('username', 'Starfish20');

# The purpose of this example is to show how arbitrary binary data
# can be stored as a secret.

# We'll use a small JPG image that is approximately 2KB in size.
# You can test using this same JPG at this URL:
my $url = 'https://chilkatdownload.com/sample_data/starfish20.jpg';
my $http = Chilkat2::Http->new;
my $bd = Chilkat2::BinData->new;
my $success = $http->DownloadBd($url, $bd);
if (!$success) {
    print $http->LastErrorText, "\n";
    exit;
}

# Create or update the binary secret.
$success = $secrets->UpdateSecretBd($json, $bd);
if (!$success) {
    print $secrets->LastErrorText, "\n";
    exit;
}

print "Success.\n";