c# - Microsoft graph API how to create a bearer msal token -


trying authenticate, application basic console app, (not user) , access token right scopes. manage token without right scopes. i'm not sure if able this, missing?

static async task<string> getmsaltoken()         {             const string clientid = "xxxx234a3-7b9f-42341c-86df-3d2349861";             const string clientsecret = "wx324xxxxxxxxxxxxx";             var scopes = new list<string>() { "https://graph.microsoft.com/.default" };              var clientcredential = new microsoft.identity.client.clientcredential(clientsecret);             var redirecturi = "msalxxxx234a3-7b9f-42341c-86df-3d2349861://auth";              var clientapplication = new microsoft.identity.client.confidentialclientapplication(clientid, redirecturi, clientcredential, null, null);             var authenticationresult = await clientapplication.acquiretokenforclientasync(scopes);              return authenticationresult.accesstoken;         } 

you using client credential authentication using application permissions in azure ad v2.0 endpoint , value passed scope parameter in request should resource identifier (application id uri) of resource want, affixed .default suffix. example ,the microsoft graph , value https://graph.microsoft.com/.default.

with client credential flow , application uses organization's data, not specific user. in such case, "administrator consent" (admin consent) used in azure ad, , consent must done administrator in organization. when use administrator consent, have go https://login.microsoftonline.com/{tenant name}/adminconsent?client_id={application id}&state={some state data}&redirect_uri={redirect uri}using web browser.

after admin consent , acquiring token microsoft graph using client credential flow , if decode access token using online tool , find application permissions listed in roles claim . please confirm have done admin consent application permissions .

here is tutorial using client credentials flow azure ad v2.0 endpoint.


Comments

Popular posts from this blog

Is there a better way to structure post methods in Class Based Views -

performance - Why is XCHG reg, reg a 3 micro-op instruction on modern Intel architectures? -

jquery - Responsive Navbar with Sub Navbar -