Guest management with the Power Platform & the Microsoft Graph

Slides:



Advertisements
Similar presentations
Power BI Sites and Mobile BI. What You Will Learn Sharing and Collaboration Introducing Power BI Exploring Power BI Features and Services Partner Opportunities.
Advertisements

Meet Jeremy Thake Jeremy recently joined Microsoft as Technical Product Manager for the Visual Studio Developer story for Office 365 development.
Solving Modern Day Business Problems Using Power Apps
12/11/ :11 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
1/10/2018 9:33 PM Cloud Roadshow © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO.
Tools and Tips for Administering Office 365
Data Platform and Analytics Foundational Training
PowerApps & Flow Licensing Overview for Partners
Dynamics 365; What’s new and what’s not
5/9/2018 9:30 AM BRK2215 Deliver better experiences with SharePoint Patterns and Practices Community Solutions Mike Ammerlaan Product Marketing Manager,
Deliver business insights with Microsoft Dynamics AX and Power BI
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/13/2018 8:08 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Make Power BI Your Own with the Power BI APIs
5/25/2018 8:27 AM BRK3348 Create custom forms and digital experiences in SharePoint using Microsoft PowerApps Cathy Dew Senior Product Marketing Manager.
About Bill Bill Baer (ˈbɛər)
Build Power-full Solutions in Office 365 …without Code!
Microsoft Power BI with Azure Services
6/10/2018 3:43 AM THR1000 Making StaffHub work for your organization Business Integrations & Workflows Sushmitha Kini Engineering Manager © Microsoft.
Make Power BI Your Own with the Power BI APIs
6/17/ :27 AM BRK3341 Unlock extensibility by connecting your service to PowerApps and Microsoft Flow Theresa (Tessa) Palmer–Sr. Program Manager Sunay.
Build Power-full Solutions in Office 365 …without Code!
Microsoft Power BI Transforming your data into actionable insight
Transition Your SharePoint Designer Workflows to Microsoft Flow
Build data-driven solutions using Microsoft Visio
Get Started with Common Data Model (CDM) and PowerApps
Extensible Platform Microsoft Dynamics 365
PowerApps and Microsoft Flow for Business Users
Mobilize Your Line of Business
Create and publish reports with Power BI for desktop
PowerApps for SharePoint Users
SharePoint Saturday Detroit
Microsoft Azure P wer Lunch
Add intelligence to Dynamics AX with Cortana Intelligence suite
Special thanks to our sponsors!
The New Breed: OMS, Flow, and Power BI Integration
Build Bot using PowerApps
Make Power BI Your Own with the Power BI APIs
Power Apps & Flow for Microsoft Dynamics SL
Introduction to Office365 Forms and Flow
Business Intelligence for Project Server/Online
Microsoft SQL Server 2008 Reporting Services
Office 365 Development July 2014.
Microsoft Ignite /20/2018 2:21 PM
11/23/2018 8:30 AM BRK3037 BRK3037: Dive deep on building apps and services with the Office 365 Communications Platform David Newman Senior Program Manager.
Automate New Employee Orientation Process
11/27/2018 6:59 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Make Power BI Your Own with the Power BI APIs
12/6/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
12/29/2018 8:46 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Power BI and SharePoint – the road ahead
Grow Your Business with Office 365 Yammer: Working Social
2/24/2019 6:15 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Flow Approvals 101
Power BI with Analysis Services
PowerApps and Flow.
Welcome to SQLSaturday #767! Hosted by Lincoln SQL Server User Group
Common Data Service Data Integrator
Power BI Streaming Datasets with MS Flow
Hello, Minnesota! This is the SPC18 recap.
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.
Office 365 Development July 2014.
PowerApps.
FLOW 101 Power BI User Group.
PowerApps Hackathon.
AI Builder for Power Platform
Microsoft Power Platform
Dynamics 365 Customer Insights
Presentation transcript:

Guest management with the Power Platform & the Microsoft Graph 7/20/2019 Guest management with the Power Platform & the Microsoft Graph Simon Ågren

Sponsors and Partners

About me Simon Ågren Solution Architect & Office Development MVP 7/20/2019 About me Simon Ågren Solution Architect & Office Development MVP @agrenpoint https://simonagren.github.io https://github.com/simonagren https://www.linkedin.com/in/simonaagren

Agenda Power Platform intro Graph Intro Background Sharing settings 7/20/2019 Agenda Power Platform intro Graph Intro Background Sharing settings Architecture Walking through the different parts Demo

Microsoft Power Platform intro A brief overview

Common Data Service for Apps and 7/20/2019 PowerApps Power BI Microsoft Flow Dynamics 365 Microsoft Power platform Azure Office 365 Standalone Apps Common Data Service for Apps and Data Connectors

PowerApps An application Platform as a Service (aPaaS) for citizen-developers to build high-productivity business apps

Types of PowerApps apps Canvas apps start with user experience, with pixel-perfect control to build highly customized task- and role-based apps that mash up data from 230+ sources Model-driven apps leverage your data model, relationships, and business processes to automatically generate immersive, responsive applications

Common Data Service for Apps and PowerApps Power BI Microsoft Flow Dynamics 365 Microsoft Power platform Azure Office 365 Standalone Apps Common Data Service for Apps and Data Connectors

Microsoft Flow is a service for business users to automate workflows across apps and services

What makes up a flow? Starts with an event or trigger (Manual, On a schedule, Event driven) Performs any number of actions Action: What does the flow do? Can have conditional logic (If then else, Case) Data flows between trigger and actions to subsequent actions Example: Notification on a new record in Dynamics 365

Four types of flows Automated flows Scheduled flows 7/20/2019 Automated flows Scheduled flows Business process flows Instant flows

Common Data Service for Apps and PowerApps Power BI Microsoft Flow Dynamics 365 Microsoft Power platform Azure Office 365 Standalone Apps Common Data Service for Apps and Data Connectors

Power BI: experience your data Any data, any way, anywhere Microsoft 2016 7/20/2019 12:07 AM Power BI: experience your data Any data, any way, anywhere Power BI Natural Language query Custom visualizations Real time dashboards and interactive reports Native Office 365, Dynamics 365, Azure integration Web Mobile Embedded Excel Cortana “……” Cloud data On-premises data © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Microsoft Graph Intro Brief introduction

Gateway to your data in the Microsoft cloud 7/20/2019 12:07 AM Gateway to your data in the Microsoft cloud Bots Web Apps Device & Native Apps Background processes Your app 1 Microsoft Graph Gateway Office 365 Windows 10 Enterprise Mobility + Security Your or your customer’s data Microsoft identity Deep insights Real-time updates Rich content © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7/20/2019 Background At a customers with one of our sales representatives They are a manufacturing company with a lof of consultants working temporarilly at the company. They expressed a concern about the challanges of administering the consultants. So I just though about what if we could automate this for you? Which sparked an idea. And this solution could be done multiple ways, the purpose of today is not to provide the ultimate solution. Give you some ideas of how we could this Something to build upon and make your own

7/20/2019 Sharing settings Limiting sharing to already existing guests

Settings in OneDrive and SharePoint 7/20/2019 Settings in OneDrive and SharePoint Go to the OneDrive Admin Center and adjust levels for both SharePoint and OneDrive

Settings in Azure AD Go to the your Azure AD in the Azure Portal 7/20/2019 Settings in Azure AD Go to the your Azure AD in the Azure Portal

7/20/2019 Settings in Office 365 Go to the admin center, then settings -> services & add-ins -> Control settings for Office 365 groups

Architecture High level architecture and explanation

SharePoint Online Azure AD Microsoft Graph Flow (Get Sites In Hub) 7/20/2019 SharePoint Online Azure AD Microsoft Graph Flow (Get Sites In Hub) Office 365 Groups Azure Function (CreateInvitation) Azure Function (UpdateInvitation) Azure Function (DeleteInvitation) Custom Connector Flow (Remove Invitation) Flow (Update Invitation) PowerApps PowerBI

Why this approach? Recommended approach 7/20/2019 Why this approach? Recommended approach More control within the PowerApp Implications of other ways What does this mean regarding licenses A lot of discussion regarding licenses since the change in premium licenses etc. You may have seen a lot of different ways To call Azure Functions directly from the PowerApps is recommended. We have more control regarding the result Reflected in the PowerApp directly by a toast etc You can do this other ways but not as clean regarding triggering a Flow etc. You could use Logic apps etc I do this in SharePoint now creating lists, etc. for data storage. It could be a CDS entity. This could be exported by using solutions. A solutions is a package and could contain: PA, Flow, Entities etc It would be easier to just import the solution and BAM, you are kinda done. Regarding licensing this requires all the PA users to have P1, and an additional P1 for the recurrent Flows, and you do need ex. E5 for the BI Pro.

Solution walktrough The different bits and pieces explained

7/20/2019 SharePoint A custom list to hold both pending invitations and fully invited guests. The start date can be used in scheduled invites and the end date for automatic removal of invites A custom list to hold all the associated sites within a specific hub called CompanyHub. Used as a lookup field in the Guests list

Flows Utilizes SharePoint search API to retrieve the associated sites in the hub. _api/search/query?querytext=‘ DepartmentId:{029afe96-f212-4b9d-a5d8-a8dfdc3028d8} contentclass:STS_Site NOT siteId: 029afe96-f212-4b9d-a5d8-a8dfdc3028d8’ &selectproperties='Title,Path,DepartmentId’ &Properties='EnableDynamicGroups:true'

Flows Gets all items from the Guest list in SharePoint where: Status is pending Start date is equal to today. For each item the Flow uses the custom connector to: Create an invitation based on the list data Update the item with the userId and groupId

Flows Gets all items from the Guest list in SharePoint where: End date is equal to today. For each Pending item the Flow uses the custom connector to: Delete the list item For each Invited item the Flow uses the custom connector to: Remove the invitation

Custom Connector Created from the UI Could create from Postman collection or OpenAPI Connects to an Azure AD secured application Application Id and Secret Three actions available in Flow and PowerApps Mapped to the specific Azure Functions within the Function App Request body and default response

7/20/2019 Azure Functions Created a Function App that contains the Azure Functions Created from Visual Studio Code Azure Functions extension Node.js and TypeScript Using PnPJs Azure AD secured Using key vault for the Application Secret @Microsoft.KeyVault(SecretUri=https://spswarsawvault.vault.azu re.net/secrets/graphSecret/…) Key vault syntax from app settings, no code needed for key vault

Create Invitation Title Email redirectUrl siteName siteLookupId 7/20/2019 Create Invitation Title Email redirectUrl siteName siteLookupId startDate (optional) / Today endDate

Update Invitation itemId email redirectUrl siteName siteLookupId 7/20/2019 Update Invitation itemId email redirectUrl siteName siteLookupId startDate

7/20/2019 Remove invitation itemId email userId groupId status

7/20/2019 Demo

Questions?