Outlook „Cloud Attachments“ funktionieren nicht mit S/MIME Signaturen!

Veröffentlicht Veröffentlicht in Computer

Outlook „Cloud Attachments“ sind etwas hochpraktisches! Man verschickt Dateien nicht als Mailanhang sondern kopiert Sie auf seinen OneDrive und fügt nur einen Link auf die Datei in die E-Mail ein. Damit entfällt erstens die Größenbeschränkung und zweitens bläht man den Posteingang und die Gesendeten Elemente nicht so auf.

Im aktuellen Outlook Office 365 erzeugt man dazu eine neue E-Mail und klickt dann im Ribbon auf „Datei anfügen“.

  • Wenn die anzuhängende Datei bereits auf dem OneDrive liegt wählt man in dem Menü den Befehl „Webspeicherorte durchsuchen“ und im Submenü dann OneDrive bzw. OneDrive for Business. Im folgenden Öffnen-Dialog wählt man dann die anzuhängende Datei. Sofern man die Outlook-Standardeinstellung nicht verändert hat erscheint jetzt die Frage wie man die Datei anfügen möchte: „Link teilen“ oder „Als Kopie anfügen“. Wenn man hier „Link teilen“ wählt wird das Dateisymbol wie gewohnt in die E-Mail eingefügt, allerdings mit einem kleinen Cloudsymbol.
  • Wenn die anzuhängende Datei noch nicht auf dem OneDrive liegt fügt man sie zuerst ganz normal der E-Mail als Anhang hinzu und klickt dann auf den kleinen DropDown-Pfeil neben dem Dateisymbol und wählt in dem Menü zuerst „Hochladen“ und im Submenü dann OneDrive bzw. OneDrive for Business. Damit wird die Datei auf den OneDrive hochgeladen und anschließend dem Dateisymbol ein kleines Cloudsymbol hinzugefügt.

Anschließend sollte man noch mit dem kleinen DropDown-Pfeil neben dem Dateisymbol zuerst auf „Berechtigungen ändern“ klicken und dann im Submenü z.B. „Jeder kann anzeigen“ wählen. So verhindert man, dass die Datei auf dem OneDrive verändert werden kann.

Zumindest in der Theorie funktioniert das alles so – In der Praxis gibt es zwei Probleme die mich heute viele Stunden beschäftigt haben:

  • Auf allen PCs wurde ich in Outlook nie gefragt ob ich einen „Link teilen“ möchte und auch auf den OneDrive hochgeladene lokale Dateien wurden als ganz normale Anhänge zur E-Mail hinzugefügt. In Outlook Online hat dies wie gedacht funktioniert, aber nicht im lokalen Outlook. Nach ewigem Suchen habe ich herausgefunden, dass dies an meinen S/MIME-Einstellungen lag. Ich füge allen meine E-Mails eine elektronische Signatur hinzu, was ganz offensichtlich die Funktionalität der „Cloud Attachments“ verhindert. Kaum hatte ich in der neuen E-Mail (vor dem Hinzufügen der anzuhängenden Datei!) die Signatur deaktiviert, konnte ich wie oben beschrieben mit „Cloud Attachments“ arbeiten. Auch eine mehrstündige Recherche hat nirgends einen Hinweis auf diese Problematik ergeben.
  • Das oben im zweiten Punkt beschriebene nachträgliche Hochladen eines Anhangs auf den OneDrive funktioniert problemlos, allerdings wird bei mir dabei der Dateiname verstümmelt: Mehrere (scheinbar zufällig gewählte) Zeichen werden durch Unterstriche ersetzt. Auch hier tritt das Problem in Outlook Online nicht auf und Google liefert keinerlei Hinweise. Im Moment bleibt (zumindest hier bei mir) wohl nur die anzuhängende Datei zuerst manuell auf den OneDrive zu kopieren und dann wie oben im ersten Punkt beschrieben über „Link teilen“ anzuhängen.

UEFI/SecureBoot nachträglich aktivieren

Veröffentlicht Veröffentlicht in Computer

Ich habe vor ein paar Tagen einen Windows 7 Laptop mit dem Media Creation Tool und Windows 10 neu installiert. Dabei habe ich leider vergessen vorher UEFI und SecureBoot zu aktivieren.

Einfach nachträglich im BIOS umstellen geht nicht, denn um mit aktivierem UEFI booten zu können muß die SSD den Partitionsstil „GPT“ verwenden. Tat sie aber nicht, es wurde noch der alte „MBR“ verwendet. In einem Artikel habe ich den Hinweis gefunden, dass es seit Windows 10-1703 (Creators Update) möglich ist den Partitionsstil nachträglich ohne Datenverlust zu konvertieren. Dazu muß man (vorher BitLocker deaktivieren!) den Rechner in der Eingabeaufforderung des Recovery Environments starten, dort zuerst mit

mbr2gpt /validate

überprüfen ob irgendwelche Probleme vorliegen und dann mit

mbr2gpt /convert

in wenigen Sekunden den Partitionsstil ändern. Beim anschließend erforderlichen Neustart sollte man dann gleich auf UEFI und SecureBoot umstellen. Das hat bei mir alles problemlos geklappt. Das ThinkPad hat interessanterweise nach der Umstellung auf UEFI beim Starten nicht mehr den „ThinkPad“- sondern einen „Lenovo“-Splashscreen angezeigt.

Dummerweise wurde mir beim anschließenden Aktivieren von BitLocker der Fehler „The system cannot find the file specified“ angezeigt, was natürlich nicht sehr hilfreich war. In einem TechNet-Thread bin ich auf den Hinweis gestoßen, dass durch die Konvertierung des Partitionsstils der Inhalt der Datei C:\Windows\System32\Recovery\REAgent.xml nicht mehr stimmt. Durch einfaches Umbenennen der Datei mit anschließendem Neustart wird die Datei mit den Standardwerten neu erstellt. Anschließend lies sich dann auch BitLocker ohne weitere Probleme aktivieren.

Beim Vergleichen der neu erstellten REAgent.xml mit der umbenannten alten Version ist mir aufgefallen dass in der neuerstellten Version sämtliche Werte auf Null bzw. leer standen, was mich befürchten lies dass das Recovery Environment dadurch nicht mehr funktionieren würde. Ich habe dann einen Artikel gefunden der sich mit genau dieser Frage beschäftigt und als einfachste Lösung anbietet mit (normal gebootet, nicht im Recovery Environment)

reagentc /disable
reagentc /enable

das Recovery Environment zu deaktivieren/aktivieren, wodurch die entprechenden Pfade und GUIDs in die REAgent.xml geschrieben werden sollten. Das war auch so, jetzt sieht die REAgent.xml beruhigenderweise wieder vernünftig aus.

Bilder in Outlook-Signaturen einbetten nicht verlinken

Veröffentlicht Veröffentlicht in Computer

Seit Outlook 2013 (und damit auch beim aktuellen Outlook 365) ist es nicht mehr so einfach wie früher möglich Outlook-Signaturen zentral zu erstellen und zu verteilen.

Die in den üblicherweise manuell erstellten HTML-Dateien verlinkten Bilder (Firmenlogo, Werbebanner, …) werden beim Versenden mit Outlook nicht mehr automatisch „eingebunden“ sondern bleiben „verlinkt“. Da der Empfänger natürlich keinen Zugriff auf den lokalen Server hat, werden die Bilder dort nicht angezeigt!

Die übliche Lösung die Bilder auf einen Webserver zu stellen und von dort zu verlinken hat den großen Nachteil, dass Outlook beim Empfänger diese Bilder aus Datenschutzgründen erst nach einem zusätzlichen Mausklick anzeigt – was natürlich kaum jemand macht.

Die Lösung durch manuelles Anlegen eines Registry-Keys auf jedem Outlook-PC das alte Outlook-Verhalten (einbetten statt verlinken) wiederherzustellen (wie z.B. hier beschrieben) erscheint mir nicht zielführend und vor allem wird diese Lösung sicher nicht dauerhaft zur Verfügung stehen.

Interessanterweise werden Bilder in Signaturen, die mit dem in Outlook eingebauten Signatur-Editor (Datei -> Optionen -> E-Mail -> Signaturen) erstellt werden wie früher eingebunden verschickt und daher bei Empfänger problemlos angezeigt. So erzeugte Signaturen bestehen aus drei Dateien

  • Signaturname.htm
  • Signaturname.rtf
  • Signaturname.txt

und einem Verzeichnis mit einigen weiteren Dateien

  • Signaturname-Dateien

Diese drei Dateien und das Verzeichnis werden in folgendem Verzeichnis erstellt:

%AppData%\Roaming\Microsoft\Signatures

Sobald sich diese Dateien und das Verzeichnis in dem oben erwähnten Verzeichnis „Signatures“ befinden, wird die Signatur in Outlook angezeigt und kann dort verwendet werden. Sie können auch problemlos auf einen anderen PC kopiert werden.

Die so erzeugte Datei Signaturname.htm ist so umfangreich und komplex aufgebaut, dass sie nicht sinnvoll manuell bearbeitet werden kann. Der Weg ist also alle (!) Signaturen lokal mit dem Outlook-Signatureditor zu erstellen und anschließend die so erzeugten Dateien und Verzeichnisse auf eine Serverfreigabe zu verschieben. Von dort können Sie dann z.B. mit einem Logonscript (Beispiel) oder mit einer Gruppenrichtlinie auf die jeweiligen PCs kopiert werden.

Auf dem gleichen Weg sind auch spätere Änderungen an den Signaturen durchzuführen: Die drei Dateien und das Verzeichnis der zu bearbeitenden Signatur in das lokale „Signatures“ Verzeichnis kopieren, die Signatur in Outlook bearbeiten (und sichern) und anschließend die drei Dateien und das Verzeichnis wieder zurück auf die Serverfreigabe verschieben.

Fehlende Geräte in der Netzwerkumgebung von Windows 10

Veröffentlicht Veröffentlicht in Computer

Bei PCs mit Windows 10 (1709 und neuer) fällt auf, dass in der Netzwerkumgebung im Windows Explorer nur noch ein geringer Teil der im Netzwerk vorhandenen Geräte (Server, andere PCs, …) angezeigt wird.

Auf älteren PCs im gleichen Netz werden nach wie vor alle Geräte angezeigt, also muß es an der Windows-Version liegen. Nach längerer Suche bin ich auf diesen Microsoft-Artikel gestoßen, in dem das Problem erklärt wird: Seit dem Funktionsupdate 1709 wird das veraltete und unsichere Protokoll SMBv1 nicht mehr standardmäßig installiert. Da die Netzwerkumgebung den Computerbrowser-Dienst nutzt(e) um die Geräte anzuzeigen und dieser auf SMBv1 basiert, funktioniert die Netzwerkumgebung seit dem Funktionsupdate 1709 nur noch eingeschränkt.

In dem Microsoft-Artikel wird von der weiteren Verwendung der Netzwerkumgebung abgeraten. Wenn man sie („in kleinen Netzen“) trotzdem weiter nutzen möchte wird als Lösung empfohlen auf allen PCs die in der Netzwerkumgebung auf anderen PCs angezeigt werden sollen die beiden Dienste „Funktionssuchanbieter-Host“ und „Funktionssuche-Ressourcenveröffentlichung“ zu starten und den Starttyp auf „Automatisch (Verzögerter Start)“ zu stellen.

Das funktioniert auch problemlos, PCs werden sofort in der Netzwerkumgebung angezeigt sobald die beiden Dienste gestartet wurden. Allerdings gehören diese beiden Dienste zur Funktionalität der „Windows-Heimnetzgruppe“, die mit dem Funktionsupdate 1803 ebenfalls abgeschafft wurde. Die beiden Dienste gibt es zwar aktuell (1809) noch, aber es würde mich nicht wundern wenn sie mit einem der nächsten Funktionsupdates ebenfalls verschwinden würden.

Versand von E-Mails von einem Device via Office 365

Veröffentlicht Veröffentlicht in Computer

Da ich jedesmal wieder suchen muß wie es im Detail funktioniert hier eine Zusammenstellung der Infos die erforderlich sind um von einem Device (Scanner, Router, NAS, …) eine E-Mail über Office 365 zu versenden. Die drei möglichen Varianten werden zwar in einem Microsoft-Artikel ausführlich beschrieben, allerdings möchte ich dass diese E-Mails von einem klar zugeordneten Absender kommen, weshalb noch ein paar mehr Schritte erforderlich sind.

Zuallererst muß man wissen, ob man über eine feste oder eine dynamische IP-Adresse mit dem Internet verbunden ist.

Feste IP-Adresse

  • Die IP-Adresse muß im SPF-Record auf dem DNS eingetragen sein, sonst landen die so versendeten E-Mails im Spamordner des Empfängers
  • In Office 365 eine „Gruppe“ anlegen
    • Name „Devicename“ und E-Mailadresse „devicename@firma.de“
    • Im „Exchange Admin Center“ in den Eigenschaften dieser Gruppe
      • Unter „Zustellungsverwaltung“ die Gruppe selbst (vorher sichern) als einzigen in die Liste eintragen. Somit kann die Gruppe nicht für Spam mißbraucht werden
      • Unter „Allgemein“ die Option „Diese Gruppe in Adresslisten ausblenden“ aktivieren
    • Es kann bis zu einer Stunde dauern bis alle Einstellungen der Gruppe wirksam werden!
  • Auf dem Device müßen folgende Einstellungen getroffen werden:
    • SMTP-Server: Den MX der Domain (üblicherweise firma-de.mail.protection.outlook.com) mit Port 25
    • TLS/StartTLS aktivieren. Manchmal wird hier von SSL gesprochen und es funktioniert, aber das ist dann wohl unsauber beschriftet.
    • Als Absenderadresse die E-Mailadresse der Office 365 Gruppe verwenden
  • Mit dieser Methode kann man nur „interne“ Empfänger (also Adressen der eigenen Maildomain) erreichen. Wenn das Gerät E-Mails an externe Adressen schicken soll, muß man die andere Methode („Dynamische IP-Adresse“) mit Authentifizierung verwenden.

Dynamische IP-Adresse

  • In Office 365 eine „Gruppe“ anlegen
    • Name „Devicename“ und E-Mailadresse „devicename@firma.de“
    • Im „Exchange Admin Center“ in den Eigenschaften dieser Gruppe
      • Unter „Gruppendelegierung“ dem Benutzer der auf dem Device für die Authentifizierung verwendet werden wird „Senden als“ Rechte geben.
      • Unter „Zustellungsverwaltung“ diesen Benutzer als einzigen in die Liste eintragen. Somit kann die Gruppe nicht für Spam mißbraucht werden
      • Unter „Allgemein“ die Option „Diese Gruppe in Adresslisten ausblenden“ aktivieren
    • Es kann bis zu einer Stunde dauern bis alle Einstellungen der Gruppe wirksam werden!
  • Auf dem Device müßen folgende Einstellungen getroffen werden:
    • SMTP-Server: smtp.office365.com mit Port 587 (25 geht auch)
    • Authentifizierung aktivieren. Den Benutzer verwenden der auch in der Office 365 Gruppe verwendet wurde
    • TLS/StartTLS aktivieren. Manchmal wird hier von SSL gesprochen und es funktioniert, aber das ist dann wohl unsauber beschriftet.
    • Als Absenderadresse die E-Mailadresse der Office 365 Gruppe verwenden

In beiden Varianten kann man den/die Empfänger entweder direkt auf dem Device eintragen oder dort einfach die Office 365 Gruppe als Empfänger festlegen und die eigentlichen Empfänger auf Office 365 der Gruppe als Mitglieder hinzufügen.

Platzbedarf von WSUS reduzieren

Veröffentlicht Veröffentlicht in Computer

Der Platzbedarf einer WSUS-Installation steigt im Lauf der Zeit immer weiter an. So ist es nach 1-2 Jahren normal, dass der WSUS-Ordner mehrere 100 GB an Daten enthält. Dies kann natürlich irgendwann zum Problem werden.

Eine wichtige Aufgabe bei jedem WSUS ist es regelmäßig (alle paar Wochen) den „Assistenten für die Serverbereinigung“ in den WSUS-Optionen laufen zu lassen. Damit wird die WSUS-Datenbank verkleinert und nicht mehr benötigte heruntergeladene Dateien werden gelöscht. Wenn man das versäumt wird die Laufzeit des Assistenten so hoch, dass er mit einem TimeOut-Fehler abbricht. Hier hilft nur die Schritte des Assistenten einzeln zu starten und das sooft zu wiederholen, bis der Assistent fertig wird. Wenn es gar nicht geht, kann man immer noch versuchen im „Internetinfomationsdienste (IIS)-Manager“ in den erweiterten Eigenschaften des AppPool „WsusPool“ den Wert für „Private Memory Limit“ deutlich zu erhöhen.

Es gibt eine ganze Menge Websites auf denen beschrieben wird wie man den WSUS per SQL oder per PowerShell pflegt (diese und diese habe ich gerade eben entdeckt). Dabei muß man aber immer darauf achten ob man die WSUS-Datenbank mit einem SQL-Server (Voll oder Express) betreibt oder ob man die „interne Windows-Datenbank“ verwendet. Das macht beim direkten SQL-Zugriff einen großen Unterschied! Zusätzlich passen diese Lösungen oft nur für eine bestimmte WSUS-Version.

Die ganz radikale Lösung ist natürlich komplett von vorne anzufangen, die WSUS-Datenbank neu aufzubauen und die Updates neu herunterzuladen. Dabei darf man auf keinen Fall einfach den WSUS-Ordner und die vorhandene Datenbank löschen wie oft vorgeschlagen wird! Das kann ganz üble Folgen haben wenn man die interne Windows-Datenbank verwendet (z.B. auf einem Domain Controller). Es gibt im TechNet einen offiziellen Blogeintrag in dem der Ablauf eines Neuaufbaus der WSUS-Datenbank beschrieben wird. Ich habe das so schon einmal ohne Probleme durchgeführt.

Beim WSUS ist es wichtig zwischen den in der Benutzeroberfläche angebotenen Updates und den genehmigten, tatsächlich heruntergeladenen Updates zu unterscheiden. Erstere sind nur Datensätze in der WSUS-Datenbank die kaum Platz benötigen. Nur wenn ein Update in WSUS genehmigt (und damit heruntergeladen) wurde, benötigt es spürbar Platz.

Man sollte eigentlich davon ausgehen, dass der „Assistent für die Serverbereinigung“ ersetzte und damit nicht mehr benötigte Updates entfernt um Platz zu sparen. Macht er aber nur sehr eingeschränkt, da er von dem superexotischen Fall ausgeht dass ein Client aus irgendwelchen Gründen die neue Version eines Updates nicht verwenden kann und deshalb auf die alte, eigentlich ersetzte Version zugreifen muß. Da dies in der Realität nicht vorkommt, kann man (fast) gefahrlos im WSUS alle ersetzten Updates ablehen und dann den „Assistenten für die Serverbereinigung“ laufen lassen. Dieser löscht u.a. alle abgelehnten Updates, was zu einem massiv reduzierten Platzbedarf führt!

Um die ersetzten Updates ablehnen zu können muß man wie z.B. in diesem Blogeintrag erklärt im WSUS zuerst mit „Any Except Declined“ die Updates anzeigen lassen, dann die Spalte „Superseeded“ einblenden und danach sortieren und dann die gewählten Updates ablehnen. Vorsicht! Es gibt drei verschiedene Symbole in der Superseeded-Spalte und nur zwei davon kennzeichnen ersetzte Updates!

BitLocker-Wiederherstellungsschlüssel aus ActiveDirectory auslesen

Veröffentlicht Veröffentlicht in Computer

Seit Windows 8 ist die Laufwerksverschlüsselung BitLocker auch in den üblicherweise verwendeten Pro bzw. Professional Versionen von Windows enthalten. Aus Sicherheitsgründen sollte sie auf jeden Laptop aktiviert werden!

Um BitLocker vernünftig verwenden zu können ist ein Laptop mit integrietem TPM-Chip erforderlich. Dies ist bei Business-Laptops immer der Fall (evtl. muß TPM einmalig im BIOS aktiviert werden), bei Laptops für Home User fehlt der TPM-Chip normalerweise. In diesem Fall kann zwar per Gruppenrichtline ein Modus aktiviert werden in dem BitLocker auch ohne TPM-Chip verwendet werden kann, aber dann muß direkt nach jedem Einschalten/Neustart ein zusätzliches BitLocker-Kennwort eingegeben werden. Dies ist auf Dauer sehr nervig und daher nicht wirklich praktikabel.

Die Aktivierung von BitLocker ist sehr einfach: Rechtsklick auf das zu verschlüsselnde Laufwerk im Windows Explorer, „BitLocker aktivieren“ wählen und durch den Assistenten klicken. An einer Stelle wird man dabei aufgefordert den Wiederherstellungsschlüssel entweder auszudrucken oder als Textdatei auf einem anderen Laufwerk zu sichern. Nach einem Neustart startet die Verschlüsselung, die je nach Festplattengröße schon einige Zeit erfordern kann. Im Normalbetrieb hat man anschließend keine spürbare Verlangsamung durch BitLocker. Moderne SSDs verschlüsseln außerdem durch Hardwareunterstützung in Echtzeit!

Wenn man jetzt z.B. bei einem Defekt des Laptops von extern auf die verschlüsselte Festplatte zugreifen muß, benötigt man zwingend den BitLocker-Wiederherstellungsschlüssel. Diesen hat man zwar bei der Verschlüsselung gedruckt bzw. gesichert, aber im Zweifelsfall ist er nicht da wenn man ihn braucht! Da wäre es schon sehr praktisch wenn man den BitLocker-Wiederherstellungsschlüssel einfach aus dem AD auslesen könnte. Dies ist auch sehr einfach möglich, allerdings muß dies vorab in mehreren Schritten manuell eingeschaltet werden:

Angezeigt wird der BitLocker-Wiederherstellungsschlüssel in einem zusätzlichen Reiter in den Eigenschaften des Computers in „Active Directory-Benutzer und -Computer“. Damit dieser Reiter angezeigt wird, muß einmalig mit dem Server-Manager das Feature „Verwaltungsdienstprogramme für die BitLocker-Laufwerksverschlüsselung“ inkl. der beiden Unterpunkte hinzugefügt werden. Zusätzlich wird dadurch auch der Befehl „Kennwort für BitLocker-Wiederherstellung suchen …“ im Kontextmenü des Domänennamens in „Active Directory-Benutzer und -Computer“ hinzugefügt.

Damit in diesem Reiter auch etwas angezeigt werden kann, muß der BitLocker-Wiederherstellungsschlüssel vorher im AD gesichert worden sein. Das wird er nur wenn man die Gruppenrichtlinie „Computerkonfiguration -> Richtlinien -> Administrative Vorlagen -> Windows-Komponenten -> BitLocker-Laufwerksverschlüsselung -> Betriebssystemlaufwerke -> Festlegen, wie BitLocker-geschützte Betriebssystemlaufwerke wiederhergestellt werden können“ aktiviert und darin die beiden Punkte „BitLocker-Wiederherstellungsinformationen für Betriebssystemlaufwerke in AD DS speichern“ und (sinnvollerweise) „BitLocker erst aktiveren, nachdem Wiederherstellungsinformationen für Betriebssystemlaufwerke in AD DS gespeichert wurden“ markiert.

Wenn man jetzt an einem Laptop BitLocker aktiviert, wird der BitLocker-Wiederherstellungsschlüssel automatisch im AD gesichert und kann über den oben beschriebenen Reiter einfach wieder ausgelesen werden.

Stellt sich natürlich die Frage wie man bereits existierende BitLocker-Wiederherstellungsschlüssel nachträglich ins AD bekommt: Dies ist über PowerShell möglich, allerdings muß man dazu an dem entprechenden Laptop sitzen. Wie auf dieser Seite beschrieben, kann man sich mit dem Befehl

manage-bde -protectors -get c:

den verwendeten BitLocker-Wiederherstellungsschlüssel inkl. dazugehörigem BitLocker-Bezeichner (wird unter der Überschrift „Numerical Password“ als „ID“ in geschweiften Klammern ausgegeben) anzeigen lassen. Mit

manage-bde -protectors -adbackup c: -id '{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}'

und der mit dem ersten Befehl ausgelesenen ID kann der BitLocker-Wiederherstellungsschlüssel ins AD geschrieben werden und ist dann auch sofort im oben beschriebenen Reiter sichtbar.

Windows-Helpfiles (.chm) zeigen keinen Inhalt an

Veröffentlicht Veröffentlicht in Computer

Dieses Problem hat mich mal wieder viel länger beschäftigt als gedacht: Bei einem unter RemoteDesktopServices („Terminalserver“) genutzen Programm wird in der Hilfe nur der Index in der linken Spalte des Hilfefensters angezeigt, die eigentliche Hilfe im rechten Teil bleibt leer.

Das Programm ist nicht auf dem Terminalserver selbst, sondern in einer Share im DFS installiert. Es liegt nur eine Verknüpfung zur exe auf dem Desktop des Terminalservers. Das Programm selbst funktioniert wunderbar und zeigt auch obwohl es nicht lokal installiert ist bei Start keine Warnung („Diese Datei befindet sich an einem Speicherort …„) an, nachdem ich den Pfad zu der DFS-Share zu Systemsteuerung -> Internetoptionen -> Sicherheit -> Lokales Intranet -> Sites -> Erweitert hinzugefügt habe.

Nur der Hilfeinhalt wird nicht angezeigt. Weder über das Hilfemenü aus dem Programm heraus noch wenn ich die cfm-Datei direkt im Explorer öffne. Bei der Recherche bin ich relativ schnell zu dem Artikel KB892675 gekommen der das Problem beschreibt. Da ich aber die Share bereits zur „Lokales Intranet“ Zone hinzugefügt hatte und der im Artikel beschriebene Key „MaxAllowedZone“ mit dem Wert „1“ (also „Lokales Intranet“) per Default vorhanden war, hat mich dies nicht weitergeführt.

Den ersten Hinweis zur Lösung hat mir ein Artikel auf WinFAQ gebracht: Es gibt im Zusammenhang mit den Zugriffsbeschränkungen auf cfm-Dateien zwei Registry-Keys

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\HHRestrictions
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions

wobei nur der erste Key per Default vorhanden ist. Sobald ich den zweiten Key manuell (inkl. „MaxAllowedZone“) hinzugefügt hatte, wurde beim Öffnen der chm-Datei aus dem Explorer endlich der Hilfeinhalt angezeigt. Nur beim Aufruf der Hilfe über das Hilfemenü im Programm blieb der Hilfeinhalt immer noch leer.

Hier hat mich ein TechNet-Forumseintrag auf die richtige Idee gebracht: Das Betriebssystem auf dem Terminalserver ist 64 Bit und das Programm aus dem ich die Hilfe aufrufen möchte 32 Bit. Daher muß der „MaxAllowedZone“ Key zusätzlich im Wow6432Node-Ast der Registry hinzugefügt werden. Nachdem ich das erledigt hatte wurde der Hilfeinhalt endlich auch beim Aufruf über das Hilfemenü angezeigt.

Letztlich mußte ich diese beiden REG_DWORD Keys zur Registry hinzufügen (die beiden HHRestrictions Keys sind per Default bereits vorhanden):

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000001

Windows Lizenztypen: OEM, Retail, Volume, …

Veröffentlicht Veröffentlicht in Computer

Vor kurzem hat ein Kunde für den Betrieb von geplanten virtuellen Maschinen (VMs) eine Handvoll Windows-Keys (Windows 7 und Windows 10) bei einer mir unbekannter Quelle gekauft. Ich habe die VMs vorbereitet und wollte diese mit den gekaufen Keys aktivieren. Das hat aber nur mit den Windows 10 Keys funktioniert, die Windows 7 Keys wurden als ungültig zurückgewiesen.

Auf der Suche nach einer Begründung bin ich auf den Befehl „slmgr“ gestoßen: Nach Eingabe von „slmgr -dli“ in eine Eingabeaufforderung erscheint nach einer unerwartet langen, mehrsekündigen Wartezeit ein kleiner Dialog mit Lizenzinformationen über

  • den Windows-Typ (Home, Pro, Enterprise, …),
  • den Lizenz-Typ (Typ des verwendeten Installationsmediums: OEM, Volume, Retail, ….),
  • die letzten 5 Zeichen des Productkeys,
  • den Lizenz-Status (Lizensiert, Initial Grace Period, …).

Mit „slmgr -dlv“ bekommt man einen größeren Dialog mit ausführlicheren Informationen, die man aber üblicherweise nicht benötigt.

Auf diesem Weg habe ich herausgefunden, dass die von mir installierten Windows 10 VMs vom Lizenz-Typ „VOLUME_MAK channel“, die Windows 7 VMs aber vom Lizenz-Typ „RETAIL channel“ waren. Wahrscheinlich waren die gekauften Windows-Keys alles Volumenlizenzen, mit denen sich keine Windows-Installation aktivieren läßt die mit einem Retail-Installationsmedium erzeugt wurde.

Hinzufügen eines Benutzers zu einem MS SQL-Server bei unbekanntem SQL-Administrator

Veröffentlicht Veröffentlicht in Computer

Seit dem Update 3a für Veeam Backup & Replication 9.5 muß der für das „Guest Processing“ verwendete Benutzer die sysadmin Rolle auf einem zu sichernden SQL-Server besitzen. Da dies bis jetzt häufig nicht der Fall war, hat Veeam nach dem Update eine Warnung für jede VM mit einem SQL-Server ausgegeben. Nach dem Hinzufügen des entsprechenden Benutzers (inkl. sysadmin Rolle) mit dem „SQL Server Management Studio“ treten die Warnungen nicht mehr auf.

Wenn allerdings keine Zugangsdaten eines SQL sysadmin bekannt sind, ist das natürlich nicht möglich. In einem Microsoft Artikel habe ich eine Anleitung gefunden, wie man trotzdem einen neuen Benutzer (auch mit sysadmin Rolle) anlegen kann. Man muß dazu im „SQL Server-Konfigurations-Manager“ zu der entsprechenen SQL-Server Instanz den Startparameter „-m“ hinzufügen und den Dienst neu starten. Durch diesen Parameter startet die Instanz im Single-User-Mode. In diesem Zustand konnte ich mich mit meinem Windows-Administratorkonto ganz normal am „SQL Server Management Studio“ anmelden und den neuen Benutzer hinzufügen. Der in dem Microsoft Artikel beschriebene Weg den Benutzer über eine SQL Query hinzuzufügen war nicht nötig. Anschließend den Startparameter „-m“ wieder entfernen und den Dienst neu starten, damit die SQL Instanz wieder normal läuft.

Danach konnte ich mich mit dem hinzugefügten Benutzer normal am „SQL Server Management Studio“ anmelden und auch Veeam bringt keine Warnungen mehr.