Cloudlink REST API kullanan PowerShell komut dosyası örneği

Resumen: Bu dosya sadece eğitim/bilgilendirme amaçlıdır. PowerShell betik dili ile Cloudlink otomasyon komut dosyaları yazarken referans olarak kullanılabilir. Dell, bu dosyanın Dell Müşterisinin ortamında bir PowerShell komut dosyası olarak işlenmesiyle ilgili hiçbir sorumluluk kabul etmez. Komut dosyası, Cloudlink RestAPI çağrılarını kullanarak Cloudlink'e kayıtlı makineleri ve sürücülerini bir PowerShell komut dosyasından listelemenin bir yolunu gösterir. Komut dosyası herhangi bir sistemin durumunu değiştirmez, sadece bilgileri görüntüler. Cloudlink düğümüne erişim (IP adresiyle gösterilir), "client" tipindeki bir Cloudlink kullanıcısının kimlik bilgileriyle verilir. ...

Este artículo se aplica a Este artículo no se aplica a Este artículo no está vinculado a ningún producto específico. No se identifican todas las versiones del producto en este artículo.

Síntomas

Komut dosyası, Cloudlink işlemlerini otomatikleştirmek için kullanılabilir. Bu örnekte komut dosyası, Cloudlink Center'a kayıtlı makineleri listeler.

 

Causa

Komut dosyası, birden fazla Cloudlink Merkezi olan veya Cloudlink Center'larını PowerShell komut dosyası kullanarak yönetmek isteyen müşteriler için yararlı olabilir.

 

Resolución

# Copyright Dell © 2021, 2022
# Bu dosya yalnızca eğitim/bilgilendirme amaçlıdır.
# PowerShell betik dili ile Cloudlink otomasyon komut dosyaları yazarken referans olarak kullanılabilir.
# Dell, bu dosyanın Dell Müşterisinin ortamında bir PowerShell komut dosyası olarak işlenmesiyle ilgili hiçbir sorumluluk kabul etmez.

# Komut dosyası, Cloudlink RestAPI çağrılarını kullanarak Cloudlink'e kayıtlı makineleri ve sürücülerini bir PowerShell komut dosyasından listelemenin bir yolunu gösterir.
# Komut dosyası herhangi bir sistemin durumunu değiştirmez, sadece bilgileri görüntüler.
# Cloudlink düğümüne erişim (IP adresiyle gösterilir), "client" tipindeki bir Cloudlink kullanıcısının kimlik bilgileriyle verilir.

# Aşağıdaki kısım sertifika doğrulamasıyla alay ediyor, sertifika her zaman geçerli.

[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"}

# Makineler listesi için sorgu

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

# Konsoldaki makineleri listeleyin.

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

Her makine #For sürücüleri listeleyin.

  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
  }
}

 

Productos afectados

CloudLink SecureVM, CloudLink
Propiedades del artículo
Número del artículo: 000202396
Tipo de artículo: Solution
Última modificación: 09 jun 2026
Versión:  7
Encuentre respuestas a sus preguntas de otros usuarios de Dell
Servicios de soporte
Compruebe si el dispositivo está cubierto por los servicios de soporte.