Příklad skriptu PowerShell pomocí rozhraní Cloudlink REST API

摘要: Tento soubor slouží pouze pro účely vzdělávání a informací. Lze použít jako referenci při psaní automatizačních skriptů Cloudlink pomocí skriptového jazyka PowerShell. Společnost Dell nenese žádnou odpovědnost za spuštění tohoto souboru jako skriptu PowerShell v prostředí zákazníka společnosti Dell. Skript ukazuje způsob, jak vypsat seznam počítačů registrovaných pomocí platformy Cloudlink a jejich jednotek ze skriptu PowerShell pomocí volání Cloudlink RestAPI. Skript nemění stav žádného systému, pouze zobrazuje informace. Přístup k uzlu Cloudlink (označený IP adresou) se uděluje s přihlašovacími údaji uživatele cloudového odkazu typu "client". ...

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Skript lze použít k automatizaci operací Cloudlink. V tomto příkladu skript uvádí počítače zaregistrované v softwaru Cloudlink Center.

原因

Skript může být užitečný pro zákazníky, kteří mají několik center Cloudlink nebo chtějí spravovat své centrum Cloudlink Center pomocí skriptu PowerShell.

解决方案

# Copyright Dell © 2021, 2022
# Tento soubor slouží pouze pro účely vzdělávání a informací.
# Lze použít jako referenci při psaní automatizačních skriptů Cloudlink pomocí skriptového jazyka PowerShell.
# Společnost Dell nenese žádnou odpovědnost za spuštění tohoto souboru jako skriptu PowerShell v prostředí

zákazníka společnosti Dell. Skript ukazuje způsob, jak vypsat seznam počítačů registrovaných pomocí technologie Cloudlink a jejich jednotek ze skriptu
PowerShell # pomocí volání Cloudlink RestAPI.
# Skript nemění stav žádného systému, pouze zobrazuje informace.
# Přístup k uzlu Cloudlink (označený IP adresou) se uděluje s přihlašovacími údaji uživatele cloudového odkazu typu "client".

# Následující část se mocking ověření certifikátu, certifikát je vždy platný
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateImageCallback'). Zadejte)
{
$certCallback = @"
pomocí systému;
    pomocí System.Net;
    pomocí nástroje System.Net.Security;
    použití protokolu System.Security.Cryptography.X509Certificates;
    public class ServerCertificateCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateCallback ==null)
{
ServicePointManager.ServerCertificateCallback +=
delegovat
(
object obj,
X509Certificate certificate,
                        X509Chain chain,
SslPolicyErrors errors
)
{
return true;
                    };
            } }
}
"@
Add-Type $certCallback
}
[ServerCertificateCallback]::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-RestAuth -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

# List the machines on the console
  Write-Host "Machine list:"   -ForegroundColor Yellow
$machine_list_txt = $machine_list | ConvertFrom-Json
$machine_list_txt | FT

#For každém počítači vypište jednotky
foreach ($machine v $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
}
}

受影响的产品

CloudLink SecureVM, CloudLink
文章属性
文章编号: 000202396
文章类型: Solution
上次修改时间: 13 3月 2023
版本:  5
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。