Viva Insights Configuration Settings for User and Admin

Hallo zusammen,

Längst dürfte den meisten Benutzern das neue "Viva Insights" Outlook Add-In aufgefallen sein.


Klickt man auf das Outlook Add-in, dann öffnet sich auf der rechten Seite die Viva Insights Übersicht. Klickt man gar auf das Symbol mit den drei Balken, so öffnet sich das "Viva Insight Dashboard" im Browser


Das Dashboard kann auch direkt über https://insights.viva.office.com aufgerufen werden. Auf der rechten Seite gibt es das Zahnrad Symbol für die Einstellungen.


Der Benutzer kann hier verschiedene Einstellungen vornehmen


Mit dem ExchangeOnlineManagement PowerShell Modul 2.0.5 sind auch zwei VivaInsights Befehle mitgekommen. Allerdings halten sich die Möglichkeiten zur Einstellungen durch den Exchange Administrator in Grenzen

Get-Command -Module ExchangeOnlineManagement *viva*
Get-VivaInsightsSettings -Identity a.bohren@icewolf.ch | fl


Das Headspacefeature scheint im Moment nur dann zu funktionieren, wenn die Teams Sprache auf Englsch eingestellt ist:
Note:
The Headspace experience is available to you if your language in Teams set to English. Additional languages will be supported soon.


Set-VivaInsightsSettings -Identity a.bohren@icewolf.ch -Enabled $false -Feature HeadSpace


Nach wie vor stehen die MyAnalytics Commands zur Verfügung

Get-Command -Module ExchangeOnlineManagement *ana*
Get-MyAnalyticsFeatureConfig -Identity a.bohren@icewolf.ch | fl




Der Global Admin hat noch ein paar weitere Einstellungen im M365 Admin Center
Settings > Org Settings > Briefing email from Microsoft Viva


Settings > Org Settings > Microsoft Viva Insights (Formerly MyAnalytics)


Was ich persönlich ein bisschen schade finde, ist dass das in der obensstehenden Konfigurationseinstellungen aktivierte Outlook Add-In nicht unter Settings > Integrated Apps angezeigt wird.



Liebe Grüsse
Andres Bohren


Azure AD Connect - Custom Sync Rule for preferredLanguage

Hallo zusammen,

Ich habe kürzlich von einem Kunden die Anforderung erhalten, Sync Rules für AAD connect zu erstellen, welche das Setting vom Active Directory in einen vom Azure Active Directory unterstützten wert übersetzt.

How to set language and region settings for Office 365

https://docs.microsoft.com/en-us/office365/troubleshoot/access-management/set-language-and-region

 

Automatisieren der Office 365 Language Settings

M365 Language Setting (preferredLanguage)

Hallo zusammen,

Angeregt durch meinen vorhergehenden Artikel https://blog.icewolf.ch/archive/2021/12/03/azure-ad-connect-custom-sync-rule-for-preferredlanguage.aspx zum Attribut preferredLanguage in Azure Active Directory habe ich nochmals einen Test mit einem frischen AD Account gemacht und dort das preferredLanguage Attribut auf "it-IT" gesetzt.



Get-AzureADUser -SearchString t.turner@icewolf.ch | fl *lang*, *loc*


Nach dem einloggen auf https://office.com werde ich in Italienisch begrüsst


Die Sprache im Portal ist auf Italienisch konfiguriert.


Schauen wir mal die Apps durch











Bei den meisten Apps zieht die eingestellte Sprache aus dem Portal. Bei einigen nicht. Meist wird hier die Einstellung vom Browser übernommen.


Testen kann man das Beispielsweise auf folgender Seite:https://manytools.org/http-html-text/browser-language/

Die Einstellungen von oben ergeben folgende Einstellung, welche über den Header "Accept-Language" der Website mitgeteilt werden.

In meinen Tests habe ich mit folgender Einstellung getestet.


Es gibt noch eine ganze Hand voll weiterer Apps


Applikation Einstellung
Office Portal preferredLanguage
Outlook Web Browsersprache (oder Exchange Setting)
OneDrive preferredLanguage
Word Web preferredLanguage
Excel Web preferredLanguage
PowerPoint Web preferredLanguage
Sharepoint Browsersprache
Teams Web Browsersprache
Yammer preferredLanguage
Kalender Web Browsersprache (oder Exchange Setting)
Kontakte Web Browsersprache (oder Exchange Setting)
Microsoft Viva Insights Browsersprache
Delve Browsersprache
Planner Browsersprache
Microsoft Lists
preferredLanguage
Forms
preferredLanguage
Sway
preferredLanguage
Whiteboard
Browsersprache
Stream
Browsersprache
Power Automate
Browsersprache
Power Apps
Browsersprache

Wie schon erwähnt, gibt es eine separate Einstellung in Exchange welche der Benutzer im OWA anpassen kann


Oder als Exchange Admin via PowerShell gesetzt werden kann.

Set-MailboxRegionalConfiguration -Identity t.turner@icewolf.ch -Language it-CH -DateFormat "dd.MM.yyyy" -TimeFormat "HH:mm" -TimeZone "W. Europe Standard Time"



In den meisten Fällen dürfte das jedoch nicht gross auffallen. Jemand der Italienisch spricht, wird in seinem Browser die Sprache auf Italienisch eingestellt haben.

Liebe Grüsse
Andres Bohren


Skype for Business Hybrid and Move-CsUser

Hallo zusammen,

Ich durfte kürzlich einen Kunden bei der Migration von Skype for Business nach Microsoft Teams untertützen.

Plan hybrid connectivity between Skype for Business Server and Teams 

https://docs.microsoft.com/en-us/skypeforbusiness/hybrid/plan-hybrid-connectivity#implications-of-the-retirement-of-skype-for-business-online 


Da es noch Abhängikeiten mit einer 3rd Party Lösung (Luware LUCS  auf Seiten Skype gab und somit nicht alle Benutzer nach Teams migriert werden konnten, musste erst die Skype for Business Infratruktur auf Skype for Business 2015 aktualisiert werden. Damit würde dann auch Hybrid Voice unterstützt und die Luware LUCS Benutzer könnten dann migriert werden, wenn auch die Contact Center Lösung in Teams (beispielsweise Luware Nimbus) zur Verfügung steht. Bis dahin sollte die Kommunikation zwischen Teamsbenutzern und Skype for Business Benutzern gewährleistet sein.

PowerToys Videoconferencing-Mute

Hallo zusammen,

Es gibt ein Update für die PowerToys ist erschienen.


Dabei habe ich einen Blick auf die Videokonferenz-Stummschaltung geworfen


Schaltet man in Teams die Videokamer auf "PowerToys VideoConference Mute" um


So kann man mit der Tastenkombination für "Kamera stumm schalten" die Kamera "stummschalten" und es erscheint folgendes Menü


Die Kamera schaltet auf Schwarz um


Liebe Grüsse
Andres Bohren


M365ServiceHealth with PowerShell Module

Hallo zusammen,

Mein Twitter Freund und Namensvetter @AndresGorzelany hat ein PowerShell Modul geschrieben um die M365 Service Health in der PowerShell Konsole darzustellen.


Er hat mich eingeladen daran mitzuarbeiten und ich habe ein paar Stunden investiert um einige von mir gewünschte Verbesserungen einzubauen.

Voraussetzungen:
  • Azure AD App mit ServiceHealth.Read.All Application Permissions
  • PowerShell 5.1
  • MSAL.PS Module
Die Azure AD App muss folgendermassen konfiguriert sein.

Schreibt euch die Application ID auf


MSAL muss aktiviert sein


Ein Client Certificate (eins reicht)


Oder ein ClientSecret muss hinterlegt sein


Ihr benötigt bloss die Rechte "ServiceHealth.Read.All" und diese müssen vom GlobalAdmin "Granted" sein oder werden.


Mit den folgenden Befehlen installiert man sich das M365ServiceHealth PowerShell Modul aus der Gallery (Achtung: PowerShell muss "Als Administrator" gestartet sein.

Find-Module M365ServiceHealth
Install-Module M365ServiceHealth
Get-Command -Module M365ServiceHealth


#ClientSecret
Connect-M365ServiceHealth -TenantId <tenant.onmicrosoft.com> -ApplicationId <ApplicationID> -ClientSecret <ClientSecret>

#Connect with Certificate
Connect-M365ServiceHealth -TenantId <tenant.onmicrosoft.com> -ApplicationId <ApplicationID> -CertificateThumbprint <CertificateThumbprint>

Wer mag, kann sich die Secrets ja in einem SecretManagement Modul ablegen https://blog.icewolf.ch/archive/2021/09/17/secret-management-modules-fur-powershell.aspx

Mit dem folgenden Befehl wird der aktuelle Servicestatus von M365 abgerufen und in der Console dargestellt. Mit dem Refresh Parameter kann man die Sekunden zwischen den aktualisierungen einstellen.

Get-M365ServiceHealth -Refresh 60


Will man mehr Details über die Issues eines Services erfahren gibt man folgendes ein

Get-M365ServiceHealthIssues -ServiceName <ServiceName>
Get-M365ServiceHealthIssues -ServiceName "Exchange Online"


Viel Spass beim Ausprobieren des Moduls.

Liebe Grüsse
Andres Bohren


DMARC Advisor

Hallo zusammen,

Ich teste ja gerne hin und wieder DMARC Auswertungstools. Aktuell habe ich https://dmarcadvisor.com/ getestet. Man kann dort eine kostenlose Trialversion anfordern.


Dazu muss man einfach einen Account eröffnen




Anschliessend erhält man eine Email, bei dem man auf den Aktivierungslink klicken muss.

Danach kann man sich mit dem Account einloggen


Es wird einem gleich ein neuer DMARC Record vorgeschlagen. Im gegensatz zum vorgeschlagenen Record habe ich auch gleich noch das Value für sp (subdomain) erstellt. Es macht sicher Sinn, da erst mal mit "None" laufen zu lassen um eine übersicht zu erhalten. Und dann langsam auf "Quarantine" und später dann auf "Reject" umzustellen.

Ich habe meinen DMARC Record im Azure DNS umgestellt.

"v=DMARC1; p=none; sp=none; rua=mailto:wclmh3mw@ag.eu.dmarcadvisor.com;"


Danach sieht es im Portal so aus. Am besten man sendet gleich mal ein Mail an eine @gmail.com adresse. Von dort werden nämlich DMARC Reports wieder zurück an den RUA gesendet. Sieht man aber meist erst am nächsten Tag.


Ich habe meine icewolf.ch Domäne schon vor ein paar Tagen so aufgesetzt und den DMARC Record auf für die Hauptdomäne auf Reject gesetzt.


Wirklich cool finde ich den Detailviewer. Da sieht man, von welcher IP die Mails versendet wurden und ob SPF, DKIM und DMARC richtig waren.


Ausserdem kann man sich auch Alerts setzen. Damit habe ich aber noch nicht so viel herumgespielt.


Alles in allem ein solides DMARC Analyzer tool, viel besser als der kürzlich getestete DMARC Monitor von Valimail.

Liebe Grüsse
Andres


Hinzufügen und Entfernen von M365 Lizenzen mit Microsoft Graph PowerShell

Hallo zusammen,

Kürzlich habe ich gezeigt, wie man mit dem AzureAD PowerShell Module Lizenzen in M365 hinzufügt und entfernt


Connect-AzureAD
Get-AzureADSubscribedSku
Get-AzureADSubscribedSku | Select -Property Sku*,ConsumedUnits -ExpandProperty PrepaidUnits


Die SKU Part Numer ist meist etwas kryptisch. Man schaue deshalb hier nach
https://docs.microsoft.com/en-us/azure/active-directory/enterprise-users/licensing-service-plan-reference

Mit dem folgenden Befehl sieht man einfach, die SkuID, den SkuNamen, wieviele Lizenzen man zu gewiesen hat (ConsumedUnits) und wie viele vorhanden sind (Enabled), sowie Suspended und Warning.

Get-AzureADSubscribedSku | Select -Property Sku*,ConsumedUnits -ExpandProperty PrepaidUnits | ft


Nun versuche ich das ganze über das Microsoft Graph PowerShell Module.

Connect-MgGraph -Scopes User.ReadWrite.All, Directory.ReadWrite.All


Da muss der Tenant Admin die Berechtigungen erlauben oder es gibt einen Azure AD Admin Consent Workflow.


Das Problem ist hier die Art wie die Prepaid Units als Property Array aufgeführt sind

Get-MgSubscribedSku
(Get-MgSubscribedSku)[0] | fl
(Get-MgSubscribedSku)[0].PrepaidUnits



Um die selbe Darstellung zu erhalten wie bei AzureAD ist ein kleines Script und PSCustomProperty notwendig.

###############################################################################
# SKU's an License with MgGraph and PSCustomObject
###############################################################################
#Array with all needed Properties using PSCustomObject
$ArraySKUS = @()
$SKUS = Get-MgSubscribedSku
Foreach ($SKU in $SKUS)
{
    #$ArraySKU = @()
    $AppliesTo = $SKU.AppliesTo
    $CapabilityStatus = $SKU.CapabilityStatus
    $SkuId = $SKU.SkuId
    $SkuPartNumber = $SKU.SkuPartNumber
    $ConsumedUnits = $SKU.ConsumedUnits
    $Enabled = $SKU.PrepaidUnits.Enabled
    $Suspended = $SKU.PrepaidUnits.Suspended
    $Warning = $SKU.PrepaidUnits.Warning
    $SKUObject = [PSCustomObject]@{
        AppliesTo             = $AppliesTo
        CapabilityStatus     = $CapabilityStatus
        SkuId                = $SkuId
        SkuPartNumber        = $SkuPartNumber
        ConsumedUnits        = $ConsumedUnits
        Enabled                = $Enabled
        Suspended            = $Suspended
        Warning                = $Warning
    }
    $ArraySKUS += $SKUObject
}
$ArraySKUS | FT




Beim hunzufügen und entfernen wird mit den SkuID's gearbeitet. Ein bisschen doof finde ich, dass man auch beim entfernen ein leeres Array beim Parameter "Add-Licenses" mitgeben muss. Das selbe gilt natürlich beim hinzufügen, dort wird ein leeres Array beim Parameter "RemoveLicenses" erwartet.
Andererseits ermöglicht das das gleichzeitige hinzufügen und entfernen unterschiedlicher Lizenzen - was durchaus ein Vorteil sein kann.

#Lizenz vom Benutzer anzeigen
Get-MgUserLicenseDetail -UserId m.muster@icewolf.ch

#Lizenz entfernen
Set-MgUserLicense -UserId m.muster@icewolf.ch -AddLicenses @() -RemoveLicenses @('e43b5b99-8dfb-405f-9987-dc307f34bcbd') #PhoneSystem

Set-MgUserLicense -UserId m.muster@icewolf.ch -AddLicenses @{SkuId = 'e43b5b99-8dfb-405f-9987-dc307f34bcbd'} -RemoveLicenses @() #PhoneSystem


Liebe Grüsse
Andres Bohren


VMware VCenter 6.7 U3p

Hallo zusammen,

Es gibt Product Patches für doe VMware VCenter 6.7 Appliance

VMSA-2021-0027

Product Patches


Den Patch muss man gar nicht herunterladen, das kann man nämlich in der VCSA Admin Oberfläche machen. Dort nach Updates suchen und dann die "Pre-Update-Checks" ausführen.


Danach "Stage and Install" auswählen







Nach der Installation wird das VCenter neu gestartet und man muss sich neu einloggen


Die neue Versionsnummer ist da



Liebe Grüsse
Andres Bohren