Exempel på PowerShell-skript med Cloudlink REST API

Summary: Filen är endast avsedd för utbildning/information. Kan användas som referens när du skriver Cloudlink-automatiseringsskript med PowerShell-skriptspråk. Dell tar inget ansvar för att filen utförs som ett PowerShell-skript i Dell-kundens miljö Skriptet visar ett sätt att lista datorer som är registrerade med Cloudlink och deras enheter från ett PowerShell-skript med Cloudlink RestAPI-anrop. Skriptet ändrar inte status för något system, utan visar bara information. Åtkomst till Cloudlink-noden (indikeras av IP-adress) beviljas med inloggningsuppgifter för en Cloudlink-användare av typen "client". ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Skriptet kan användas för att automatisera Cloudlink-åtgärder. I det här exemplet listar skriptet datorer som är registrerade med Cloudlink Center.

Cause

Skriptet kan vara användbart för kunder som har flera Cloudlink Center eller som vill hantera sitt Cloudlink Center med ett PowerShell-skript.

Resolution

# Copyright Dell © 2021, 2022
# Den här filen är endast avsedd för utbildning/information.
# Kan användas som referens när du skriver Cloudlink-automatiseringsskript med PowerShell-skriptspråk.
# Dell tar inget ansvar för att filen utförs som ett PowerShell-skript i Dell-kundens miljö

# Skriptet visar ett sätt att lista datorer som är registrerade med Cloudlink och deras enheter från ett PowerShell-skript
# med Cloudlink RestAPI-anrop.
# Skriptet ändrar inte status för något system, utan visar bara information.
# Åtkomst till Cloudlink-noden (indikeras av IP-adress) beviljas med inloggningsuppgifter för en Cloudlink-användare av typen "client".

# Följande del visar certifikatvalideringen, certifikatet är alltid giltigt
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]:Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback'). Typ)
{
$certCallback = @"
med hjälp av systemet;
    med System.Net;
    med System.Net.Security;
    använda System.Security.Crypto crypto 509certificates;
    public class ServerCertificateValidationCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateValidationCallback ==null)
{
ServicePointManager.ServerCertificateValidationCallback +=
delegate
(
Object obj,
X509Certificate-certifikat,
                        X509Chain chain,
SslPolicyErrors errors
)
{
return true;
                    };
            }
}

"@
Tilläggstyp $certCallback
}
[ServerCertificateValidationCallback]::Ignore()


$server=''
$client_id=''
$client_secret=''

if ($args [0] -ne $null)
{ $server=$args[0] }

if ($args[1] -ne $null)
{ $client_id=$args[1] }

if ($args[2] -ne $null)
{ $client_secret=$args[2] }



$serverport=$server+":443"
Write-Output "parameters: server=$server, client_id=$client_id, client_secret=$client_secret"

$responsee=Invoke-RestMethod -Uri "https://$server/cloudlink/oauth/token?grant_type=client_credentials&client_id =$client_id&client_secret=$client_secret&scope=all" -Method Get -TimeoutSec 1800
Write-Output "The response received:"
Write-Output "$responsee"



om ($
responsee.access_token)
{ $mytoken=$responsee.access_token

$Type = "application/json"
$resolveSessionHeader = @{'Authorization' = "Bearer $mytoken"}

# Query for the machines list
$machine_list_query='https://$serverport/cloudlink/rest/securevm"
$machine_list=Invoke-WebRequest -Method Get -Uri $machine_list_query -Headers $resolveSessionHeader -ContentType $Type

# Lista maskinerna på konsolen

  Write-Host "Machine list:"   – ForegroundColor gult
$machine_list_txt = $machine_list | ConvertFrom-Json
$machine_list_txt | FT

#For varje dator, listar enheternas
begäran ($machine i $machine_list_txt)
{
$drives_list = $($machine.resources)
Write-Host "$($machine.name) $($machine.ip_address) ($($machine.os_name)) group $($machine.group)" -ForegroundColor Yellow
$drives_list | FT
} }

Affected Products

CloudLink SecureVM, CloudLink
Article Properties
Article Number: 000202396
Article Type: Solution
Last Modified: 13 Mar 2023
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.