Änderungen von Dokument Eigene Autoconf-Rolle erstellen
Zuletzt geändert von Tom Altenbrunn am 2023/03/17 08:03
Von Version 28.1
bearbeitet von Jonas Mayer
am 2023/03/16 07:55
am 2023/03/16 07:55
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 50.1
bearbeitet von Tom Altenbrunn
am 2023/03/16 15:35
am 2023/03/16 15:35
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 8 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. jonasmayer@sbede1 +XWiki.TomAltenbrunn@sbede - Inhalt
-
... ... @@ -2,7 +2,6 @@ 2 2 3 3 ---- 4 4 5 - 6 6 = (% style="font-size:22px" %)__**Allgemeines**__(%%) = 7 7 8 8 ... ... @@ -29,7 +29,7 @@ 29 29 30 30 Für die Funktionalität der Autoconf-Rolle ist es also nötig, PowerShell-Skripte am Server abzuspeichern, die die Instruktionen an den Arbeitsstationen ausführen. Für diese Skripte sind folgende Dateinamen zulässig: 31 31 32 -* **main.ps1** - Skript wird in allen Phasen ausgeführt, die innerhalb der Beschreibungsdatei {{box}}meta/logodidact.yml{{/box}} 31 +* **main.ps1** - Skript wird in allen Phasen ausgeführt, die innerhalb der Beschreibungsdatei (% data-xwiki-non-generated-content="java.util.List" %){{box}}meta/logodidact.yml{{/box}}(%%) festgelegt sind. Eine solche Datei folgt dem Prinzip „in jeder Phase soll genau das gleiche stattfinden“. 33 33 * (% style="color:#8e44ad" %)**setup.ps1**(%%) - Skript wird ausschließlich in der SETUP-Phase während des Deployments ausgeführt. In der Setup-Phase ist der Client noch veränderlich und besitzt noch keine Schutzfunktion, selbst wenn der Schutz aktiviert ist. 34 34 * (% style="color:#8e44ad" %)**custom.ps1**(%%) - Skript wird ausschließlich in der CUSTOM-Phase ausgeführt. Dies geschieht sowohl 1x während des Deployments als auch später nach jedem Hochfahren des PCs 1x im Hintergrund. 35 35 * (% style="color:#8e44ad" %)**user.ps1**(%%) - Skript wird ausschließlich in der USER-Phase ausgeführt. Diese Phase wird nicht direkt während des Deployments durchlaufen, sondern erst später während der Benutzeranmeldung an betriebsbereiten PCs. ... ... @@ -96,7 +96,7 @@ 96 96 ---- 97 97 98 98 99 -= (% style="font-size:22px" %)__** Weiteres, funktionsfertiges Beispiel: Rolle „WLAN Profil mit PSK anlegen“**__(%%) =98 += (% style="font-size:22px" %)__**Funktionsfertiges Beispiel: Rolle „WLAN Profil mit PSK anlegen“**__(%%) = 100 100 101 101 102 102 Zum besseren Verständnis wird nachfolgend eine feste Autoconf-Rolle zur Konfiguration eines WLAN-Profils (SSID inkl. PSK) an Clients näher beleuchtet. ... ... @@ -119,7 +119,7 @@ 119 119 (% style="color:#8e44ad" %) uuid:(%%) 52318636-c4f5-11ea-baf9-0bff00c66ff4 120 120 visible: true 121 121 (% style="color:#19177c" %) priority:(%%) 0 122 - apply Always: false121 + apply_always: false 123 123 (% style="color:#f1c40f" %) tags:(%%) 124 124 - CUSTOM 125 125 (% style="color:#e74c3c" %) vars:(%%) ... ... @@ -158,7 +158,7 @@ 158 158 159 159 == (% style="font-size:16px" %)**Inhalt des PowerShell-Skripts main.ps1, das die Variablen entgegennimmt**(%%) == 160 160 161 -Im Unterverzeichnis {{box}} win/ {{/box}} 160 +Im Unterverzeichnis {{box}} win/ {{/box}} oder {{box}} lin/ {{/box}} der Autoconf-Rolle können sich wie erläutert unterschiedliche PowerShell-Skripte zur Ausführung in den verschiedenen Phasen befinden. 162 162 In dieser Rolle liegt konkret das allgemeingültige Skript {{box}}main.ps1{{/box}} vor, welches die Variablen als Parameter ##$ssid## und ##$psk## intern verwendet. 163 163 164 164 ... ... @@ -226,8 +226,8 @@ 226 226 227 227 (% style="color:#19177c" %)**Linux Variante (Network Manager)** 228 228 229 -{{code width="50%"language="text"}}230 -root@ctrl-g1:~ # cat /usr/lib/ld-autoconf/logodidact/roles/ld_wlan_psk/ win/main.ps1228 +{{code language="text" width="50%"}} 229 +root@ctrl-g1:~ # cat /usr/lib/ld-autoconf/logodidact/roles/ld_wlan_psk/lin/main.ps1 231 231 {{/code}} 232 232 233 233 {{code language="powershell" width="50%"}} ... ... @@ -289,3 +289,91 @@ 289 289 exit 1 290 290 } 291 291 {{/code}} 291 + 292 +---- 293 + 294 + 295 + 296 += (% style="font-size:22px" %)__**Weiteres Beispiel: eigene AutoConf-Rolle zur „Deaktivierung der Suchhervorhebung in Windows“**__(%%) = 297 + 298 +Im nachfolgenden Beispiel wird eine einfache Rolle zur Deaktivierung der Suchvorhebung in Windows deklariert. 299 +\\[[image:image-20230316103442-2.png||height="530" width="1142" class="img-thumbnail"]] 300 + 301 +---- 302 + 303 +== (% style="font-size:16px" %)**Aufbau der logodidact.yml**(%%) == 304 + 305 +Neben den allgemeinen Informationen über die Autoren (authors), Unternehmen (company), einer Beschreibung (description), dem Anzeigenamen (display_name) im LD Control Center, usw, beginnt im Abschnitt {{code language="bash"}}vars{{/code}} die eigentliche Definition der Variable 306 +"**{{code}}disableSearchHighlight{{/code}}**". 307 + 308 + 309 +{{code language="yaml" width="45%"}} 310 +#logodidact.yml 311 + 312 +ld_info: 313 + authors: 314 + - Tom Altenbrunn 315 + - Olav Krapp 316 + - Marcel Petersen 317 + - Kerim Ekin 318 + company: SBE network solutions GmbH 319 + description: | #Beschreibung 320 + Die Suchhervorhebung in der Windows Suchleiste wird deaktiviert 321 + display_name: Windows Suchhervorhebung #Anzeigename im LD Control Center 322 + license: SBE 323 + uuid: fec4ff30-b2a6-407f-a6b3-0a621cd7eaf7 #einmalige UUID 324 + vars: #Deklaration der Variablen 325 + disableSearchHighlight: #Name der Variable 326 + display_name: Suchhervorhebung im Suchfeld deaktivieren #Anzeigename im LD Control Center 327 + optional: true #Auswahl optional 328 + type: BOOLEAN #Variablentyp Boolean = True/False 329 + value: false #Standardwert false 330 + visible: true #Sichtbarkeit der Variable im LD Control Center 331 + priority: 0 #Abarbeitungspriorität 332 + apply_always: false 333 + tags: 334 + - CUSTOM #Ausführungszeitpunkt während der/den Phase(n) 335 + systems: 336 + - WINDOWS #Betriebssystem 337 +{{/code}} 338 + 339 +---- 340 + 341 +== (% style="font-size:16px" %)**Aufbau der main.ps1**(%%) == 342 + 343 +Danach erfolgt die Erstellung des ausführbaren Codes per Powershell. Im ersten Abschnitt (% style="color:#008000" %)**Param** (%%)werden die in der im vorigen Abschnitt definierten Variablen {{code}}vars{{/code}} aus der logodidact.yml aufgeführt und definiert. Bei der Variable "**{{code}}disableSearchHighlight{{/code}}**" handelt es sich um ein Boolean (True/False). Die Bedingung "**[parameter(Mandatory=$false)]**" setzt das Vorhandensein der Variable während dem Ablauf des Skriptes nicht als zwingend notwendig voraus, sodass bei einem darauffolgenden Verarbeitungsfehler o.ä. die Abarbeitung weiter erfolgt. 344 + 345 +{{code language="powershell"}} 346 +#main.ps1 347 + 348 +Param 349 +( 350 + [parameter(Mandatory=$false)] #Variable zwingend erforderlich? 351 + [bool] #Variablentyp 352 + $disableSearchHighlight #Name der def. Variable aus logodidact.yml 353 +) 354 + 355 +$SystemVersion=[System.Environment]::OSVersion.Version #Hole Windows Systemversion 356 + 357 +#Beginn des eigentlichen Codes 358 +if ($SystemVersion.Major -eq 10 -and $SystemVersion.Build -ge 19044) { 359 + $val = [int]!$disableSearchHighlight 360 + Write-Verbose "Setting EnableDynamicContentInWSB to '$val'" 361 + [Microsoft.Win32.Registry]::SetValue("HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Search","EnableDynamicContentInWSB",$val,[Microsoft.Win32.RegistryValueKind]::DWord) 362 +} else { 363 + Write-Host "Feature ist erst ab dem Release 21H2 verfügbar." 364 +} 365 +{{/code}} 366 + 367 +---- 368 + 369 +== (% style="font-size:16px" %)**Einlesen der AutoConf-Rollen am Server**(%%) == 370 + 371 +[[image:image-20230316110425-1.png||height="124" width="1186" class="img-thumbnail"]] 372 + 373 + 374 +== (% style="font-size:16px" %)**Ansicht im LD Control Center**(%%) == 375 + 376 +[[image:image-20230316110525-2.png||class="img-thumbnail"]] 377 + 378 +
- image-20230316094933-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +43.3 KB - Inhalt
- image-20230316095106-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +47.8 KB - Inhalt
- image-20230316102252-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +166.3 KB - Inhalt
- image-20230316102302-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +166.3 KB - Inhalt
- image-20230316103224-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +166.3 KB - Inhalt
- image-20230316103442-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +201.2 KB - Inhalt
- image-20230316110425-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +166.3 KB - Inhalt
- image-20230316110525-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.TomAltenbrunn@sbede - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +48.3 KB - Inhalt