Przykład skryptu PowerShell przy użyciu interfejsu API REST Cloudlink

Shrnutí: Plik jest przeznaczony wyłącznie do celów edukacyjnych/informacyjnych. Może być używany jako punkt odniesienia podczas pisania skryptów automatyzacji CloudLink przy użyciu języka skryptu PowerShell. Firma Dell nie ponosi żadnej odpowiedzialności za ten plik wykonywany jako skrypt PowerShell w środowisku klienta firmy Dell Skrypt przedstawia sposób wyświetlenia listy komputerów zarejestrowanych w cloudlink i ich dyskach ze skryptu PowerShell przy użyciu wywołań Cloudlink RestAPI. Skrypt nie zmienia stanu żadnego systemu, wyświetla tylko informacje. Dostęp do węzła Cloudlink (wskazanego przez adres IP) jest przyznawany przy użyciu poświadczeń użytkownika CloudLink typu "client". ...

Tento článek se vztahuje na Tento článek se nevztahuje na Tento článek není vázán na žádný konkrétní produkt. V tomto článku nejsou uvedeny všechny verze produktu.

Příznaky

Skrypt może być używany do automatyzacji operacji CloudLink. W tym przykładzie skrypt wyświetla listę komputerów zarejestrowanych w Cloudlink Center.

Příčina

Skrypt może być przydatny dla klientów, którzy mają kilka centrów Cloudlink lub chcą zarządzać swoim centrum Cloudlink Center przy użyciu skryptu PowerShell.

Řešení

# Copyright Dell © 2021, 2022
# Ten plik jest przeznaczony wyłącznie do celów edukacyjnych/informacyjnych.
# Może być używany jako punkt odniesienia podczas pisania skryptów automatyzacji CloudLink przy użyciu języka skryptu PowerShell.
# Firma Dell nie ponosi żadnej odpowiedzialności za ten plik wykonywany jako skrypt PowerShell w środowisku

klienta Firmy Dell# Skrypt ten umożliwia wyświetlanie listy komputerów zarejestrowanych w Cloudlink i ich dysków ze skryptu
PowerShell # przy użyciu wywołań RestAPI Cloudlink.
# Skrypt nie zmienia stanu żadnego systemu, wyświetla tylko informacje.
# Dostęp do węzła Cloudlink (wskazanego przez adres IP) jest przyznawany przy użyciu poświadczeń użytkownika CloudLink typu "client".

# Poniższa część makietę sprawdzania poprawności certyfikatu, certyfikat jest zawsze prawidłowy
[Net.ServicePointManager]:SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback'). Wpisz)
{
$certCallback = @"
przy użyciu systemu;
    korzystanie z System.Net;
    korzystanie z oprogramowania System.Net.Security;
    korzystanie z System.Security.Cryptography.X509Certificates;
    public class ServerCertificateValidationCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateValidationCallback ==null)
{
ServicePointManager.ServerCertificateValidationCallback +=
delegate
(
obiekt obj,
certyfikat certyfikatu X509,
                        Łańcuch X509Chain,
błędy
SslPolicyErrors)
{
return true;
                    };
            }
}
"@
Add-Type $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"



if($
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 komputerów w konsoli

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

#For każdego komputera, wyświetl listę napędów
foreach ($machine w $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
} }

Dotčené produkty

CloudLink SecureVM, CloudLink
Vlastnosti článku
Číslo článku: 000202396
Typ článku: Solution
Poslední úprava: 15 May 2026
Verze:  6
Najděte odpovědi na své otázky od ostatních uživatelů společnosti Dell
Služby podpory
Zkontrolujte, zda se na vaše zařízení vztahují služby podpory.