Objective-C
Objective-C
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.
Note: This example requires Chilkat v10.1.0 or later.
Chilkat Objective-C Downloads
#import <CkoSecrets.h>
#import <CkoJsonObject.h>
#import <NSString.h>
#import <CkoHttp.h>
#import <CkoBinData.h>
BOOL success = NO;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoSecrets *secrets = [[CkoSecrets alloc] init];
// 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.
CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"appName" value: @"Test2"];
[json UpdateString: @"service" value: @"Custom"];
[json UpdateString: @"domain" value: @"Ocean"];
[json UpdateString: @"username" value: @"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:
NSString *url = @"https://chilkatdownload.com/sample_data/starfish20.jpg";
CkoHttp *http = [[CkoHttp alloc] init];
CkoBinData *bd = [[CkoBinData alloc] init];
success = [http DownloadBd: url binData: bd];
if (success == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
// Create or update the binary secret.
success = [secrets UpdateSecretBd: json secret: bd];
if (success == NO) {
NSLog(@"%@",secrets.LastErrorText);
return;
}
NSLog(@"%@",@"Success.");