Wenn Ihr Unternehmen Microsoft 365 verwendet, können Sie mit PowerShell eine einheitliche E-Mail-Signatur für alle Personen in Ihrer Organisation einrichten. In diesem Artikel zeige ich Ihnen ein Skript, das jedem Postfach eine einheitliche, personalisierte E-Mail-Signatur hinzufügt. Auf diese Weise erhält jeder Benutzer von Outlook im Web automatisch eine E-Mail-Signatur in seinen Postfacheinstellungen.
Gründe für die Vereinheitlichung von E-Mail-Signaturen
E-Mail-Signaturen sind knifflig. Sie können aus einer einzigen Zeile bestehen und nur Ihren Namen enthalten oder ein kompaktes Design mit den wichtigsten Kontaktinformationen haben. Sie können auch ein peinliches „Von meinem <Gerätenamen einfügen> gesendet“ oder eine Monstrosität mit mehreren Bannern, einem zweiseitigen Haftungsausschluss und einem kaputten Layout sein, um das Ganze abzurunden.
Tatsache ist, dass jeder einzelnen E-Mail eine E-Mail-Signatur hinzugefügt wird (und üblicherweise auch erwartet wird). Eine Signatur (oder eine Fußzeile) ist eine eigenständige Nachricht. Darin wird unter anderem angegeben, ob:
- Sie Wert auf Details legen,
- Sie Ihren Job ernst nehmen,
- dem Unternehmen sein Image wichtig ist,
- das Unternehmen erreicht werden möchte.
Jeder einzelne Mitarbeiter ist ein Markenbotschafter. Die Tendenz zur Verallgemeinerung liegt in der Natur des Menschen – wenn einem Mitarbeiter in einem Gespräch an Professionalität fehlt, denken die Gesprächspartner oft, dass es nicht nur an dieser Person liegt. Deshalb bekommt Ihre Marke mit jeder schlechten Signatur einen Schlag ins Gesicht.
Verstehen Sie mich nicht falsch. Ich glaube nicht, dass die Welt untergeht, sobald eine fehlerhafte Signatur versendet wird. Normalerweise ist es ein viel langsamerer und traurigerer Prozess, bei dem die Marke und das Unternehmen allmählich das Vertrauen verlieren. Sie können entweder E-Mail-Signaturen vereinheitlichen und eine starke Botschaft senden, die der Marke hilft, Ihre Angebote bewirbt und Sie unterstützt, oder mit jeder gesendeten Nachricht einen Schlag erleiden. Ich zeige lediglich eine der Methoden zur Vereinheitlichung von E-Mail-Signaturen.
So funktioniert es
Bevor Sie das Skript zum Einrichten von E-Mail-Signaturen mit PowerShell ausführen, ist es wichtig, die Funktionsweise dieser Methode zu verstehen.
Das Skript ruft Benutzerinformationen von Entra ID (Azure Active Directory oder AAD) ab und fügt einen HTML-Code einer Signatur (mit diesen Details) zu den Postfacheinstellungen hinzu. Derzeit kann nur Outlook im Web (OWA) davon profitieren. Das bedeutet, dass die mit dieser Methode eingerichtete Signatur nicht angezeigt wird, wenn ein Benutzer seine E-Mail aus Outlook für Mac, dem „klassischen“ Outlook für Windows oder einem beliebigen Client außer Outlook im Web oder dem neuen Outlook für Windows sendet.
Beachten Sie, dass wenn die Informationen in Ihrer Microsoft 365-Benutzerdatenbank nicht aktualisiert oder unvollständig sind, wird das Endergebnis weder ansprechend noch hilfreich sein.
Es gibt andere Methoden zur Vereinheitlichung von E-Mail-Signaturen in einem Unternehmen, die für alle E-Mail-Clients funktionieren. Sehen Sie sich das folgende Video an, um mehr zu erfahren:
Erforderliche Berechtigungen
Die Verwendung von PowerShell zum Einrichten von E-Mail-Signaturen für Outlook im Web ist in jeder Microsoft 365-Organisation möglich. Um jedoch das Skript auszuführen, das diese Signaturen einrichtet, müssen Sie ein Administrator sein und zumindest über grundlegende Kenntnisse der Funktionsweise von PowerShell verfügen.
Zum erfolgreichen Ausführen des PowerShell-Skripts benötigen Sie einige Berechtigungen:
- Ihr Konto muss PowerShell-fähig sein. Das bedeutet, dass ein globaler Administrator ein einfaches Cmdlet verwenden kann, um einem bestimmten Benutzer Zugriff zu gewähren (Set-User -Identity <bestimmter Benutzer> -RemotePowerShellEnabled $true).
- Ihnen müssen die Administratorrollen User Options und Mail Recipients zugewiesen sein.
Holen Sie sich eine HTML-E-Mail-Signaturvorlage
Bevor Sie das Skript ausführen, benötigen Sie den HTML-Code der E-Mail-Signaturvorlage, die Sie verwenden werden.
Am besten nutzen Sie hierfür den kostenlosen E-Mail-Signaturgenerator.
- Wählen Sie Microsoft 365 als Ihre E-Mail-Plattform.
- Wählen Sie eine Signaturvorlage. Mit dem Generator können Sie Bilder und Elemente ändern, die für jeden Benutzer gleich sind, wie z. B. Firmenname, Haftungsausschluss usw.
- Klicken Sie auf Replace user data with Active Directory placeholders und Apply your signature. Die erste Schaltfläche ersetzt persönliche Daten durch Platzhalter, die normalerweise in Nachrichtenflussregeln verwendet werden, um Benutzerdaten in Signaturen automatisch zu personalisieren. Platzhalter funktionieren auf diese Weise nicht, wenn Sie die Signatur für OWA mit PowerShell einrichten. Das Skript wird Platzhalter in Entra-ID (Azure Active Directory)-Daten umwandeln.
- Generieren Sie die HTML-Signatur, kopieren Sie sie und fügen Sie sie in eine TXT-Datei ein. Ich habe sie für den einfachen Zugriff unter C:\signature.txt erstellt. Sie können den HTML-Code frei ändern. Denken Sie jedoch daran, die %%AAD-Platzhalter%% am besten intakt zu lassen. Das Skript erwartet ein bestimmtes Format dieser Platzhalter, um relevante Benutzerinformationen einzugeben.
Einrichten einer HTML-E-Mail-Signatur für alle Nutzer (PowerShell)
In der Vergangenheit haben wir Get-AzureAdUser verwendet, um Benutzerdaten von Microsoft 365 abzurufen. Da das Azure AD-Modul jedoch veraltet ist, mussten wir uns auf Microsoft Graph PowerShell SDK umstellen.
Das für die Signatureinrichtung verantwortliche Cmdlet (Set-MailboxMessageConfiguration -Signature HTML
) hat aufgrund der Signatur-Cloud-Einstellungen (auch Roaming-Signaturen genannt) aufgehört zu funktionieren. Für einige Zeit gab es nur eine Möglichkeit, das Skript zum Laufen zu bringen: sich an den Microsoft-Support wenden und bitten, Roaming-Signaturen für Ihren Microsoft 365-Tenant zu deaktivieren. Glücklicherweise ermöglicht Microsoft Ihnen jetzt, Roaming-Signaturen mit PowerShell selbst zu deaktivieren:
Set-OrganizationConfig -PostponeRoamingSignaturesUntilLater $true
Erfahren Sie mehr über die Deaktivierung von Roaming-Signaturen für Ihre Organisation
Bevor Sie das Skript ausführen, müssen Sie über Connect-ExchangeOnline
eine Verbindung zu Exchange Online herstellen. Wenn Sie auf Probleme stoßen, erfahren Sie in diesem Artikel, wie Sie es zum Laufen bringen.
Sie können den Rest des Skripts kopieren und in Ihre PowerShell-Konsole einfügen:
$users = (Get-AzureADUser | select GivenName, Surname, Title, TelephoneNumber, Mobile, Mail, CompanyName, StreetAddress, City, PostalCode, State, Country) <# Ruft alle Benutzerdaten von Entra ID (Azure AD) ab und speichert ausgewählte Informationen in einem Array. Wenn Sie möchten, können Sie weniger oder mehr Daten abrufen oder den Umfang von Benutzern ändern. #>
$HTMLsig = Get-Content "C:\signature.txt" <# Speichert den HTML-Code einer Signatur aus dem Signaturgenerator in einer Variablen. Ändern Sie den Pfad zum Speicherort Ihrer Datei. #>
foreach($user in $users){
$HTMLSigX = ""; <# Temporäre Variable mit HTML-Code einer personalisierten Signatur. #>
$HTMLSigX = $HTMLsig.replace('%%FirstName%%', $user.GivenName).replace('%%LastName%%', $user.Surname).replace('%%Title%%', $user.Title).replace('%%PhoneNumber%%', $user.TelephoneNumber).replace('%%MobileNumber%%', $user.Mobile).replace('%%Email%%', $user.Mail).replace('%%Company%%', $user.CompanyName).replace('%%Street%%', $user.StreetAddress).replace('%%City%%', $user.City).replace('%%ZipCode%%', $user.PostalCode).replace('%%State%%', $user.State).replace('%%Country%%', $user.Country) <# Ersetzen von Platzhaltern durch persönliche Benutzerdaten. #>
Set-MailboxMessageConfiguration $user.Mail -SignatureHTML $HTMLSigX -AutoAddSignature $true -AutoAddSignatureOnReply $true <# Speichert die personalisierte E-Mail-Signatur in den Postfacheinstellungen. Sie sollte sofort in Outlook im Web verfügbar sein. Der Parameter -AutoAddSignature legt die Signatur als Standard für neue Nachrichten fest und -AutoAddSignatureOnReply macht dasselbe für Antworten. Durch das Ändern der Parameter $true in $false wird verhindert, dass die neuen Signaturen automatisch angewendet werden. #>
}
Nach der Ausführung des Skripts sollten alle Benutzer ihre personalisierte E-Mail-Signatur in ihren Einstellungen in Outlook im Web erhalten:
Einschränkungen von PowerShell-E-Mail-Signaturen
Obwohl das Cmdlet Set-MailboxMessageConfiguration nützlich ist, eignet es sich nicht perfekt für die Verwaltung von E-Mail-Signaturen – hier sind einige Gründe dafür:
- Erstens funktioniert das Ändern der Postfacheinstellungen nur in Outlook im Web (OWA) und dem neuen Outlook für Windows. Sie können VBScript verwenden, um die Einstellungen in dem älteren (aber immer noch beliebtesten) Outlook für Windows zu aktualisieren. Auf diese Weise müssen Sie jedoch zwei verschiedene Methoden verwenden, um jedes Signaturupdate durchzuführen. Darüber hinaus werden Sie immer noch nur mit einigen der möglichen E-Mail-Clients fertig.
- Sie können keine eingebetteten Bilder verwenden. Das bedeutet, dass Ihre Empfänger in den meisten Fällen bewusst auf eine spezielle Schaltfläche klicken müssen, um die Grafiken zu sehen, die Sie so sorgfältig für Ihre E-Mail-Signatur entworfen haben. Andernfalls werden Bilder blockiert.
- Es ist keine gute Idee, wenn Ihre Entra-ID (Azure AD)-Daten nicht auf dem neuesten Stand sind. Es gibt keine Möglichkeit, Benutzern die Aktualisierung ihrer AAD-Eigenschaften zu ermöglichen (es sei denn, Sie möchten ihnen Administratorzugriff gewähren, das glaube ich aber nicht).
- Es gibt keine Möglichkeit, die Signatur dynamisch zu ändern, wenn beispielsweise bestimmte persönliche Informationen fehlen. Dies endet normalerweise damit, dass einige Benutzer die Phrase „Mobil:“ in ihrer Signatur haben und nichts daneben steht.
- Bei jeder Änderung oder Aktualisierung müssen Sie HTML-Code bearbeiten. Es gibt keinen Editor, mit dem Sie am Design der Vorlage arbeiten können.
- Es gibt keine einfache Möglichkeit, E-Mail-Signaturkampagnen zu planen oder unterschiedliche Designs für verschiedene Empfänger zu verwenden.
Wenn Sie E-Mail-Signaturen für Ihre gesamte Microsoft 365-Organisation ohne diese Einschränkungen verwalten möchten, gibt es eine einfachere Alternative. Mit CodeTwo Email Signatures 365 können Sie Signaturen für alle Benutzer ohne Skripts verwalten. Signaturen werden zu E-Mails hinzugefügt, die von allen E-Mail-Clients und Geräten gesendet werden. Probieren Sie es kostenlos aus