<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>azure blob Archives | XOAP</title>
	<atom:link href="https://dev.xoap.io/de/tag/azure-blob/feed/" rel="self" type="application/rss+xml" />
	<link>https://dev.xoap.io/de/tag/azure-blob/</link>
	<description>Plattform für IT-Infrastruktur und Arbeitsplatzautomatisierung</description>
	<lastbuilddate>Tue, 03 Feb 2026 12:20:19 +0000</lastbuilddate>
	<language>de</language>
	<sy:updateperiod>
	stündlich	</sy:updateperiod>
	<sy:updatefrequency>
	1	</sy:updatefrequency>
	

<image>
	<url>https://dev.xoap.io/wp-content/uploads/2023/11/cropped-favicon-32x32.png</url>
	<title>azure blob Archives | XOAP</title>
	<link>https://dev.xoap.io/de/tag/azure-blob/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Offline Domain Join using XOAP and Azure Blob storage</title>
		<link>https://dev.xoap.io/de/offline-domain-join-xoap-azure-blob/</link>
		
		<dc:creator><![CDATA[Perica]]></dc:creator>
		<pubdate>Thu, 29 Feb 2024 12:27:02 +0000</pubdate>
				<category><![CDATA[Library]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[azure blob]]></category>
		<category><![CDATA[dsc]]></category>
		<category><![CDATA[xoap]]></category>
		<guid ispermalink="false">https://dev.xoap.io/?p=8602</guid>

					<description><![CDATA[<p>Verwenden Sie das Modul Offline Domain Join, um ein Gerät, das keinen Zugriff auf den Domain Controller hat, in die Domäne aufzunehmen. Hier kostenlos herunterladen!</p>
<p>The post <a href="https://dev.xoap.io/de/offline-domain-join-xoap-azure-blob/">Offline Domain Join using XOAP and Azure Blob storage</a> appeared first on <a href="https://dev.xoap.io/de">XOAP</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div data-elementor-type="wp-post" data-elementor-id="8602" class="elementor elementor-8602" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-311f07f2 e-flex e-con-boxed e-con e-parent" data-id="311f07f2" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-6187fbc3 elementor-widget elementor-widget-text-editor" data-id="6187fbc3" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Mit unserem Modul können Sie einem Gerät, das keinen Zugang zum Domain Controller hat (über das Firmennetzwerk oder über VPN), einen Domain Join ermöglichen. Es ist ein <strong>alternativ</strong> zu verwenden <strong>Azure Hybrid Join</strong>.</p><p>Während Azure Hybrid Join ein Gerät zu Azure AD (Entra) und lokalem AD hinzufügt, ermöglicht diese Option nur den Beitritt eines Geräts zum lokalen AD. In der Zwischenzeit ist Hybrid Join hinsichtlich der Namenskonvention eingeschränkt und erlaubt nur die Definition des Präfixes.</p><p>Mit dieser Lösung ist es möglich, ein Präfix zu definieren und eine Seriennummer von Computern für den Computernamen zu verwenden.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ce27097 elementor-widget elementor-widget-text-editor" data-id="ce27097" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Für wen ist das?</h2>								</div>
				</div>
				<div class="elementor-element elementor-element-77fc1c9 elementor-widget elementor-widget-text-editor" data-id="77fc1c9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Sie können von diesem Modul profitieren, egal ob Sie XOAP-Nutzer sind oder nicht. So geht's:</p><p><strong>a)</strong> Wenn Sie ein XOAP-Benutzer sind, können Sie mit diesem Modul und der XOAP-Konsole einfach Windows-Clients für die Verwendung von Offline Domain Join über Azure Blob Storage einrichten.</p><p><strong>b)</strong> Wenn Sie kein XOAP-Benutzer sind, verwenden Sie dieses Modul in Ihrer eigenen DSC-Umgebung, oder verwenden Sie PowerShell-Skripte in diesem Modul, um eine eigene Automatisierungsalternative für Offline Domain Join zu erstellen.</p><p>Möchten Sie alles erleben, was XOAP zu bieten hat? <a href="https://auth.dev.xoap.io/auth/realms/my.dev.xoap.io/protocol/openid-connect/registrations?client_id=portal&amp;response_type=code&amp;scope=openid%20email&amp;redirect_uri=https://my.dev.xoap.io&amp;kc_locale=en&amp;_ga=2.190779107.97889014.1728977515-2092130983.1728977514" target="_blank" rel="noopener">Erstellen Sie hier Ihr kostenloses Konto</a>!</p>								</div>
				</div>
				<div class="elementor-element elementor-element-9ab7f2d elementor-widget elementor-widget-text-editor" data-id="9ab7f2d" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Wozu dient dieses Modul?</h2>								</div>
				</div>
				<div class="elementor-element elementor-element-455c3f9 elementor-widget elementor-widget-text-editor" data-id="455c3f9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Zur weiteren Erläuterung: Dieses Modul benennt den Computer anhand der Seriennummer und des definierten Präfixes um. Anschließend wird ein Offline Domain Join des Geräts über Azure Blob Storage erstellt, falls gewünscht.</p><p>Der Computer erstellt eine Anforderung und stellt sie an einem bestimmten Ort auf Azure Blob bereit. Dann nimmt der Domänencontroller diese Anforderung entgegen und stellt eine Antwort auf Azure Blob ein. Diese Antwortdatei wird dann von einem Computer gelesen - und der Computer führt einen Offline-Domänenbeitritt durch. Außerdem wird das Zertifikat aus Azure Blob importiert.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-414a822 elementor-widget elementor-widget-text-editor" data-id="414a822" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Was muss ich wissen, bevor ich anfange?</h2>								</div>
				</div>
				<div class="elementor-element elementor-element-3580c60 elementor-widget elementor-widget-text-editor" data-id="3580c60" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Um zu verstehen, wie man es verwendet, sind neben diesen 3 Komponenten auch Kenntnisse in PowerShell, Active Directory und Azure Storage erforderlich:</p><ol><li>Serverseitig: Modifizierung des Domain Controllers, um Offline Domain Join zu ermöglichen</li><li>Azure Blob Storage: Speicher zum Hosten von Dateien, die für Offline Domain Join benötigt werden</li><li>XOAPOfflineDomainJoinViaBlobDSC: zum Einrichten eines Windows-Clients zum Erstellen einer Anfrage und Abrufen der Antwort für Offline Domain Join</li></ol>								</div>
				</div>
				<div class="elementor-element elementor-element-c51a707 elementor-widget elementor-widget-text-editor" data-id="c51a707" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h3>Liste der Voraussetzungen:</h3>								</div>
				</div>
				<div class="elementor-element elementor-element-cd1f4f7 elementor-widget elementor-widget-text-editor" data-id="cd1f4f7" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<ul type="disc"><li lang="de">AzureAZ PowerShell-Modul (falls nicht installiert, werden die Untermodule "Az.Accounts" und "Az.Storage" bei der Ausführung dieses DSC-Moduls installiert);  </li><li lang="de">ComputerManagementDsc in Version 8.5.0; </li><li lang="de">Azure Blob-Speicher; </li><li lang="de">Lokales Active Directory; </li><li lang="de">PowerShell-Skript, das die Anforderung von Azure Blob Storage liest und die Antwortdatei und das Maschinenzertifikat auf Azure Blob Storage setzt (Beispiel unten).</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-c2b0b0f elementor-widget elementor-widget-code-highlight" data-id="c2b0b0f" data-element_type="widget" data-e-type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-okaidia copy-to-clipboard word-wrap">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					$WarningPreference = "SilentlyContinue" $Domain = "test.local.com" $OU = "OU=Notebooks,OU=Koeln,DC=test,DC=local,DC=com" $TTenant_ID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" $Subscription_ID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" $ResBenutzername = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" $SAccountname = "xoapdeployments" $ContainerName = "adjoin" $FExt = ".blb" $BlobFolder ="adblob" $RequestFolder = "request" $JoinName ="" Set-Location C:\Scripts #SecPass.exe generiert Passwort für Azure-Zugang $SecPassStr = cmd /c .\SecPass.exe $args 2`&gt;`&amp;1 $cred = New-Object System.Management.Automation.Pscredential($ResUsername, (ConvertTo-SecureString -String $SecPassStr)) $ARMA = Add-AzureRmAccount -ServicePrincipal -Credential $cred -TenantId $Tenant_ID -Subscription $Subscription_ID $ARMA $storageContainer = Get-AzureRmStorageAccount | where {$_.StorageAccountName -eq $SAccountname} | Get-AzureStorageContainer $ComputerFiles = $storageContainer | Get-AzureStorageBlob | where {$_.Name.Contains($RequestFolder) -und !($_.Name.Contains("flag.flg"))}  | Select-Objekt "Name" , "LastModified" # $ComputerFiles if($ComputerFiles) { foreach($Computerfile in $ComputerFiles) { $JoinName = $ComputerFile.Name.Replace("/","\") # $JoinName $storageContainer | Remove-AzureStorageBlob -Container $ContainerName -Blob ($JoinName) -Force $JoinName = $JoinName.SubString(8) $ADblobfile = $Computername + ".blob" -f $computer $BlobName = ".\" + $JoinName + $FExt # $BlobName $run = "djoin.exe /provision /domain {0} /MachineOU {1} /Maschine {2} /savefile {3} /wiederverwenden /rootcacerts" -f $Domain, $OU, $JoinName, $BlobName # $run Invoke-Ausdruck $run $StorageBlob = $BlobFolder + "\" + $JoinName + $FExt # $Storage $storageContainer | Set-AzureStorageBlobContent -File $BlobName -Blob $StorageBlob -Properties @{"ContentType" = "text/plain"}         $storageContainer | Remove-AzureStorageBlob -Blob ($RequestFolder + "\" + $JoinName) -Force Remove-Item -Path $BlobName } } Remove-AzureRmAccount -Username $ResUsername
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4c87420 elementor-widget elementor-widget-text-editor" data-id="4c87420" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h3>Verfügbare Ressourcen und Syntax</h3>								</div>
				</div>
				<div class="elementor-element elementor-element-1b21125 elementor-widget elementor-widget-code-highlight" data-id="1b21125" data-element_type="widget" data-e-type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-okaidia copy-to-clipboard">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					OfflineDomainJoinViaBlob [String] #ResourceName { [DependsOn = [String[]]] [PsDscRunAsCredential = [PSCredential]] Tenant_ID = [String] Subscription_ID = [String] Username = [String] Password = [String] SAccountname = [String]     ContainerName = [String] RequestFolder = [String] BlobFolder = [String] CertFolder = [String] [TimeoutInMinutes = [Int32]] [RenameComputerUsingSerial = [Boolean]] [ComputerNamePrefix = [String]] [RebootAfterDomainJoin = [Boolean]] }
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fff0e5e elementor-widget elementor-widget-text-editor" data-id="fff0e5e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p lang="de">Saccountname = Name des Speicherkontos</p>								</div>
				</div>
				<div class="elementor-element elementor-element-e7249c8 elementor-widget elementor-widget-text-editor" data-id="e7249c8" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Sind Sie bereit, loszulegen? <strong>Download this module below! <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f5b1.png" alt="🖱" class="wp-smiley" style="height: 1em; max-height: 1em;" /></strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-5469ff6 elementor-widget elementor-widget-spacer" data-id="5469ff6" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-cac3a4c e-con-full e-flex e-con e-parent" data-id="cac3a4c" data-element_type="container" data-e-type="container" id="download" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
		<div class="elementor-element elementor-element-5056cb4 e-flex e-con-boxed e-con e-child" data-id="5056cb4" data-element_type="container" data-e-type="container" id="download-fslogix" data-settings="{&quot;background_background&quot;:&quot;gradient&quot;,&quot;jet_parallax_layout_list&quot;:[]}">
					<div class="e-con-inner">
		<div class="elementor-element elementor-element-57f535b e-con-full e-flex e-con e-child" data-id="57f535b" data-element_type="container" data-e-type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-e376ebc elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="e376ebc" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="996" height="1024" src="https://dev.xoap.io/wp-content/uploads/2024/01/download-996x1024.png" class="attachment-large size-large wp-image-5408" alt="Download illustration" srcset="https://dev.xoap.io/wp-content/uploads/2024/01/download-996x1024.png 996w, https://dev.xoap.io/wp-content/uploads/2024/01/download-292x300.png 292w, https://dev.xoap.io/wp-content/uploads/2024/01/download-768x790.png 768w, https://dev.xoap.io/wp-content/uploads/2024/01/download.png 1024w" sizes="(max-width: 996px) 100vw, 996px" />															</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-ddda84d e-con-full e-flex e-con e-child" data-id="ddda84d" data-element_type="container" data-e-type="container" data-settings="{&quot;jet_parallax_layout_list&quot;:[]}">
				<div class="elementor-element elementor-element-a6995ad elementor-widget elementor-widget-heading" data-id="a6995ad" data-element_type="widget" data-e-type="widget" data-settings="{&quot;_animation&quot;:&quot;none&quot;,&quot;_animation_tablet&quot;:&quot;fadeInDown&quot;}" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Offline Domain Join herunterladen</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-26891d2 animated-slow elementor-widget__width-initial elementor-mobile-button-align-stretch elementor-invisible elementor-widget elementor-widget-form" data-id="26891d2" data-element_type="widget" data-e-type="widget" data-settings="{&quot;step_next_label&quot;:&quot;Next&quot;,&quot;step_previous_label&quot;:&quot;Previous&quot;,&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}" data-widget_type="form.default">
				<div class="elementor-widget-container">
							<form class="elementor-form" method="post" name="Download" aria-label="Herunterladen" action="">
			<input type="hidden" name="post_id" value="8602"/>
			<input type="hidden" name="form_id" value="26891d2"/>
			<input type="hidden" name="referer_title" value="azure blob Archives | XOAP" />

			
			<div class="elementor-form-fields-wrapper elementor-labels-">
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_fullname elementor-col-50">
												<label for="form-field-field_fullname" class="elementor-field-label elementor-screen-only">
								Vollständiger Name							</label>
														<input size="1" type="text" name="form_fields[field_fullname]" id="form-field-field_fullname" class="elementor-field elementor-size-md  elementor-field-textual" placeholder="Vollständiger Name">
											</div>
								<div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-50 elementor-field-required">
												<label for="form-field-email" class="elementor-field-label elementor-screen-only">
								E-Mail							</label>
														<input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-md  elementor-field-textual" placeholder="E-Mail" required="required">
											</div>
								<div class="elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_b20a517 elementor-col-100">
					Mit dem Herunterladen akzeptieren Sie die XOAP <a href="https://dev.xoap.io/de/data-protection/" target="_blank"> Datenschutzbestimmungen</a> und werden von uns Produktinformationen erhalten.				</div>
								<div class="elementor-field-type-recaptcha_v3 elementor-field-group elementor-column elementor-field-group-field_1eb3fa3 elementor-col-100 recaptcha_v3-bottomright">
					<div class="elementor-field" id="form-field-field_1eb3fa3"><div class="elementor-g-recaptcha" data-sitekey="6Ld61w4pAAAAAGfjGrvIDymMiqJJ6ghZ58D6BIro" data-type="v3" data-action="Form" data-badge="bottomright" data-size="invisible"></div></div>				</div>
								<div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons">
					<button class="elementor-button elementor-size-md" type="submit">
						<span class="elementor-button-content-wrapper">
															<span class="elementor-button-icon">
									<svg aria-hidden="true" class="e-font-icon-svg e-fas-file-download" viewbox="0 0 384 512" xmlns="http://www.w3.org/2000/svg"><path d="M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm76.45 211.36l-96.42 95.7c-6.65 6.61-17.39 6.61-24.04 0l-96.42-95.7C73.42 337.29 80.54 320 94.82 320H160v-80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v80h65.18c14.28 0 21.4 17.29 11.27 27.36zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"></path></svg>																	</span>
																						<span class="elementor-button-text">Jetzt herunterladen</span>
													</span>
					</button>
				</div>
			</div>
		<input type="hidden" name="trp-form-language" value="de"/></form>
						</div>
				</div>
				</div>
					</div>
				</div>
				</div>
				</div><p>The post <a href="https://dev.xoap.io/de/offline-domain-join-xoap-azure-blob/">Offline Domain Join using XOAP and Azure Blob storage</a> appeared first on <a href="https://dev.xoap.io/de">XOAP</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>