![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) Azure Key Vault Get CertificatesSee more Azure Key Vault ExamplesDemonstrates how to list the certificates in an Azure Key Vault.Note: This example requires Chilkat v9.5.0.96 or later. For more information, see https://learn.microsoft.com/en-us/rest/api/keyvault/certificates/get-certificates/get-certificates?tabs=HTTP
use chilkat(); # This requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # We demonstrated how to get an access token for your Azure Key Vault # in this example: Azure Key Vault Get OAuth2 Access Token using Client Credentials # However.. starting in Chilkat v9.5.0.96, instead of directly providing Chilkat with the OAuth2 access token, # you can instead provide the means for Chilkat to automatically get the OAuth2 access token, # and in addition, Chilkat will automatically re-fetch a new OAuth2 access token as needed, such as shortly # prior to or after expiration. # You do this by setting the AuthToken property to a JSON string that contains the required information. $json = chilkat::CkJsonObject->new(); $json->UpdateString("client_id","APP_ID"); # The APP_PASSWORD is the "password" returned by the Azure CLI command: az ad sp create-for-rbac --name http://example.com --role Contributor # See Azure Key Vault Get OAuth2 Access Token using Client Credentials $json->UpdateString("client_secret","APP_PASSWORD"); # The access token will be for Azure Key Vault operations. $json->UpdateString("resource","https://vault.azure.net"); # Specify the token endpoint which includes your tenant ID. $json->UpdateString("token_endpoint","https://login.microsoftonline.com/TENANT_ID/oauth2/token"); $http = chilkat::CkHttp->new(); # Instead of providing an actual access token, we give Chilkat the information that allows it to # automatically fetch the access token using the OAuth2 client credentials flow. $http->put_AuthToken($json->emit()); # Replace key_vault_name with the name of your Azure Key Vault. $sbResponse = chilkat::CkStringBuilder->new(); $success = $http->QuickGetSb("https://key_vault_name.vault.azure.net/certificates?api-version=7.4",$sbResponse); if ($success == 0) { $statusCode = $http->get_LastStatus(); if ($statusCode == 0) { # We did not get a response from the server.. print $http->lastErrorText() . "\r\n"; } else { # We received a response, but it was an error. print "Error response status code: " . $statusCode . "\r\n"; print "Error response:" . "\r\n"; print $sbResponse->getAsString() . "\r\n"; } exit; } $jsonResp = chilkat::CkJsonObject->new(); $jsonResp->LoadSb($sbResponse); $jsonResp->put_EmitCompact(0); print $jsonResp->emit() . "\r\n"; # The output looks like this: # { # "value": [ # { # "id": "https://kvchilkat.vault.azure.net/certificates/BadSSL", # "x5t": "U04xLnb8Ww7BKkW9dD7P1cCHNDY", # "attributes": { # "enabled": true, # "nbf": 1674409014, # "exp": 1737481014, # "created": 1697294224, # "updated": 1697294224 # }, # "subject": "" # }, # { # "id": "https://kvchilkat.vault.azure.net/certificates/Brasil", # "x5t": "ayF5eBtlA35xPMivusE0wpmFjnA", # "attributes": { # "enabled": true, # "nbf": 1667830002, # "exp": 1699366002, # "created": 1697294090, # "updated": 1697294090 # }, # "subject": "" # } # ], # "nextLink": null # } # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON $i = 0; $count_i = $jsonResp->SizeOfArray("value"); while ($i < $count_i) { $jsonResp->put_I($i); $id = $jsonResp->stringOf("value[i].id"); $x5t = $jsonResp->stringOf("value[i].x5t"); $Enabled = $jsonResp->BoolOf("value[i].attributes.enabled"); $Nbf = $jsonResp->IntOf("value[i].attributes.nbf"); $Exp = $jsonResp->IntOf("value[i].attributes.exp"); $Created = $jsonResp->IntOf("value[i].attributes.created"); $Updated = $jsonResp->IntOf("value[i].attributes.updated"); $subject = $jsonResp->stringOf("value[i].subject"); $i = $i + 1; } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.