Пример сценария PowerShell с использованием API-интерфейса REST Cloudlink
Zusammenfassung: Этот файл предназначен только для образовательных целей и информационных целей. Можно использовать в качестве справочного материала при записи сценариев автоматизации Cloudlink на языке сценариев PowerShell. Dell не несет ответственности за выполнение этого файла в среде заказчика Dell с помощью сценария PowerShell Сценарий отображает список компьютеров, зарегистрированных в Cloudlink, и их накопителей из сценария PowerShell с помощью вызовов Cloudlink RestAPI. Сценарий не изменяет состояние любой системы, просто отображает информацию. Доступ к узлу Cloudlink (указанному IP-адресом) предоставляется с учетными данными пользователя Cloudlink типа «client». ...
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
Сценарий можно использовать для автоматизации операций Cloudlink. В этом примере сценарий содержит список компьютеров, зарегистрированных в Cloudlink Center.
Ursache
Сценарий может быть полезен заказчикам, которые имеют несколько центров Cloudlink Или хотят управлять центром Cloudlink Center с помощью сценария PowerShell.
Lösung
# Dell © 2021, 2022
# Этот файл предназначен только для образовательных целей и информационных целей.
# Можно использовать в качестве справочного материала при записи сценариев автоматизации Cloudlink на языке сценариев PowerShell.
# Dell не несет ответственности за выполнение этого файла как сценарий PowerShell в среде заказчика Dell
# В сценарии показан способ выставить список компьютеров, зарегистрированных в Cloudlink, и их накопителей из сценария PowerShell
# с использованием вызовов Cloudlink RestAPI.
# Сценарий не изменяет состояние любой системы, просто отображает информацию.
# Доступ к узлу Cloudlink (указанному IP-адресом) предоставляется с учетными данными пользователя Cloudlink типа «client».
# Следующий компонент является макетом проверки сертификата,
сертификат всегда действителен[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback'). введите)
{
$certCallback = @"
с помощью системы;
с помощью System.Net;
с помощью System.Net.Security;
с помощью System.Security.Cryptography.X509Certificates;
сервер общедоступного классаValidateValidationCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateValidationCallback ==null)
{
ServicePointManager.ServerCertificateValidationCallback +=
delegate
(
Object obj,
X509Certificate certificate,
X509Цепцепирование,
ошибки SslPolicyErrors
)
{
возврат true;
};
}
} }
"@
Add-Type $certCallback
}
[ServerCertificateValidationCallback]::Ignore()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"
Параметры вывода записи: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' = "Пользователь-носитель $mytoken"}
# Запрос для компьютеров 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
Запись хоста «Список машин:» -ForegroundColor Желтая
$machine_list_txt = $machine_list | ConvertFrom-Json
$machine_list_txt | FT
#For
на каждой машине выведите список дисков для выполнения ($machine в $machine_list_txt)
{
$drives_list = $($machine.resources)
Write-Host "$($machine.name) $($machine.ip_address) ($($machine.os_name)) group $($machine.group)" -ForegroundColor Yellow
$drives_list | list | FT
}
}
# Этот файл предназначен только для образовательных целей и информационных целей.
# Можно использовать в качестве справочного материала при записи сценариев автоматизации Cloudlink на языке сценариев PowerShell.
# Dell не несет ответственности за выполнение этого файла как сценарий PowerShell в среде заказчика Dell
# В сценарии показан способ выставить список компьютеров, зарегистрированных в Cloudlink, и их накопителей из сценария PowerShell
# с использованием вызовов Cloudlink RestAPI.
# Сценарий не изменяет состояние любой системы, просто отображает информацию.
# Доступ к узлу Cloudlink (указанному IP-адресом) предоставляется с учетными данными пользователя Cloudlink типа «client».
# Следующий компонент является макетом проверки сертификата,
сертификат всегда действителен[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not ([System.Management.Automation.PSTypeName]'ServerCertificateValidationCallback'). введите)
{
$certCallback = @"
с помощью системы;
с помощью System.Net;
с помощью System.Net.Security;
с помощью System.Security.Cryptography.X509Certificates;
сервер общедоступного классаValidateValidationCallback
{
public static void Ignore()
{
if(ServicePointManager.ServerCertificateValidationCallback ==null)
{
ServicePointManager.ServerCertificateValidationCallback +=
delegate
(
Object obj,
X509Certificate certificate,
X509Цепцепирование,
ошибки SslPolicyErrors
)
{
возврат true;
};
}
} }
"@
Add-Type $certCallback
}
[ServerCertificateValidationCallback]::Ignore()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"
Параметры вывода записи: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' = "Пользователь-носитель $mytoken"}
# Запрос для компьютеров 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
Запись хоста «Список машин:» -ForegroundColor Желтая
$machine_list_txt = $machine_list | ConvertFrom-Json
$machine_list_txt | FT
#For
на каждой машине выведите список дисков для выполнения ($machine в $machine_list_txt)
{
$drives_list = $($machine.resources)
Write-Host "$($machine.name) $($machine.ip_address) ($($machine.os_name)) group $($machine.group)" -ForegroundColor Yellow
$drives_list | list | FT
}
}
Betroffene Produkte
CloudLink SecureVM, CloudLinkArtikeleigenschaften
Artikelnummer: 000202396
Artikeltyp: Solution
Zuletzt geändert: 15 Mai 2026
Version: 6
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.