Senden von Outlook-Nachrichten von einem anderen Benutzer

Exchange Online bietet Postfachberechtigungen, über die ein Benutzer E-Mails senden kann, bei denen es so aussieht, als würden diese von einem anderen Benutzer, einer Verteilerliste, einer Gruppe, einer Ressource oder von einem freigegebenen Postfach gesendet werden. Microsoft Graph unterstützt dieses Feature auch, das Endergebnis variiert aber in Abhängigkeit von den genauen Berechtigungen, die in Exchange Online gewährt wurden, und von der API, die Sie zum Senden der E-Mail verwenden.

Berechtigungen

Für das Senden von Nachrichten von einem anderen Benutzer gelten zwei Arten von Berechtigungen:

Microsoft Graph-Berechtigungen

Um Nachrichten von einem anderen Benutzer zu senden, verwenden Anwendungen, die Benutzertoken verwenden, die Berechtigung Mail.Send.Shared.

Hinweis

Anwendungen, die Anwendungstoken anstelle von Benutzertoken verwenden und bei denen die Mail.Send-Berechtigung von einem Administrator genehmigt wurde, können E-Mails als beliebiger Benutzer in der Organisation senden, indem die E-Mails normal über das Postfach des Benutzers gesendet werden.

Postfachberechtigungen

Zwei Berechtigungen haben Auswirkungen auf das Endergebnis des Sendens einer Nachricht von einem anderen Benutzer: Senden im Auftrag von und Senden als. Der Benutzer, der bei der Anwendung mit der Berechtigung Mail.Send.Shared angemeldet ist, MUSS mindestens eine dieser Berechtigungen für das Postfach, die Gruppe oder die Verteilerliste besitzen, von der die E-Mail stammt.

Hinweis

Es ist derzeit nicht möglich, Microsoft Graph zu verwenden, um abzufragen, für welche Postfächer der authentifizierte Benutzer über Berechtigungen verfügt.

Senden im Auftrag von

Mit dieser Berechtigung hat der Empfänger der E-Mail einen Hinweis in seinen E-Mail-Client, dass der Benutzer Ihrer Anwendung die Nachricht im Namen eines anderen Benutzers gesendet hat.

Screenshot von Outlook im Web, in dem angegeben wird, dass eine Nachricht von einem Benutzer im Auftrag eines anderen Benutzers gesendet wurde

Dies wird in Microsoft Graph als die sender Eigenschaften (der Benutzer, der die Nachricht tatsächlich gesendet hat) und from (der Benutzer, die Gruppe usw., von denen die Nachricht zu stammen scheint) verfügbar gemacht.

{
  "id": "AAMkAGE1...",
  "subject": "Send mail test",
  "sender": {
    "emailAddress": {
      "name": "Adele Vance",
      "address": "AdeleV@contoso.com"
    }
  },
  "from": {
    "emailAddress": {
      "name": "Pradeep Gupta",
      "address": "PradeepG@contoso.com"
    }
  }
}

Ein Benutzer kann diese Berechtigung für das eigene Postfach einem anderen Benutzer mithilfe von Outlook erteilen. Administratoren können diese Berechtigung für ein beliebiges Postfach, eine beliebige Gruppe oder eine beliebige Verteilerliste im Microsoft 365 Admin Center erteilen.

Senden als

Bei dieser Berechtigung gibt es keinen Hinweis darauf, dass die Nachricht als ein anderer Benutzer gesendet wurde. Die sender-Eigenschaft und die from-Eigenschaft weisen denselben Wert auf.

Benutzer können diese Berechtigung nicht für ihre Postfächer erteilen. Administratoren können diese Berechtigung im Microsoft 365 Admin Center erteilen.

Senden mit Microsoft Graph

Sie können Nachrichten von einem anderen Benutzer senden, indem Sie die Nachricht direkt senden oder einen Entwurf erstellen und diesen dann senden.

Um Nachrichten von einem anderen Benutzer zu senden, legen Sie die from-Eigenschaft in der Nachricht, die an die E-Mail-Adresse des Benutzers gesendet wird, auf „Senden von“ fest. Sie müssen die sender -Eigenschaft nicht festlegen. Microsoft Graph legt sie entsprechend fest, basierend auf den Postfachberechtigungen, die dem angemeldeten Benutzer erteilt wurden.

Konfigurieren Sie die Nachricht wie folgt, um beispielsweise E-Mails von der Gruppe sales@contoso.com zu senden.

{
  "subject": "January sales report",
  "toRecipients": [
    {
      "emailAddress": {
        "address": "MeganB@contoso.com"
      }
    }
  ],
  "from": {
    "emailAddress": {
      "address": "sales@contoso.com"
    }
  }
}

Verhalten von gesendeten Elementen

Nachdem die Nachricht gesendet wurde, kann sie im Ordner „Gesendete Elemente“ des sendenden Benutzers, im Ordner „Gesendete Elemente“ des ursprünglichen Benutzers oder in beiden Ordnern gespeichert werden. Sie müssen die Nachricht aber nicht speichern.

Hinweis

Wenn die Nachricht von einer Adresse gesendet wird, die nicht über ein Postfach verfügt (z. B. eine Verteilerliste), gibt es für den Benutzer, von dem die Nachricht stammt, keinen Ordner „Gesendete Elemente“.

  • Wenn Ihre Anwendung die Nachricht über den /me-Endpunkt sendet (oder über /users/{user-id}, wobei user-id dem angemeldeten Benutzer entspricht), so wird die Nachricht standardmäßig im Ordner „Gesendete Elemente“ des sendenden Benutzers gespeichert.
  • Wenn Ihre Anwendung die Nachricht über /users/{user-id} sendet, wobei user-id dem Benutzer entspricht, von dem die Nachricht stammt, so wird die Nachricht standardmäßig im Ordner „Gesendete Elemente“ des Benutzers gespeichert, von dem die Nachricht stammt.

    Wichtig

    Um eine Nachricht auf diese Weise zu senden, muss der sendende Benutzer zusätzlich zur Berechtigung Senden im Auftrag von oder Senden als über die Postfachberechtigung Vollzugriff verfügen.

Das Standardverhalten kann durch andere externe Faktoren geändert werden:

Beispiele

Beispiel 1: Erfolgreiches Senden über /me-Endpunkt

In diesem Beispiel wurde Adele Vance die Berechtigung Senden im Auftrag von für das Postfach von Allan Deyoung erteilt.

Anforderung

POST /me/sendmail
Content-Type: application/json

{
  "message": {
    "subject": "Expense reports",
    "body": {
      "contentType": "text",
      "content": "Have you submitted your expense reports yet?"
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "MeganB@contoso.com"
        }
      }
    ],
    "from": {
      "emailAddress": {
        "address": "AllanD@contoso.com"
      }
    }
  }
}

Antwort

HTTP/1.1 202 Accepted

Beispiel 2: Fehlgeschlagener Sendeversuch ohne Berechtigungen

In diesem Beispiel versucht Adele Vance, eine E-Mail von Patti Fernandez zu senden, ihr wurde aber weder die Berechtigung Senden im Auftrag von noch die Berechtigung Senden als erteilt. Die Antwort enthält einen ErrorSendAsDenied-Fehler.

Anforderung

POST /me/sendmail
Content-Type: application/json

{
  "message": {
    "subject": "Support ticket",
    "body": {
      "contentType": "text",
      "content": "I noticed you opened a support ticket yesterday..."
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "MeganB@contoso.com"
        }
      }
    ],
    "from": {
      "emailAddress": {
        "address": "PattiF@contoso.com"
      }
    }
  }
}

Antwort

HTTP/1.1 403 Forbidden
Content-Type: application/json

{
  "error": {
    "code": "ErrorSendAsDenied",
    "message": "The user account which was used to submit this request does not have the right to send mail on behalf of the specified sending account. Cannot submit message.",
    "innerError": {
      "request-id": "24e7991e-01ae-4cc2-8e06-532a96fd8948",
      "date": "2019-01-16T18:53:25"
    }
  }
}

Nächste Schritte