Eksempel på PowerShell-skript ved bruk av Cloudlink REST API

Zusammenfassung: Denne filen er kun for utdanning / informasjonsformål. Kan brukes som referanse når du skriver Cloudlink-automatiseringsskript med PowerShell-skriptspråk. Dell tar ikke ansvar for at denne filen utføres som et PowerShell-skript i miljøet til Dell-kundene. Skriptet viser en måte å liste opp maskiner som er registrert med Cloudlink og deres stasjoner fra et PowerShell-skript ved hjelp av Cloudlink RestAPI-kall. Skriptet endrer ikke tilstanden til noe system, bare viser informasjon. Tilgang til Cloudlink-noden (indikert av IP-adresse) gis med legitimasjonen til en Cloudlink-bruker av typen 'klient'. ...

Dieser Artikel gilt für Dieser Artikel gilt nicht für Dieser Artikel ist nicht an ein bestimmtes Produkt gebunden. In diesem Artikel werden nicht alle Produktversionen aufgeführt.

Symptome

Skriptet kan brukes til å automatisere Cloudlink-operasjoner. I dette eksemplet viser skriptet maskiner som er registrert med Cloudlink Center.

 

Ursache

Skriptet kan være nyttig for kunder som har flere Cloudlink-sentre, eller som ønsker å administrere Cloudlink Center ved hjelp av et PowerShell-skript.

 

Lösung

# Copyright Dell © 2021, 2022
# Denne filen er kun for utdannings-/informasjonsformål.
# Kan brukes som referanse når du skriver Cloudlink-automatiseringsskript med PowerShell-skriptspråk.
# Dell tar ikke ansvar for at denne filen utføres som et PowerShell-skript i miljøet til Dell-kundene.

# Skriptet viser en måte å liste opp maskiner som er registrert med Cloudlink og deres stasjoner fra et PowerShell-skript ved hjelp av Cloudlink RestAPI-kall.
# Skriptet endrer ikke tilstanden til noe system, bare viser informasjon.
# Tilgang til Cloudlink-noden (indikert av IP-adresse) gis med legitimasjonen til en Cloudlink-bruker av typen 'klient'.

# Følgende del er mocking sertifikatet validering, sertifikatet er alltid gyldig.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback').Type)
{
$certCallback = @"
    using System;
    using System.Net;
    using System.Net.Security;
    using System.Security.Cryptography.X509Certificates;
    public class ServerCertificateValidationCallback
    {
        public static void Ignore()
        {
            if(ServicePointManager.ServerCertificateValidationCallback ==null)
            {
                ServicePointManager.ServerCertificateValidationCallback +=
                    delegate
                    (
                        Object obj,
                        X509Certificate certificate,
                        X509Chain chain,
                        SslPolicyErrors errors
                    )
                    {
                        return true;
                    };
            }
        }
    }
"@
    Add-Type $certCallback
 }
[ServerCertificateValidationCallback]::Ignore()


$server='<cloudlink node ip>'
$client_id='<client id>'
$client_secret='<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"}

# Spørring etter maskinlisten

  $machine_list_query='https://$serverport/cloudlink/rest/securevm'
  $machine_list=Invoke-WebRequest -Method Get -Uri $machine_list_query -Headers $resolveSessionHeader -ContentType $Type

# List opp maskinene på konsollen.

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

#For hver maskin oppgir du diskene.

  foreach ($machine in $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
  }
}

 

Betroffene Produkte

CloudLink SecureVM, CloudLink
Artikeleigenschaften
Artikelnummer: 000202396
Artikeltyp: Solution
Zuletzt geändert: 09 Juni 2026
Version:  7
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.