-
Notifications
You must be signed in to change notification settings - Fork 0
/
createEndpoint.ps1
55 lines (48 loc) · 1.95 KB
/
createEndpoint.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Importiert das Client.ps1-Skript, das benötigte Funktionen und Variablen bereitstellt
. .\Variablen\Client.ps1
# Nimmt den ersten Argumentwert als Endpunktnamen
$EndpointName = $args[0]
# Liest den Inhalt der Server.txt-Datei und speichert ihn in der Variable $serverUrl
$serverUrl = Get-Content -Path .\Variablen\Server.txt
# Definiert die Basis-URL für die API-Anfrage, die einen Windows-Endpunkt erstellt
$BaseURL = $serverUrl + "/bconnect/endpoints/v2.0/WindowsEndpoints"
# Definiert die Eingabevariablen für das Skript
param(
[string]$EndpointName,
[string]$LogicalGroupId,
[string]$Comment,
[string]$HostName,
[string]$Domain,
[string]$PrimaryMAC,
[string]$PrimaryIP,
[string]$PrimarySubnetMask,
[string]$RegisteredUser
)
# Definiert die Header für den API-Aufruf
$Headers = @{
'accept' = 'application/json'
'Content-Type' = 'application/json'
'Authorization' = 'Basic ' + $UserPassBase64
}
# Definiert den Body für den API-Aufruf
$Body = @{
"displayName" = $EndpointName
"logicalGroupId" = $LogicalGroupId
"comment" = $Comment
"hostName" = $HostName
"domain" = $Domain
"primaryMAC" = $PrimaryMAC
"primaryIP" = $PrimaryIP
"primarySubnetMask" = $PrimarySubnetMask
"registeredUser" = $RegisteredUser
"registeredUserUpdateMode" = "UseNextLogonUser"
"userRelatedJobExecution" = "Always"
"isApplicationUsageTrackingActive" = $true
"isEnergyManagementActive" = $true
"clientAgentLink" = @{
"extendedInternetMode" = $true
"networkMode" = "LAN"
}
} | ConvertTo-Json
# Führt den API-Aufruf aus und erstellt einen neuen Windows-Endpunkt
Invoke-RestMethod -Method Post -Uri $BaseURL -Headers $Headers -Body $Body