Jump to content

PS: Cannot open mailbox


Direkt zur Lösung Gelöst von Scharping-FVB,

Empfohlene Beiträge

Liebes Forum,

 

ich bekomme diese Fehlermeldung beim Versuch die Berechtigungen auf einen Kalender zu ändern:

PS C:\Windows\system32>  Add-MailboxFolderPermission "matthias.xxx:\kalender" -User elisabeth.xxx-AccessRights LimitedDetails
Add-MailboxFolderPermission : The specified mailbox "matthias.xxx" doesn't exist.
At line:1 char:2
+  Add-MailboxFolderPermission "matthias.xxx:\kalender" -User elisabe ...
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-MailboxFolderPermission], ManagementObjectNotFoundException
    + FullyQualifiedErrorId : [Server=MAIL1,RequestId=6c9a4bf8-cc93-4e2c-b4c5-38a99885d86d,TimeStamp=21.12.2023 06:57:45] [FailureCategory=Cmdlet-ManagementObjectNotFoundException] E7230843,Microsoft.Ex 
   change.Management.StoreTasks.AddMailboxFolderPermission

 

"Früher" ging es. Ich bin mit meinem Admin-User in die Gruppe der "Protected Users" gewechselt, kann das damit zusammenhängen?

 

Viele Grüße

Davorin

bearbeitet von Scharping-FVB
Link zu diesem Kommentar

Moin,

 

schau mal, was Get-Mailbox ohne Parameter Dir liefert. Solltest Du nur die eigene Mailbox des Admin-Users (sofern er überhaupt eine Mailbox hat) zurück bekommen, dann ist mit der Deaktivierung von RC4 bzw. NTLM wohl auch die Gruppenzuordnung zu den Exchange-Rollengruppen gestört. So richtig mag sich mir das im Moment aber noch nicht erschließen...

Link zu diesem Kommentar

Get-Mailbox liefert Ergebnisse, in der Admin-ISE.

Ich nutze die ISE mit dem Exchange-AddIn, die Management Shell braucht so ewig zum starten und da kann ich die Skripte nicht so schön einfach anpassen.

In der Shell funktioniert es aber.

 

Get-MailboxPermission klappt in der ISE

Get-MailboxFolderPermission klappt nicht in der ISE

 

Fehlt da (auf einmal) ein Impersonate Recht für meinen Admin -User?

bearbeitet von Scharping-FVB
Ergänzung
Link zu diesem Kommentar
vor 11 Minuten schrieb Nobbyaushb:

Hast du die Mailadresse des/der User genommen?

Und das ist die Exchange Shell?

Alias oder Mailadresse ist egal

vor 3 Minuten schrieb Nobbyaushb:

Du kannst die Management Tools auch auf einem anderen Server installieren, ich denke es geht sogar ein Windows Client

Ich verstehe nicht, was das in diesem Fall hilft, ich möchte die ISE nutzen. Die öffne ich direkt auf einem der beiden Mailserver.

Link zu diesem Kommentar

Hi,

 

lade nicht das Add-In, baue eine Session zum Exchange auf:

$ExchSRV = Get-ADGroupMember -Identity "Exchange Servers" |
    Where-Object { $_.objectClass -eq "computer" } |
        Select-Object -First 1
$ExchSRV = Get-ADComputer -Identity $ExchSRV.distinguishedName `
    -Properties DNSHostName
$ExchConUri = -join("http://", `
        $ExchSRV.DNSHostName , `
        "/PowerShell" `
    )
$ExSession = New-PSSession -ConfigurationName Microsoft.Exchange `
    -ConnectionUri $ExchConUri
Import-PSSession -Session $ExSession -DisableNameChecking `
    -AllowClobber

# Hier geht es dann mit den Exchange CMDlets los

Remove-PSSession $ExSession

 

Gruß

Jan

bearbeitet von testperson
Link zu diesem Kommentar
  • Beste Lösung
Gerade eben schrieb Nobbyaushb:

Wegen der angemeckerten Ladezeit

Und auch die ISE muss als Administrator ausgeführt werden 

Bin jetzt einige Zeit offline 

Ah, ok, lädt woanders schneller :-)

 

Ja, die ISE führe ich immer als Admin aus.

Gerade eben schrieb testperson:

Hi,

 

lade nicht das Add-In, baue eine Session zum Exchange auf:

$ExchSRV = Get-ADGroupMember -Identity "Exchange Servers" |
    Where-Object { $_.objectClass -eq "computer" } |
        Select-Object -First 1
$ExchSRV = Get-ADComputer -Identity $ExchSRV.distinguishedName `
    -Properties DNSHostName
$ExchConUri = -join("http://", `
        $ExchSRV.DNSHostName , `
        "/PowerShell" `
    )
$ExSession = New-PSSession -ConfigurationName Microsoft.Exchange `
    -ConnectionUri $ExchConUri
Import-PSSession -Session $ExSession -DisableNameChecking `
    -AllowClobber

# Hier geht es dann mit den Exchange CMDlets los

 

Gruß

Jan

Ich starte die ISE als Domain-Admin auf dem Mailserver. Dann muss ich doch keine Verbindung mehr aufbauen.

 

Das Seltsame ist ja, dass dieses Skript schon seit "Jahren" so funktioniert. Erst seit ich "Protected User" bin , nicht mehr. Zumindest ist da ein zeitlicher Zusammenhang.

Liebe Leute, es lag an "Protected Users".

Nachdem ich mich wieder entfernt habe, klappt es mit Add-MailboxFolderPermission wieder.

 

Da scheinen doch einige Hürden im Hintergrund aufgebaut zu werden.

Ist ja gut so gegen Angreifer, aber nicht gut für Exchange-Admins.

 

Da muss ich mir was überlegen, wie ich das löse.

 

Vielen Dank an alle, die sich Gedanken gemacht haben :-)

Link zu diesem Kommentar

Moin,

 

nur um ein Paar Missverständnisse aufzuräumen:

 

  • das explizite Laden des Exchange-SnapIns in eine neutrale PowerShell-Sitzung war noch nie supported (die offizielle Sprachregelung ist: "nur auf Anweisung des Microsoft-Supportpersonals")
  • JEDE Exchange Management Tools-Sitzung ist eine Remoting-Sitzung, selbst wenn es nur einen Exchange-Server gibt und die PowerShell lokal auf diesem gestartet wurde
  • Die ISE oder Shell "als Admin" ausführen, spielt nur lokal auf einem Exchange-Server eine Rolle, und zwar nur dann, wenn die darunterliegende Remoting-Sitzung dann auch zu diesem Server erfolgt
  • Die von @testperson beshriebene Vorgehensweise ist eigentlich die "einzig wahre", allerdings muss man darauf vorbereitet sein, dass einige Komfort-Funktionen verloren gehen. Fragt man beispielsweise Größen oder Quotas ab, so wird der Wert "X GB (aaa,bbb,ccc Bytes)" als String geliefert, und der Aufruf $db.IssueWarningQuota.Value.ToGB() wird nicht funktionieren, da diese Funktion nicht von Exchange per Remoting mitgegeben wird, sondern Teil des Snap-Ins ist. Aber es ist viel darüber geschrieben worden, wie man damit umgeht.
Link zu diesem Kommentar

Bei der "einzig wahren" Vorgehensweise gibt es allerdings auch ein "aber" bzw. eine anderweitige Empfehlung seitens MS (Connect to Exchange servers using remote PowerShell | Microsoft Learn):

Zitat

We recommend that you use the Exchange Management Shell on any computer that you use to extensively administer Exchange servers. You get the Exchange Management Shell by installing the Exchange management tools. For more information, see Install the Exchange Server Management Tools and Open the Exchange Management Shell. For more information about the Exchange Management Shell, see Exchange Server PowerShell (Exchange Management Shell).

 

vor 41 Minuten schrieb cj_berlin:

das explizite Laden des Exchange-SnapIns in eine neutrale PowerShell-Sitzung war noch nie supported (die offizielle Sprachregelung ist: "nur auf Anweisung des Microsoft-Supportpersonals")

(Hier wäre "Add-PSSnapin *RecipientManagement" ggfs. noch als Ausnahme aufzuführen, wenn man den letzten Exchange nach der erfolgreichen Migration zu Exchange online runterfährt.)

Link zu diesem Kommentar

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...