Hallo zusammen,
Küzrlich habe ich einen Artikel veröffentlicht, bei dem ich übers GraphAPI Mails versendet habe https://blog.icewolf.ch/archive/2021/07/07/graph-api-send-mail-with-powershell.aspx Dabei habe ich komische Fehlermeldungen erhalten. Mit der PowerShell gabs einfach einen HTTP 401 Unauthorized Status.
Erst im Graph Explorer sieht man etwas mehr
{
"error": {
"code": "ErrorAccessDenied",
"message": "Access to OData is disabled.",
"innerError": {
"date": "2021-07-16T16:06:01",
"request-id": "30d5d686-af1a-4da2-b022-f554b985e8bf",
"client-request-id": "87e12b56-d6fa-aa31-2e89-fd507125738a"
}
}
}
Die Permissions sind schon gegeben, daran kann es also nicht liegen.
Hallo zusammen,
Da das Azure AD PowerShell Modul wohl längerfristig nicht weiterentwickelt wird, habe ich mir mal die neue Alternative dazu angeschaut.
Microsoft Lays Out Future for Azure AD PowerShell Module
https://office365itpros.com/2021/06/03/microsoft-lays-out-future-azure-ad-powershell-module/ Get started with the Microsoft Graph PowerShell SDK
https://docs.microsoft.com/en-us/graph/powershell/get-started Get-Module Microsoft.Graph -ListAvailable
Find-Module Microsoft.Graph Install-Module Microsoft.Graph Get-Module Microsoft.Graph -ListAvailable Wie viel da zur Verfügung steht, sieht man anhand von folgendem command
Get-Command -Module Microsoft.Graph.* | Measure
Es gibt fast für alles ein PowerShell Modul
Hallo zusammen,
Mit den Informationen kann man nun mit dem MSAL.PS Modul ein Token von Azure AD
Import-Module MSAL.PS
$TenantId = "icewolfch.onmicrosoft.com"
$AppID = "c1a5903b-cd73-48fe-ac1f-e71bde968412" #DelegatedMail
$Scope = "https://graph.microsoft.com/.default" $Token = Get-MsalToken -ClientId $AppID -TenantId $tenantID -Scope $Scope -Interactive
Aus der Token Variable hole ich mir den AccessToken, lasse mir den AccessToken anzeigen und kopiere ihn mit dem "clip" Befehl in die Zwischenablage
$AccessToken = $Token.AccessToken
$AccessToken
$AccessToken | clip
Hallo zusammen,
Vor einiger Zeit habe ich gebloggt, wie man ein Zertifikat von einem Server mit Openssl prüfen kann. Nun habe ich etwas ähnliches mit PowerShell realisiert.
Dafür habe ich mir grosse Teile des Codes von Glen Scales geliehen https://github.com/gscales/Powershell-Scripts/blob/master/TLS-SMTPMod.ps1 ###############################################################################
# Connect to SMTP Server, check for STARTTLS and then get the Certificate
# 29.06.2021 V1.0 Andres Bohren - Initial Version
###############################################################################
<# .SYNOPSIS
.DESCRIPTION
Connect to SMTP Server, check for STARTTLS and then get the Certificate
Hallo zusammen,
Kürzlich habe ich auf einem Windows Server 2012 R2 das Windows Management Framework 5.1 installiert https://blog.icewolf.ch/archive/2021/01/21/windows-management-framework-5-1-for-windows-server-2012r2.aspx Nicht zu vergessen sind die TLS 1.2 Einträge https://blog.icewolf.ch/archive/2020/12/03/admins-setzt-endlich-die-tls-1-2-eintrage-fur-dotnetpowershell.aspx Allerdings stimmt auf diesem Server etwas mit der PowerShell Gallery nicht. Wie man sieht ist kein Repository hinterlegt.
Get-PackageProvider -ListAvailavle Get-PSRepository Es braucht also ein PowerShell Repository. Anscheinend geht das ab PowerShell 5.1 so
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Register-PSRepository -Default Nun wird das Repository angezeigt und ich mache die PSGallery gleich noch zu trusted Get-PSRepository Set-PSRepository -Name PSGallery -InstallationPolicy Trusted Schaut man sich das Modul PowerShellGet an, so ist das in der Version 1.
Hallo zusammen,
Ich hatte kürzlich auf einem Server bei der Anmeldung bei AzureAD einen weissen Bildschirm (blank screen).
Zuerst dachte ich, es hätte einen Zusammenhang mit der Deinstallation vom Internet Explorer https://blog.icewolf.ch/archive/2021/04/02/how-to-uninstall-internet-explorer-via-powershell.aspx Aber nachdem ich die Internet Security Settings auf den Standard zurückgesetzt hatte ging es dann.
Falls nicht vielleicht auch noch die Internet Explorer "Enhanced Security Configuration (IE ESC)" prüfen.
Dann klappt es auch wieder beim Anmelden
Grüsse Andres Bohren
Hallo zusammen,
Es gibt schon wieder eine neue Version vom MicrosoftTeams PowerShell Module. Anzeigen des aktuell installierten PowerShell Moduls
Get-Module MicrosoftTeams -ListAvailable
Aktuelles Modul in der PSGallery suchen
Find-Module MicrosoftTeams
Modul aus der PowerShell Gallery aktualisieren
Update-Module MicrosoftTeams
Wie man sieht, wird mit dem Update-Module Befehl einfach die neue Version installiert, ohne die alte Version zu entfernen. Aus meiner Sicht ist ein Uninstall-Module / Install-Module besser.
Get-Module MicrosoftTeams -ListAvailable
Lade ich das Modul, dann wird jedoch die neuste Version geladen.
Hallo zusammen,
Es braucht einiges an Know-How um herauszufinden, weshalb ein Mail im Junk-E-Mail Folder landet oder gar in die Quarantäne verschoben wurde.
Als erstes macht man ein MessageTrace
$MT = Get-MessageTrace -StartDate (get-date).AddDays(-10) -EndDate (get-date) -SenderAddress andres.bohren@gmail.com
$MT | Format-Table Received, SenderAddress, RecipientAddress, Subject, Status, MessageTraceID
$MTD = Get-MessageTraceDetail -MessageTraceId 5b018c12-df4a-4300-df60-08d90bca587d -RecipientAddress a.bohren@icewolf.ch -StartDate (get-date).AddDays(-10) -EndDate (get-date)
$MTD
Schauen wir uns das "Spam" Event ein bisschen genauer an. Im Property "
Hallo zusammen,
Schon eine paar Wochen her, dass PowerShell 7.1.3 veröffentlicht wurde. Bin aber erst jetzt dazu gekommen, das zu bloggen.
Hier habe ich zusätzlich zum default "Enable Powershell remoting" aktiviert
Grüsse Andres Bohren
Hallo zusammen,
Vor etwa einem Monat habe ich mir ein neues Email Zertifikat gekauft um meine Emails Signiert versenden zu können. Das Zertifikat habe ich als PFX exportiert und mit einem Passwort versehen.
Ich habe mich gefragt, ob man S/MIME Signierte Emails nicht auch über PowerShell versenden könnte. Bin dann auf eine Implementierung von Rob Kalmer gestossen https://www.powershellgallery.com/packages/smtp.smime.lib/1.0.4/Content/smtp.smime.lib.ps1 Ich habe das ganze ein bisschen gekürzt und eigentlich nur einen Wrapper darum herum geschrieben, welcher es ermöglicht die Mails über ein Script mit allen Parametern zu versenden.