microsoftgraph / microsoftgraph/msgraph-sdk-php

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.ok

Aperta
#1,412 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
PHP
Stelle
669
Fork
150
Merge medio
15h 21m
PR unite (30g)
3

Descrizione

I try to send un email with ClientCredential and it doesn't work, i dont known if i do ther right thing :
Here is my code :

$tokenRequestContext = new ClientCredentialContext(
    'tenantId',
    'clientId',
    'secret'
);

$graphServiceClient = new GraphServiceClient($tokenRequestContext);

try {
    $sender = new EmailAddress();
    $sender->setAddress('john.doe@outlook.com');
    $sender->setName('John Doe');
    $fromRecipient = new Recipient();
    $fromRecipient->setEmailAddress($sender);

    $recipients = [];

    $recipientEmail = new EmailAddress();
    $recipientEmail->setAddress('jane.doe@outlook.com');
    $recipientEmail->setName('Jane Doe');
    $toRecipient = new Recipient();
    $toRecipient->setEmailAddress($recipientEmail);
    $recipients[] = $toRecipient;

    $emailBody = new ItemBody();
    $emailBody->setContent('Dummy content');
    $emailBody->setContentType(new BodyType(BodyType::TEXT));

    $message = new Message();
    $message->setSubject('Test Email');
    $message->setFrom($fromRecipient);
    $message->setToRecipients($recipients);
    $message->setBody($emailBody);

    $requestBody = new SendMailPostRequestBody();
    $requestBody->setMessage($message);

    /** @var UserItemRequestBuilder $user */
    $user = $graphServiceClient->users()->byUserId('userPrincipalName');
    $response = $user->sendMail()->post($requestBody)->wait();
    dump($response);

} catch (ApiException $ex) {
    echo $ex->getError()->getMessage();
}

I try to delegate right to send on userPrincipalName email but it doesn't work
i read doc lot of times and i don't understand why i doesn't work
I dont know if i can send an email like this with credential client account ?

Can you help me please ?
Thank you in advance

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Iniziate dalla configurazione di ClientCredentialContext e dalla richiesta users()->byUserId()->sendMail() mostrate nell’issue. Verificate le autorizzazioni di Microsoft Graph e la configurazione dell’account coinvolte nell’invio per conto dell’utente specificato, quindi confermate che il client-credential flow documentato supporti questa richiesta. Il lavoro è completato quando viene identificata la configurazione mancante oppure viene confermato un difetto riproducibile dell’SDK.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
php
Ambito
api, authorization
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.