Microsoft Graph- Permissions and Consent

Slides:



Advertisements
Similar presentations
11 | Managing User Info Jeremy Foster Michael Palermo
Advertisements

Success through People with LinkedIn and O365
Deployment Planning Services
4/18/2018 1:15 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
PowerApps & Flow Licensing Overview for Partners
5/12/2018 3:54 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
5/16/2018 7:12 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
5/22/2018 3:04 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Deployment Planning Services
5/29/2018 1:51 AM THR2071 Managing enterprise applications, permissions, and consent in Azure Active Directory Adam Steenwyk & Jeff Sakowicz Program Managers.
Journey to Microsoft Secure Cloud
Microsoft /4/2018 8:21 AM BRK3082 Build solutions and apps with Microsoft OneDrive API and Microsoft Graph API Ryan Gregg Principal Program Manger,
9/11/ :51 AM Cloud Roadshow © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO.
Deployment Planning Services
SaaS Application Deep Dive
Microsoft Ignite /17/2018 4:41 AM BRK4016
Business Connectivity Services in SharePoint 2010 and Office 2010
9/4/2018 6:45 PM Secure your Office 365 environment with best practices recommended for political campaigns Ethan Chumley Campaign Technology Advisor Civic.
Enhancing the Office 365 Multi-Factor Authentication and RM Online
9/14/2018 2:22 AM THR2026 Set up secure and efficient collaboration for your organization with Office 365 Joe Davies Senior Content Developer Brenda Carter.
Office 365 with confidence: security features for Office 365
Microsoft Intune MAM without Device Enrollment
What’s new in Office 365 administration
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
RMS with Microsoft SharePoint
Office 365 Development.
Application Delivery & MAM Policy
Controlling and leveraging the power of the Microsoft Graph
11/8/ :11 AM BRK3388 Build applications to secure and manage your enterprise using Microsoft Graph Dan Kershaw & Jeff Sakowicz Program Managers –
Azure AD Line Of Business Application Integration
The Future of SharePoint Development - Vision, Strategy, and Roadmap
Deep Dive into Cloud Identity, Identity Bridging and Cloud Tokens - EWUG.DK - Level Peter Selch Dahl - Sr. IT Architect, Cloud and.
Excel REST API updates Sudhi Ramamurthy Sr. Program Manager.
11/13/ :20 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Protect your OneDrive and SharePoint files on mobile devices
11/14/ :30 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Connect /15/2018 3:03 AM
Office 365 Development July 2014.
Microsoft Ignite /20/2018 2:21 PM
11/27/2018 9:51 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
11/27/2018 6:59 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Migrate your apps from legacy APIs to Microsoft Graph
Microsoft Ignite NZ October 2016 SKYCITY, Auckland
SharePoint User Group Zürich – 1 November 2016.
Everything Windows User Group Meeting, Aug 2016
Office 365 Development July 2014.
Excel Rest API Sudhi Ramamurthy Program Manager, Office Extensibility
Office 365 Development.
Five mistakes to avoid when deploying Enterprise Mobility + Security
12/29/2018 8:46 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Agenda OAuth Concepts Programming OAuth.
Microsoft Build /2/2019 6:45 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
SharePoint Online Authentication Patterns
Office 365 Development.
Microsoft Build /22/2019 5:32 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Protecting your data with Azure AD
4/9/ :42 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Azure Active Directory
Microsoft Graph – Intune API’s
Microsoft Connect /29/2019 4:52 PM
4/28/2019 3:05 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
5/10/2019 4:48 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
5/6/2019 7:40 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
Microsoft Data Insights Summit
7/2/2019 8:03 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
SharePoint Online Assessment Results
Office 365 Development.
Microsoft Data Insights Summit
11/19/2019 4:08 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Presentation transcript:

Microsoft Graph- Permissions and Consent 11/22/2018 1:59 PM Microsoft Graph- Permissions and Consent Jeff Sakowicz © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Agenda Microsoft Graph- Overview Permissions & Consent Best Practices 11/22/2018 1:59 PM Agenda Microsoft Graph- Overview Permissions & Consent Best Practices Troubleshooting © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Microsoft Graph a unified REST API Microsoft Build 2017 11/22/2018 1:59 PM Microsoft Graph a unified REST API and comprehensive developer experience for integrating the data and intelligence exposed by Microsoft services. Most of you came to this conference because you have real customers that have data in Microsoft Services. Microsoft Graph is the way to access that data. © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Microsoft Graph Unified REST API for Microsoft 365: 11/22/2018 1:59 PM Microsoft Graph Unified REST API for Microsoft 365: Azure Active Directory Office 365 services: SharePoint, OneDrive, Outlook/Exchange, Microsoft Teams, OneNote, Planner, and Excel Enterprise Security and Mobility services: Identity Manager, Intune, Advanced Threat Analytics and Advanced Threat Protection. Windows 10 services: Activities and Devices Education © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Permissions and Consent- Overview 11/22/2018 1:59 PM Permissions and Consent- Overview © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Terminology Client- the application requesting access to data Resource- the application/service (usually a web API) that exposes data Permission- the ability for a client application to perform some action on some data owned by a resource application e.g. read a user’s OneDrive files through Microsoft Graph Consent prompt- the process by which a user is asked to grant an application the permission(s) it has requested Consent grant- the result of saying “yes” to a consent prompt Admin(istrative) Consent- the process by which a company administrator grants an application one or more permissions that cannot be granted by a regular user. These permissions may: Allow the app to perform high privilege operations- admin-restricted permissions Apply to all users in the organization

Permissions Scenarios Microsoft Build 2017 11/22/2018 1:59 PM Permissions Scenarios App type Permission type Who can consent Effective Permissions Get access on behalf of users Get access as a service Mobile, Web and Single page app Service and Daemon Delegated permission (user permission) Application permission Users can consent for their data Admin can consent for them or for all users Only admin can consent Admin restricted permissions Maybe good from a privacy aspect App permissions User permissions App permissions © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Microsoft Graph Permissions- Format 11/22/2018 1:59 PM Microsoft Graph Permissions- Format General format: Resource.Action.Scope Resource- target entity Action- Read, ReadWrite, etc. Scope- specific or inferred (optional) Examples User.Read- delegated Notes.ReadWrite- delegated Files.ReadWrite.All- application https://graph.microsoft.com for documentation! © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

When is consent prompted for? Most commonly The first time using a app that requires access to resources Or when App explicitly prompts for it Permissions required by the app have changed Consent was revoked after being granted initially Incremental consent Ultimately consent occurs when an application needs to access unauthorized resources.

Static, Dynamic, and Incremental Consent Permissions pre-configured in registration portal UI and/or requiredResourceAccess Dynamic Permissions specified as a parameter of /authorize request (and usually in code) Special case- .default scope Incremental Subset of dynamic- request permissions one by one, as needed Great for apps with optional features or accruing functionality

Best Practices & Troubleshooting 11/22/2018 1:59 PM Best Practices & Troubleshooting © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Developer Best Practices Use least privilege! Only request permissions which are absolutely necessary, and only when you need them Be thoughtful when configuring your app! This will directly affect end user and admin experiences, along with app adoption and security When building a multi-tenant app, expect customers to have various application and consent controls in different states

Troubleshooting - Framing the Problem Scenario What is the goal? What error are you seeing? Where is it coming from? Who is using the app? Are they logged in as an administrator? What consent and app access policies are applied in the organization? Client application What client library are you using? Are you using the V1 or V2 endpoint? What protocol flow is being used? Is it using dynamic/incremental consent, or static? Who developed and configured it? Target resource What is the target resource application? Are there multiple? What permissions does this resource expose? Which permission(s) is the client requesting?

Troubleshooting – Common Issues Unexpected 403 unauthorized What permissions have been consented to? Who consented? Is this a delegated scenario? What permissions does the user have? What are the effective permissions? User not able to consent or use app Are you requesting admin-restricted permissions? Did tenant admin disable user consent? Admin has consented but user still blocked If using V2 endpoint- are static permissions configured to be a superset of permissions requested dynamically? Is user assignment required for the app?

Useful data to gather Scenario Error code and exception text Timestamp AADSTS90093: ContosoWorkflows is requesting one or more permissions that you are not authorized to grant. Contact an administrator, who can consent to this application on your behalf Timestamp 2018-07-17- 18:55:51Z Correlation Id/Tracking Id 7231d857-124b-4ffb-985b-ef21e87cf97f

Key Takeaways Abide by the principle of least privilege 11/22/2018 1:59 PM Key Takeaways Abide by the principle of least privilege Be thoughtful when requesting permissions and consent Be scenario driven- consider all personas and configurations What about data for Windows and EMS? © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Get started today #MicrosoftGraph /MicrosoftGraph [MicrosoftGraph] 11/22/2018 1:59 PM Get started today https://graph.microsoft.com Twitter #MicrosoftGraph GitHub /MicrosoftGraph StackOverflow [MicrosoftGraph] Office 365 and its 100M MAU create an incredible opportunity for developers to ring their innovations to the masses. Microsoft Graph is the API to millions of organizations, and the foundation for building intelligent business process. © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

11/22/2018 1:59 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.