MS Power Platform
MS Power Platform
Power Platform
Administer Power Platform
Licensing changes in October 2019
PowerApps and Flow licensing FAQs
Requests limits and allocations
Administer Dynamics 365 for Customer Engagement
Administer PowerApps
Overview
Get Help + Support
Support overview
Getting started
PowerApps overview
What's the role of a PowerApps administrator?
PowerApps enterprise deployment whitepaper
Environments
Early opt-in to 2019 release wave 2
View analytics
Common Data Service analytics
Microsoft Flow analytics
PowerApps analytics
Capacity
Free storage space
Manage environments
Environments overview
Create environments
Control environment creation
Create a database in PowerApps
Create an environment in PowerApps
Copy an environment
View and reset Sandbox environments
About Trial environments
Manage environments in PowerApps
Regions overview in PowerApps
Manage encryption key
PowerApps Preview Program
Manage settings
Common Data Service settings
Product settings
Behavior
Features
Languages
Privacy and security
Business settings
Business closures
Calendar
Currencies
Regional formatting
Users + permissions settings
Business units
Hierarchy security
Positions
Security roles
Teams
Users
Encryption
Encryption
Email settings
Email settings
Email tracking
Mailboxes
Server profiles
Services settings
Microsoft Social Engagement
Data management settings
Announcements
Auto numbering
Automatic record creation policies
Bulk deletion
Data import wizard
Data maps
Duplicate detection
Templates
Cascading transaction processing
Platform architecture
About on-premises gateway
On-premises data gateway management
About environments
Common Data Service
Types of PowerApps
Microsoft Flow
Connectors
Solution Packages
Licensing and license management
About licensing and license management
Licensing overview
Manage licenses in your org
Purchase PowerApps
FAQs and more information
Security
Overview
Controlling access
Security concepts
System and application users
Configure environment security
Control user access to environments
Data loss prevention policies
Create a DLP policy
Manage DLP policies
Introduction to data groups
Management and monitoring
Overview
Working with the Admin Portals
PowerShell support for PowerApps (preview)
About PowerShell support
Automation of tasks with PowerShell
Automate application lifecycle management
Automation of tasks with Microsoft Flow
View apps in your environments
Manage apps in your org
Move an app between tenants or environments
Embed an app in Teams
View active users in your tenant
Deployment scenarios
Application Lifecycle Management
About Application Lifecycle Management
Activity logging for PowerApps
Data integration
Integrate data into Common Data Service
Data Integrator Error management and troubleshooting
GDPR - Responding to DSR requests
System-generated logs
Data integrations for Common Data Service
PowerApps customer data
Overview
Export data
Delete data
Common Data Service customer data
Compliance and data privacy
PowerApps US Government
Administer Microsoft Flow
Administer Power BI
Reference: Use the various admin centers
Reference: Videos and PowerPoint presentations
Preview: Administer Power Platform
8/9/2019 • 2 minutes to read
IMPORTANT
The Power Platform Admin center is a preview feature, and we will continue to add functionality from other admin centers
until it becomes the only admin center where you can accomplish all admin tasks related to Power Platform.
A preview feature may have limited availability and restricted functionality. A preview feature is available before an official
release so that customers can get early access and provide feedback.
FEATURE DESCRIPTION
Help + support Get a list of self-help solutions or create a support ticket for
technical support. More information: Get Help + Support
Analytics Get a detailed view of key metrics for Power Platform apps.
More information: Common Data Service analytics
Data integration More information: Integrate data into Common Data Service
Data policies More information: Create and manage data loss prevention
policies.
PowerApps and Microsoft Flow licensing FAQs for
October 2019
8/29/2019 • 10 minutes to read
This topic provides information about the licensing changes for PowerApps and Microsoft Flow coming in October
2019. For the current licensing information, see PowerApps plans and Microsoft Flow plans.
What licensing changes are coming to PowerApps and Microsoft Flow in October 2019?
We’re introducing two new plans for PowerApps and two new plans for Microsoft Flow on October 1, 2019.
New PowerApps plans include:
PowerApps per app plan which allows individual users to run applications (2 apps and a single portal) for a
specific business scenario based on the full capabilities of PowerApps for $10/user/app/month. This plan
provides an easy way for customers to get started with the platform before broader scale adoption.
PowerApps per user plan which equips a user to run unlimited applications (within service limits) based on
the full capabilities of PowerApps for $40/user/month.
New Microsoft Flow plans include:
Microsoft Flow per user plan which equips a user to run unlimited flows (within service limits) with the full
capabilities of Microsoft Flow based on their unique needs for $15/user/month.
Microsoft Flow per flow plan which enables organizations to implement flows with reserved capacity that
serve teams, department, or the entire organization without having to license each end user. This plan starts at
$500/month for 5 flows.
Will non-profit, government, and academic pricing be available?
Yes.
What will happen to the existing PowerApps and Microsoft Flow plans on October 1, 2019?
The existing P1 and P2 plans for PowerApps and Microsoft Flow will be transitioning to the new PowerApps per
app and per user plans, as well as the Microsoft Flow per user and per Microsoft Flow plans. Existing customers
will be able to maintain the P1 and P2 plans for PowerApps and Microsoft Flow for the duration of their current
subscription period, and they may be eligible to also renew under current terms depending upon when their
subscription period expires. Similarly, new customers may be able to purchase the existing P1 and P2 plans prior
to April 1, 2020. Please contact your Microsoft account rep for more information.
Will full Microsoft Flow capabilities still be included with the new PowerApps licenses?
PowerApps licenses will continue to include Microsoft Flow capabilities. However, flows will need to run within the
context of the PowerApps application, which refers to using the same data sources for triggers or actions as the
PowerApps application. Consuming standalone Microsoft Flows unrelated to the PowerApps application(s) will
require purchase of a standalone Microsoft Flow license.
Will PowerApps and Microsoft Flow use rights change for Dynamics 365 applications?
PowerApps use rights with Dynamics 365 licenses: Dynamics 365 Enterprise licenses will no longer include
general purpose PowerApps capabilities. Dynamics 365 Enterprise users will continue to be able to run apps and
portals that extend and customize the licensed Dynamics 365 application, as long as those apps and portals are
located in the same environment as their licensed Dynamics 365 application. Custom apps or portals outside of
the Dynamics 365 environment will require a standalone PowerApps license.
Microsoft Flow use rights with Dynamics 365 licenses: Dynamics 365 licenses will no longer include general
purpose Microsoft Flow capabilities. Microsoft Flows will need to map to licensed Dynamics 365 application
context - Microsoft Flows should trigger from OR connect to data sources within use rights of licensed Dynamics
365 application(s). Use of standalone flows will require a Microsoft Flow license.
Will PowerApps and Microsoft Flow use rights change for Office 365 applications?
Effective October 1, 2019, the SQL, Azure, and Dynamics 365 connectors listed below will be reclassified from
Standard to Premium. Non-Microsoft connectors that had previously been classified as standard connectors will
still be available to Office 365 users. A standalone PowerApps or Microsoft Flow plan license is required to access
all Premium, on-premises and custom connectors.
Azure Application Insights
Azure Automation
Azure Blob Storage
Azure Container
Azure Cosmos
Azure Data Factory
Azure Data Lake
Azure DevOps
Azure Event Grid
Azure Event Grid Publish
Azure File Storage
Azure IoT Central
Azure Kusto
Azure Log Analytics
Azure Log Analytics Data Collector
Azure Queues
Azure Resource Manager
Azure SQL
Azure SQL Data Warehouse
Azure Table Storage
Dynamics 365
Dynamics 365 Customer Insights
Dynamics 365 for Finance & Operations
Dynamics 365 Sales Insights
Dynamics 365 Business Central
Dynamics 365 Business Central (on-premises)
Dynamics NAV
Event Hubs
Service Bus
SQL Server
Microsoft Flow plan-based limits on trigger frequency and the number of runs allocated to a tenant per month are
being removed.
PowerApps and Microsoft Flow usage will be subject to service limits described here. Per user service limits
provide capacity assurance for users and alleviate the risk of one user exhausting the tenant wide quota.
The PowerApps per app plan allows users to run specific apps. Can you explain what this means in terms of the
number and types of apps I can use?
The PowerApps per app plan is designed to help organizations solve for one business scenario at a time, which
may involve a combination of individual apps. Each “per app” license provides an individual user with rights to two
apps (canvas and/or model-driven) as well as one PowerApps Portal, all within a single environment. A single user
might be covered by multiple “per app” licenses to allow the user to use multiple solutions targeted at various
business scenarios, without requiring a per-user license. In other words, the “per app” license is stackable.
Do embedded canvas apps in model-driven apps count towards the two apps limits?
No. Embedded canvas components within the model-driven app will not count towards the two apps limit in the
per app licensing model.
When would I use the Microsoft Flow per user plan versus the Microsoft Flow per flow plan?
The per user plan is intended to support the broad adoption of an automation culture in an organization. Every
user with this plan is entitled to use an unlimited number of flows, within service limits. The per flow plan provides
an organization with the flexibility to license by the number of flows, instead of licensing each user accessing the
flows individually with the per user plan.
Which flows count in the Microsoft Flow per flow plan?
All types of enabled flows count – scheduled flows, automated flows, instant flows and business process flows.
Flows that are triggered by another flow (child flows) or that are disabled will not count against the plan.
Do flows always have to be purchased in units of 5 as part of the Microsoft Flow per flow plan?
No. After the minimum purchase of 5 flows, additional flows can be licensed individually at $100/month per flow.
Do users who run Flows need to be licensed, or do only users who create flows need to be licensed?
Any end user running a flow will need to be licensed either by the per user or per Microsoft Flow plans.
Do users who use Microsoft Flow features built on the Common Data Service like approvals or business process
flows need to be licensed?
There are features in Microsoft Flow that are not running a flow directly – such as responding to an approval
request or advancing a stage in a business process. These features are built on the Common Data Service.
Normally, any use of these features requires either a standalone Microsoft Flow per user plan, or, that the flow that
creates these business process instances or approval requests to be licensed under the per flow plan.
What Common Data Service capacity is included with the PowerApps and Microsoft Flow plans?
Every tenant with a PowerApps license gets default capacity. In addition, for each license there is additional
capacity (pooled) added to the tenant.
Since flows, as well as certain Microsoft Flow features like approvals, run inside of the Common Data Service,
every tenant with a Microsoft Flow license gets default capacity. In addition, for each per-user or per-flow license
there is additional capacity added to the tenant.
What add-ons are available to the PowerApps and Microsoft Flow plans?
A list of add-ons applicable to all standalone PowerApps and Microsoft Flow plans are listed below:
New PowerApps Portals login capacity add-on and Portals page view capacity add-on for external users
of PowerApps Portals.
PowerApps Portals log in capacity add-ons (various volume tiers start from $200 per 100 logins per
month)
PowerApps Portals page view capacity add-on (100,000 anonymous page views for $100 per month)
New PowerApps and Microsoft Flow capacity add-on increases daily API request limits for PowerApps,
Microsoft Flow and Dynamics 365 workloads for users that exceed their usage entitlement (10,000 daily API
requests for $50 per month).
Common Data Service Database Capacity (1GB ) $40 per month
Common Data Service File Capacity (1GB ) $2 per month
Common Data Service Log Capacity (1GB ) $10 per month
Can you share more details regarding the new PowerApps Portals licensing?
PowerApps Portals can be provisioned without requiring a specific license. User access licensing is based on
persona type and details are as below.
Provisioning a portal instance Purchase Dynamics 365 Additional Provision a portal—no need to
Portal SKU at $500 per month purchase portal addons to provision a
portal
Qualifying base offers Dynamics 365 licenses only Customers can add on portal external
login or page view capacity to Dynamics
365, PowerApps and Microsoft Flow
licenses
PARAMETER DYNAMICS 365 PORTALS NEW POWERAPPS PORTALS
Internal use rights Dynamics 365 enterprise licenses, Internal users can now access portals
Dynamics 365 team member license. with a PowerApps per-app/per-user
license. For a Dynamics license it is
same as custom PowerApps use
rights.
Monetization Per portal instance Per page view Per log in Per page view
Entitlement for Dynamics 365 1 portal instance for the first 10 full Not applicable―PowerApps Portals
customers Dynamics 365 USLs instances can be provisioned
Can I purchase PowerApps Portals add-on licenses with my existing PowerApps P1 or P2 plans or do I have to
upgrade to the new plans to benefit from the new portal capability?
Yes. You can purchase PowerApps Portals add-on capacity if you are an existing PowerApps Plan 1 or Plan 2
customer. You can also purchase this capacity if you are a Dynamics 365 customer.
Can you clarify the use rights to Portals for internal users?
Custom PowerApps Portals use rights:
For internal users, use rights to a “custom” portal are aligned with their “custom” PowerApps use rights. For
example,
A Dynamics 365 enterprise application license gets use rights to custom PowerApps applications within the
same environment as the Dynamics 365 application. As such, A Dynamics 365 enterprise application license
gets use rights to custom PowerApps Portals within the same environment as the licensed Dynamics 365
enterprise application.
The Team Member license does not get access to custom portal as Team Member licenses do not allow access
to a custom app.
What is the minimum number of logins and page view that I need to assign to a specific portal?
Minimum login quantity to be assigned to a portal is 100 logins/month. Once you have assigned 100 logins, you
can assign them in units of 1.
Example: If you have 3 portals and bought 4 login packs (400 logins). You can assign them in the following way:
Portal 1: 120 (min 100)
Portal 2: 151 (min 100)
Portal 3: 129 (min 100)
Page views: Minimum 50,000 per portal, after that you can assign 1 at a minimum.
Are there limits on the number of API requests PowerApps and Microsoft Flow users can make?
Yes. To help ensure service levels, availability and quality, there are limits to the number of API requests users can
make across PowerApps and Microsoft Flow. Service limits are set against normal usage patterns in both 5-minute
and per 24-hour intervals, and most customers will not reach them.
API capacity is tracked based on consumption at an individual user level, and the daily limits cannot be pooled at
any other level.
API limits are also applicable to application users, non-interactive users and administrative users in Common Data
Service platform.
More information is available here.
Requests limits and allocations
8/29/2019 • 4 minutes to read
Starting October 2019, to help ensure service levels, availability and quality, there are limits to the number of
requests users can make across Dynamics 365 for Customer Engagement apps, PowerApps, and Microsoft Flow.
These limits are based on various parameters like the number of requests, throughput, and concurrency, and help
prevent users running applications that could interfere with each other based on resource constraints.
This document will describe the common requests limits as well as the allocation which a user gets based on the
type of license assigned to the user.
* Dynamics 365 Enterprise applications include Dynamics 365 for Sales Enterprise, Dynamics 365 for Customer
Service Enterprise, Dynamics 365 for Field Service, Dynamics 365 for Project Service Automation, Dynamics 365
for Retail, Dynamics 365 for Talent.
** Dynamics 365 Professional includes Dynamics 365 for Sales Professional, Dynamics 365 for Customer Service
Professional.
Users who are running apps and flows without a user license through the PowerApps per app plan or the
Microsoft Flow per flow plan are granted the following per-user API request entitlement.
If a user has multiple plans assigned from different product lines, the total number of requests allowed would be
the sum of requests allocated to each license type. For example, if a user has both a Dynamics 365 for Customer
Service Enterprise plan as well as a PowerApps per app plan, then that user will have a total of 20000 + 1000 =
21000 requests available per 24 hours.
If a user has multiple licenses allocated within the same product line, for example if a user has a Dynamics 365 for
Customer Service Enterprise license as the base license and a Dynamics 365 for Sales Enterprise license attached,
the total number of requests would be what is provided by the base license - Dynamics 365 for Customer Service.
PowerApps and Microsoft Flow capacity add-on
PowerApps and Microsoft Flow capacity add-on allows customers to purchase additional requests which can be
assigned to any user who has a PowerApps/ Microsoft Flow license as well as Dynamics 365 license. These can be
assigned to an application, and administrative and non-interactive users.
Each capacity add-on provides an additional 10,000 requests/24 hours which can be assigned to any user. Multiple
capacity add-ons can also be assigned to the same user.
Dynamics 365 for Customer Engagement administrators can use the Dynamics 365 admin center
(https://port.crm.dynamics.com/G/manage/index.aspx) to manage the environment and settings. Dynamics 365 for
Customer Engagement admin content is available at Administrator Guide for Dynamics 365 for Customer
Engagement apps.
NOTE
In some documentation, we previously referred to Dynamics 365 (online) when we were talking more specifically about
Dynamics 365 for Customer Engagement applications (apps). We have changed this in our current documentation so that it’s
clear when we are referring to the collection of apps that include Sales, Customer Service, Marketing, Field Service, Project
Service Automation, and their related services rather than the whole Dynamics 365 product family of applications and
services, which includes Finance and Operations, Talent, Retail, and Business Central. You may still see “Dynamics 365 (online)”
in some user interfaces (UI). Those strings refer to Dynamics 365 for Customer Engagement apps.
The content from the Customer Engagement admin guide is transitioning to the Power Platform admin guide as
settings and features migrate to the Power Platform Admin center. Until the move to the Power Platform Admin
center is complete, you’ll still be able to manage settings in Customer Engagement as usual.
For example, many of these admin settings in the Dynamics 365 for Customer Engagement web client...
Use links on this page to manage organization-wide settings. App-specific settings will remain in the Dynamics 365
for Customer Engagement apps, and will be accessed through the respective app settings. More information about
managing environment settings in the Power Platform Admin center: Manage environment settings
See also
Reference: Use the various admin centers
Administer PowerApps
6/26/2019 • 2 minutes to read
PowerApps administrators can use the PowerApps Admin center (admin.powerapps.com) and the Power Platform
Admin center to manage environments and settings for PowerApps.
Features from the PowerApps Admin center are being moved to the Power Platform Admin center. Until the move
to the Power Platform Admin center is complete, you’ll still be able to manage environments and settings in
PowerApps Admin center as usual.
Start here:
PowerApps Platform overview
What's the role of a PowerApps administrator?
See also
Reference: Use the various admin centers
Reference: Videos and PowerPoint presentations
Get Help + Support
8/14/2019 • 2 minutes to read
Prerequisites
You have one of the following Office 365 admin roles to enter support requests:
Global
Tenant
Service
Support
Billing
For the following support plans:
Subscription Support
Enhanced Support
Professional Direct Support
Premier Support
Unified Support
NOTE
In the following cases, you might not be able to create a support request or we can't provide relevant solutions:
There is an issue with your Premier Support contract. Please contact your Technical Account Manager (TAM).
Your Support subscription has expired. Please renew.
We couldn't find your Support plan.
If you have a Premier Support plan, please contact your Technical Account Manager (TAM).
If you have a non-Premier Support plan, please verify the plan is active. For support information, see Dynamics
365 Community Forums.
View solutions or enter a support request through the new support center
1. Sign in to the Power Platform Admin center with your admin credentials.
2. Select Help + support > New support request.
4. To get immediate help with your issue, fill in the rest of the information on the page, and then select See
solutions.
Based on the information you provided, you'll see a list of possible solutions to your issue. Select the
relevant solution and see if the content can successfully guide you to a fix.
5. If the guidance doesn't resolve your issue, select Create a support request and fill in the fields in the form
pages.
6. If you have a Premier support plan, select Yes for File as a Premier support request? and fill in the fields.
If you don't know your access or contract ID, please contact your service admin or Technical Account
Manager (TAM ).
NOTE
For Contract ID/Password, please enter your Premier contract ID.
The Contract ID/Password defaults to the Premier contract ID. If you have changed the password when registering
online in the Premier portal, you should use the updated password instead of the contract ID.
Once you submit your request it will appear in the list of support requests.
You can check the status and edit your request on this page.
Fill out the pages and then submit to have your support request receive an expedited review.
We'd love to know your thoughts on the new outage reporting process. Or, if you'd like to be considered for this
limited Preview, please fill out this form.
Dynamics 365 support overview
7/16/2019 • 19 minutes to read
* Provided globally all day, * Provided to customers in Available to customers in Available to customers in
every day Japan all day, every day Europe/Middle East/Africa Asia/Pacific region during
regions during those that region’s business hours
regions' business hours
Spanish/Portuguese available
to customers in South
America during that region’s
business hours
*24/7 (all day, every day) support is available based on issue severity and your support offering.
NOTE
Translation services might be available to assist with additional languages outside normal business hours.
Dynamics 365 Support is provided through partners only. Contact your Cloud Solution Provider (CSP) for assistance.
Business Central
Customer Engagement and AI apps including mixed reality Power Platform Admin center
apps and Insights apps
Dynamics 365 for Finance and Operations (online and on- Lifecycle Services
premises)
Dynamics 365 Business Central Support is provided through partners only. Contact your
Cloud Solution Provider (CSP) for assistance.
Product
SERVICE SUPPORT PORTAL
Why is submitting a request online the preferred method of contacting Dynamics 365 Support?
Submitting support requests online allows us to deliver fast and deep technical expertise in the most effective and
efficient manner possible. Due to the detailed nature of the requests, it is much easier to provide relevant
information online, compared to reading this information over the phone. This model also eliminates unproductive
hold time and provides instead a simple, intuitive online process. As a result, customer problems are routed more
quickly, to the most qualified engineer.
Is there a phone number I can call to contact Dynamics 365 Support?
Contacting Dynamics 365 Support over the phone will not speed up the processing of your request, and you will
get a much better and faster experience by contacting support via the correct support portals listed earlier in this
topic. If you cannot submit a request online, you can find a local support number from our list of regional Global
Customer Service Centers.
How do I submit a support request?
Access to technical support is provided through one of the support plans included with Dynamics 365 or
through one of the premium support plans. Submit a technical support request from the correct support portal
for the product or service for which you need assistance (see the table earlier in this topic). To begin the
support-request submission process:
From the Power Platform Admin center, select Help + support from the left navigation pane and then New
support request from the top navigation.
From the Lifecycle Services portal, choose a project, select Support from the option list, and then select
Submit an incident.
From Support for Business, select the Dynamics 365 product family followed by the specific Dynamics 365
product or service for which you need help.
From the Premier Portal, select New support request from the Support requests page navigation, enter your
access ID and password or select your associated access ID, and proceed with your submission.
Access to subscription management and billing support is included with your Dynamics 365 Online
subscription. To open a Billing and Subscription Management support request, sign in to the Microsoft 365
Portal, select the Admin app, and select the Support – New Support Request option from the left navigation.
This provides access to the Need Help? pane, where you can type your Subscription Management question. If
the recommended articles do not address your issue, select the Contact Support link at the bottom of the
Need Help? pane and provide the additional information needed to submit the support request.
How do I submit a support request if I cannot sign in to the Dynamics 365 support portal for my product or
service?
If you cannot submit a support request online, you can find a local support phone number from our list of regional
Global Customer Service Centers.
How do I get support if I don’t have a Dynamics 365 subscription yet, and I get an error message while creating
one?
You can open a Subscription Management support request through the Microsoft 365 Admin Portal, as long as
you have a tenant administrator sign-in credentials to the portal. To open a Subscription Management support
request, sign in to the Microsoft 365 Admin Portal, select the Admin app, and select the Support – New Support
Request option from the left navigation. This provides access to the Need Help? pane, where you can type your
Subscription Management question. If the recommended articles do not address your issue, select the Contact
Support link at the bottom of the Need Help? pane, and provide the additional information needed to submit the
support request.
Who can submit a support request?
Any users with the tenant admin roles on the tenant containing the Dynamics 365 subscriptions can submit a
support request. End users are not enabled for opening a support request and will need to have their permissions
elevated within the tenant to accomplish this task. There is no alternative to this experience.
How do I authorize another person to submit support requests for a particular Dynamics 365 subscription?
To grant permission, you must have a tenant administrator role on the tenant that contains the Dynamics 365
subscription. Assign the Service Administrator role to all users who want to create and manage support requests
for that given tenant but do not require other permissions. Learn more about role assignments in the portal.
I am developing applications on behalf of my client or assisting my client who is running Dynamics 365. How do I
get support?
You can get support from Dynamics 365 in two ways:
Being an administrator of your customer’s tenant, you can use or purchase a Dynamics 365 Support plan for
that account, as any subscription you own under the same account is covered by the same support plan. You can
also use your Partner benefits (for example, Advanced Support for Partners or Microsoft Partner Network
Support) to submit a support request.
Get support using your customer’s account. To do so, the Partner (you) must have administrator or owner
privileges to the customer’s subscription, most often through being a Delegated Administrator on the tenant.
The Partner can then use the customer’s subscription, or the Partner can use their Dynamics 365 Support
Benefits (for example, Advanced Support for Partners or Microsoft Partner Network Support) to submit a
support request.
What is Initial Response Time, and how quickly can I expect to hear back from someone after submitting my
support request?
Initial Response Time is the period from when you submit your support request to when a Microsoft Support
Engineer contacts you and starts working on your support request. The Initial Response Time varies with both the
support plan and the Business Impact of the request (also known as Severity). Initial Response Times are calculated
using business-hours support for subscription-based support. Elevated support plans will contain non–business
hours response times.
COMPONENT DESCRIPTION
PowerApps applications These are the applications that users interact with on their
desktop or mobile devices. There are two styles of
applications; Canvas and Model-driven. PowerApps Canvas
applications can also be embedded into SharePoint, Teams,
Power BI and Dynamics 365 applications.
Common Data Service A cloud scale datastore to manage data used by business
applications. Data is stored within a set of entities. An initial
schema is defined by the Common Data Model. Common
Data Service provides built-in capabilities for business rules,
workflows, calculated and rollup fields and more.
Connectors There are 200+ connectors that make it easy for application
builders to connect to both Microsoft and 3rd party services,
from Dynamics 365 to Dropbox. The connectors allow Canvas
Apps and Flows to easily use API (application programming
interfaces) services without any developer knowledge. Custom
connectors can also be configured to allow use of APIs that
aren’t covered by the public connectors.
Usage Scenarios
PowerApps is a flexible platform and can be utilized in several different types of scenarios:
Individual/Team Productivity Applications
With self-service scenarios, users are empowered to take their own ideas of how they can optimize what they do
every day and express them in the form of a PowerApps app or Microsoft Flow automation. These assets can be
shared with other team members and when successful promoted to be broader enterprise assets. Previously, these
scenarios were out of reach and required high cost development resources to succeed. As an enterprise
administrator your role is to put in place the guard rails to foster a healthy individual productivity while at the same
time safeguarding sensitive business data and ensuring continuity when individuals leave your company.
Dynamics 365 Applications
These 1st party Microsoft applications are built on and therefore deployed into PowerApps environments and
utilize the Common Data Service for data storage and core platform services. These applications are the quickest
way to tackle common business scenarios like customer engagement, while still allowing tailoring to your
company’s individual requirements. Custom PowerApps apps and Flows can be built to embed into or extend
Dynamics 365 applications even further.
Apps from AppSource
In addition to Microsoft built apps, 3rd party ISVs can also build on top of the PowerApps platform and are found
via the AppSource marketplace. These apps can install into your existing environments or into their own
depending on your unique needs.
SharePoint, Outlook, Teams and Excel
PowerApps apps can also be embedded into the applications users already use. Often this increases user adoption
because they don’t have to learn a totally new application from what they are already using. PowerApps is now the
primary way to customize SharePoint Online list forms. In the past, this required higher maintenance developer
code to accomplish. As an administrator you will be enabling these experiences and ensuring users have the right
permissions and policies to interact with the applications.
Mission critical line of business applications
Using the same tools and technique Microsoft uses to build Dynamics 365, enterprise customers can build their
own line of business applications. These differ from the individual productivity scenario above in that they often
solve broader more complex problems. These applications are also often built by dedicated teams tasked with
implementing them. The teams typically follow a more defined process for building the application. As an
enterprise administrator you will be helping them put in place the necessary Application Lifecycle Management
(ALM ) to facilitate development and day to day operations.
These are the key scenarios you will encounter, but not an endless list as it is really up to the capabilities and the
creativity of your organization to determine how it leverages the platform. As an enterprise administrator, you can
choose to either be a blocking force in the way of that creativity, or an enabler. As an enabler, you will put in place
the necessary licensing, policies and processes needed to ensure success of the teams.
What's the role of a PowerApps administrator?
3/22/2019 • 2 minutes to read
Administration of PowerApps, Microsoft Flow, and Common Data Service is done through the PowerApps Admin
center.
Administration journey
The evolution of an organization adopting PowerApps, Microsoft Flow, and Common Data Service starts with the
administrator. As an administrator, you begin your journey asking how you can protect your organization's data.
What data is accessible through these services? Are there best practices to follow? What is the PowerApps security
model and how should I control access to data? Once you determine how to proceed with data access, you'll then
want to know how you can monitor and manage what users are doing with these services.
When you've figured out control and visibility, the next part of your journey takes you to deployment. Individual
users and teams can deploy apps on their own, but how do you centrally deploy solutions for your entire
organization? And how do you orchestrate updates and identify and fix issues?
The documentation in this section, which you can access from the navigation pane on the left, provides answers to
these questions and guides you on this journey.
Next steps
To get you started administering PowerApps, Microsoft Flow, and Common Data Service, check out the following
articles:
Learn how to create a data loss protection (DLP ) policy.
Learn how to download a list of active users in your tenant.
Learn about environments.
Administering a PowerApps enterprise deployment
3/22/2019 • 2 minutes to read
PowerApps is a high-productivity application development platform from Microsoft. The platform is used by
Microsoft to build their own 1st party applications Dynamics 365 for Sales, Service, Field Service, Marketing and
Talent. This means these applications are built natively on the platform. Enterprise customers can also build their
own custom line of business applications using the same technology. Individual users and teams within your
organization can also build personal or team productivity applications with no-code or low -code.
Check out the following downloadable whitepaper: Administering a PowerApps enterprise deployment
This whitepaper is targeted toward the enterprise application administrator responsible for planning, securing,
deploying, and supporting applications built on the PowerApps platform. The goal of the paper is to help you
understand what currently is in your environment, how to proactively plan for applications being developed and
deployed and finally how to handle day to day administrative tasks to manage deployments. In this whitepaper, we
will cover key concepts, platform architecture, and decisions that will be necessary. Where possible we will help you
develop best practices for your organization to ensure successful deployments and high productivity for users
using the platform.
The PowerApps platform is part of the larger Microsoft Power Platform that also includes PowerBI and Microsoft
Flow, leveraging the common infrastructure of the Common Data Service and Data Connectors. These capabilities
are built on and leverage Microsoft Azure cloud services. Applications built on the PowerApps platform can also
include Azure cloud services to scale from individual productivity to enterprise mission critical line of business
applications.
Early opt-in to 2019 release wave 2
8/28/2019 • 11 minutes to read
Check out the new features releasing from October 2019 through March 2020 for Dynamics 365. See Dynamics
365 release schedule and early access.
NOTE
Most of the early opt-in features are end user impacting changes. Check out the "Enabled for" column in the early access
features table to know the features that will roll out to the end users automatically in October 2019.
TIP
Check out the following video: How to enable early access to 2019 release wave 2 for Dynamics 365 Customer
Engagement.
Which environment can be used for early opt-in to 2019 release wave 2
updates?
You can enable trial and Sandbox environments for the 2019 release wave 2 release. This will allow you the
flexibility to explore features, and then adopt them across your environments at a rate that suits your business.
IMPORTANT
While you can enable a Production environment, we highly recommend that you create a copy of your Production
environment as a Sandbox environment to try out the 2019 release wave 2 updates. After enabling the 2019 release wave 2
update, it can’t be turned off. Therefore, it’s necessary to first test the updates in a Sandbox environment prior to enabling
them in a Production environment that could impact your users in the organization.
Be sure to:
Understand the Dynamics 365: 2019 release wave 2 plan.
Learn what features are included in the 2019 release wave 2 plan.
Review How do I prepare for the 2019 release wave 2 update?
Test the updates before rolling out to Production.
By activating the 2019 release wave 2 updates opt-in, you will get features and updates that are end user impacting only.
These and other changes will be enabled automatically for everyone in October 2019.
IMPORTANT
We highly recommend that you create a copy of your Production environment as a Sandbox environment to try out the
2019 release wave 2 updates. After enabling the 2019 release wave 2 update, it can’t be turned off. Therefore, it’s necessary
to first test the updates in a Sandbox environment prior to enabling it in a Production environment that could impact your
users in the organization.
Select Manage.
Select Update now to activate the 2019 release wave 2 updates and proceed through confirmation dialogs.
The 2019 release wave 2 update is activated for the Dynamics 365 platform, Dynamics 365 for Sales, Customer
Service, Sales Hub, Customer Service Hub, and Marketing.
NOTE
You will need to take additional steps to enable the 2019 release wave 2 updates for the Marketing app. See Enable the 2019
release wave 2 updates for Dynamics 365 for Marketing.
Current apps for which you have licenses are updated; new apps are not installed.
You can verify activation by going to Settings ( )> About where you'll see a screen like the following:
NOTE
You need to select About from a Customer Engagement app page that's displayed in the Unified Interface such as Sales Hub
or Customer Service Hub pages.
The server version will not be updated to the next version after activation.
What features and experiences are available in the 2019 release wave 2
update?
The 2019 release wave 2 update has three kinds of functionalities (as with any other update):
Updates to existing user experiences that are updated automatically.
Updates to existing user experiences that are updated by the admin and maker.
Updates to admin and maker functionality.
By activating the 2019 release wave 2 updates opt-in, you will get updates to existing user experience only. The
exact list of features that are updates to existing user experiences are listed on the early access page.
The release wave 2 plan lists other features across Dynamics 365 – Sales, Service, Marketing, and PowerApps (and
platform). Features that are not updates to the existing user experience will not be part of the 2019 release wave 2
updates opt-in. They can either be new functionalities or additions to maker and admin functionality.
Use the following table to check the status of the 2019 release wave 2 update and see troubleshooting
recommendations.
Dynamics 365 for Sales 2 Internal Solution History page Updating the application might take few
hours. Wait up to 24 hours before
creating a support ticket.
APP/PLATFORM HOW TO IDENTIFY UPDATE SUCCESS TROUBLESHOOT
Dynamics 365 for Customer Service 1 About page Create a support ticket.
Look for 2019 release wave 2 enabled
Marketing 1 Internal
Solution History page / Updating the application might take few
Application tab hours. Wait up to 24 hours before
creating a support ticket.
Enable the 2019 release wave 2 updates for Dynamics 365 for
Marketing
To enable 2019 release wave 2 early access features for Dynamics 365 for Marketing:
1. Opt in for early access on the environment where your Marketing instance is running, as described in How do I
enable the 2019 release wave 2 updates.
2. Run the Marketing setup wizard to update your instance to the August 2019 release. This will install both the
August 2019 Production update and the early-access features when you run it on an environment where early
access is enabled. For instructions, see Re-run the Marketing setup wizard.
NOTE
If you update your Marketing app to the August 2019 release before opting in for early access, then you must re-run the
Marketing setup wizard after opting in to install and enable the early access features.
For an overview of early access features being offered for Marketing, plus links to detailed documentation, see the
August 2019 release announcement for Marketing.
FAQ
When will the 2019 release wave 2 features be enabled?
Starting October 5, 2019, we will enable the 2019 release wave 2 features (end user impacting only) across our
global customer base. Your environment/org will be updated during one of the maintenance windows over a
weekend, starting on the dates listed below. The specific dates that the update will occur will be published in the
Message Center, and each post will include the date, maintenance window, and a link to the Weekly Release Notes
that contain the list of optimizations, fixes, and enhancements. Each environment/org should see the new features
and build numbers by Monday morning, local time.
Here are the current schedules.
Regions
SOUTH
JAPAN AMERICA CANADA INDIA ASIA
Fri, Oct 11 Fri, Oct 4 Fri, Oct 4 Fri, Oct 4 Fri, Oct 11
to to to to to
Sun, Oct 13 Sun, Oct 6 Sun, Oct 6 Sun, Oct 6 Sun, Oct 13
Regions continued
GREAT NORTH
BRITAIN AUSTRALIA EUROPE AMERICA
Other1
Also, once the 2019 release wave 2 updates are enabled for an
environment, they cannot be turned off like any other setting.
(2) Enable the 2019 release wave 2 opt-in from the Power
Platform Admin center
(5) and (6) Validate the app upgrade progress. See Check status of the
update and troubleshoot.
You should:
1. Update customizations to leverage or respond to new
capabilities.
2. Update internal readiness materials based on new features
or user experiences.
3. Prepare internal change management to run in October
(training, communications, and so on).
Home (default)
About this dashboard
This is the default dashboard that provides information on the number of active Common Data Service users,
storage usage, the most active workflows, and more.
What's included in this dashboard
CHART ELEMENT DESCRIPTION
API Calls Number of API calls that were made by the Customer Data
Service environment for the selected time period.
API Pass Rate This chart shows the API pass rate as percentage of total API
calls that were made in the Customer Data Service
environment over the specified time.
Executions This chart shows how many plug-ins have been executed in
the Customer Data Service environment over the specified
time.
Total Operations This chart shows how many operations (create, update,
deletes, reads) have occurred in the Customer Data Service
environment over the specified time.
Most Active Users Performing Operations List of most active users who performed an operation that
caused a Create , Update , Read , or Delete SDK call in
the Dynamics 365 instance over the selected time period.
CHART ELEMENT DESCRIPTION
Top Plug-ins by Failures This chart shows top 10 most failing plug-in in the Customer
Data Service environment over the specified time.
Active Users
Most Used Entities Ten Entities which had the most F6F2B9FD-FCA8-427A-9A0D-
Retrieve , Retrieve Multiple , CAC619A3EE74
Delete , Create , and
Update SDK Calls .
CHART ELEMENT DESCRIPTION CHARTID
Total Page Requests The number of page load requests for D0401D82-6E7F-4B84-8D86-
forms, dashboards, and reports. This is 825D72C68EE6
the count of requests received by the
Dynamics 365 server. Pages that are
cached while browsing won't be
counted.
Active Users Performing Specific Total number of active users (unique 35699BD6-6E49-463D-9DC0-
Operations users) over time who performed an 4E968750778F
operation that caused one of these SDK
calls: Retrieve , Retrieve Multiple ,
Delete , Create , and Update .
Most Active Users Performing List of most active users (unique users) B173E5EC-195E-4803-B79A-
Operations over time who performed an operation 2B1C2704BCB7
that caused one of these SDK calls:
Retrieve , Retrieve Multiple ,
Delete , Create , and Update .
Most Used Custom Entities List of custom entities which had the 5FD1EF3F-64C4-429C-83BC-
most Retrieve , Retrieve Multiple , 95F0AD44B761
Delete , Create , and
Update SDK Calls .
Most Used OOB Entities List of out-of-box entities which had the 46A47AF1-325D-4A00-9F7E-
most Retrieve , Retrieve Multiple , 6059D5AAB722
Delete , Create , and
Update SDK Calls .
Active Users by Device Type The number of active users by device 43771A31-6350-489C-AABD-
type. F7EBB93320C4
Active Users by Security Roles The number of active users by security 09062EF4-4195-4256-B84B-
roles. 68E9CA3C737D
CHART ELEMENT DESCRIPTION CHARTID
Total Operations Over Time The total operations performed by the 9AD78421-6D33-4463-8C17-
selected user in the Customer Data B9C4DF52592D
Service environment over the selected
time period.
Active Users by Entities Show the active users distributed over 2C569F70-7FA8-4C2E-AFCE-
different entities (refreshed hourly) E6126ED2CC52
Active Users Using More than One The number of active users using more 149EFCC8-D336-4F51-A293-
Client than one client, distributed over E173728EC587
different client combinations (refreshed
hourly)
NOTE
Retrieve and RetrieveMultiple SDK calls are reported as Reads.
Update frequency
Active usage chart data is updated as follows.
CHART UPDATE FREQUENCY
System Jobs
About this dashboard
Use this dashboard to monitor and troubleshoot workflows.
What's included in this dashboard
CHART ELEMENT DESCRIPTION CHARTID
System Jobs Pass Rate This chart shows the system job’s pass 1355801D-0EAF-4100-891C-
rate as percentage of system jobs that DB34400AB102
were executed in the Customer Data
Service environment over the specified
time.
System Jobs Throughput/Minute This chart shows the average system 090F51C1-7DBA-42BA-B031-
jobs that have been executed per hour FB1C0999EE28
in the Customer Data Service
environment over the specified time.
Most Active Workflows This chart shows top 10 most executed 7128FF54-B377-4236-ACFF-
workflows in the Customer Data Service EEDF696461AA
environment over the specified time.
Top Workflows by Failures This chart shows top 10 most failing 7A7C0FEE-A7BB-4C14-AF2A-
workflows in the Customer Data Service 76AC00350F82
environment over the specified time.
Click on a workflow to see the failures
and their number of occurrences.
Update frequency
System jobs chart data is updated as follows.
Plug-ins
About this dashboard
Use this dashboard to monitor and troubleshoot plug-ins.
What's included in this dashboard
CHART ELEMENT DESCRIPTION CHARTID
Plug-in Success Rate This chart shows the plug-in pass rate 190F51C1-7DBA-42BA-B031-
as percentage of total plug-in FB1C0999EE28
executions that were executed in the
Customer Data Service environment
over the specified time.
Average Plug-in Execution Time This chart shows average time taken to A4094693-8638-44B5-83B1-
successfully execute a plug-in in the B7EC8C8BFFF6
Customer Data Service environment
over the specified time.
Most Active Plug-ins This chart shows top 10 most executed E505BCFC-5B13-4190-842C-
plug-ins in the Customer Data Service E47622BF0A40
environment over the specified time.
Top Plug-ins by Failures This chart shows top 10 most failing 1193CFAC-E8CF-48E9-9A22-
plug-ins in the Customer Data Service A56AAFC1159C
environment over the specified time.
Update frequency
Plug-ins chart data is updated as follows.
API Success Rate This chart shows the API success rate as 5555801D-0EAF-4100-891C-
percentage of total API calls that were DB34400AB102
made in the Customer Data Service
environment over the specified time.
Top API by Failures This chart shows top 10 failing API calls CCB98704-6E3F-4302-AC96-
in the Customer Data Service 0A4E286061FA
environment over the specified time.
Total API Calls This chart shows how many API calls 9555801D-0EAF-4100-891C-
have been made in total in the DB34400AB102
Customer Data Service environment
over the specified time.
Most Used API This chart shows top 10 most executed C898F79D-D3D0-4894-B2E4-
API calls in the Customer Data Service E94AC854007A
environment database.
API Calls This chart shows how many API calls 4C7B6699-9C07-478C-9C17-
have been made over time in the AF0D17160734
Customer Data Service environment
over the specified time.
Update frequency
API Call Statistics chart data is updated as follows.
Mailbox Usage
About this dashboard
Use this dashboard to monitor email mailbox usage.
What's included in this dashboard
CHART ELEMENT DESCRIPTION CHARTID
Mailbox Details by GEO This chart shows mailbox details like: F90E2120-58B6-4D8B-B913-
ADABE7EA4833
- the number of server-side synch
configured mailboxes
- the number of server-side synch
enabled mailboxes
- the number of server-side synch
Appointments, Contacts, and Tasks
enabled mailboxes
- the number of server-side synch
incoming enabled mailboxes
- the number of server-side synch
outgoing enabled mailboxes categorized
by the geo location the mailbox is
hosted in
Active Email Server Profiles by Geo This chart shows active server-side AE33B341-752B-4AC3-98F7-
synch enabled mailboxes distributed FC11EA8B5DE5
over the geo location they are hosted
in.
CHART ELEMENT DESCRIPTION CHARTID
Number of Active Email Server Profiles This chart shows the number of active 522D6D36-FDFE-4CF4-9086-
email server profiles for the time range 93BAA8628425
configured by the user.
Update frequency
Mailbox Usage chart data is updated as follows.
Storage
For storage information, see Preview: Common Data Service storage capacity.
Download
About this command
Use this command to download the data selected for the date range selected as an Excel spreadsheet.
What's included
DOWNLOAD DESCRIPTION
Most Active Users Performing Operations List of most active users (unique users) over time who
performed an operation that caused one of these SDK calls:
Retrieve , Retrieve Multiple , Delete , Create , and
Update .
Most Used Custom Entities List of custom entities which had the most Retrieve ,
Retrieve Multiple , Delete , Create , and
Update SDK Calls .
Most Used OOB Entities List of out-of-box entities which had the most Retrieve ,
Retrieve Multiple , Delete , Create , and
Update SDK Calls .
Active Users by Device Type List of active users by device type used to access Dynamics
365 (refreshed hourly)
Active Users by Business Unit List of active users by their business unit (refreshed hourly)
Active Users by Security Role List of active users by their security roles (refreshed hourly)
Active Users by Client List of active users, by client type used to access Dynamics
365 (refreshed hourly)
Active Users by Entities List of active users distributed by entity (refreshed hourly)
Update frequency
Download chart data is updated as follows.
CHART UPDATE FREQUENCY
Consider the following about the Customer Data Service analytics calendar:
The Calendar control is not available for the Storage dashboard and not applicable to any storage related
chart as only the latest information is shown for those charts.
Default time range is shown for the past 48 hours.
Data is only shown for the applied time range.
Data is available from the time of release of the solution in AppSource, and will be retained for 30 days.
Data is shown for time series at an hourly aggregation interval.
The data shown for a hourly aggregation interval represents the whole hour. For example, if the number of
active users at 2:00 PM is 5, there were 5 active users between 1:00 and 2:00 PM.
Admin Analytics for Microsoft Flow
5/25/2019 • 2 minutes to read
Data storage
When a user creates an environment in a region, the environment is hosted in that region. All data for that
environment resides within that region for a maximum period of 28 days.
The data refresh cycle is about 3 hours and you can find the last refresh time at the top right corner of the page.
Available reports
The preview contains 6 reports with multiple KPIs in each report. By default, you see reports for the last viewed
environment.
Runs report
By default, you see the Runs report. It provides a view into the daily, weekly, and monthly run data of all flows in an
environment.
Usage report
This report provides insights into the different types of flows in use, the trends, and the flow creator's names.
Created report
This report provides insights into the types of flows created, trends, and details like the created date and the
creator's email address.
Error report
This report provides insights into recurring error types and details like the error count, creator's email address, last
occurred time, and the creator's email address for each flow.
Shared report
This report provides details on the flows shared and trends in the environment.
Connectors report
This report provides details on connectors and their associated flows. Metrics like the number of calls from each
flow per connector, flow runs, and the flow creator's email address are available for both standard and custom
connectors.
Download reports
The reports are built with Power BI. Users can select the ellipsis (…) for a KPI and then select Export data.
Error report provides insights into the toast error trends, types, and counts per app to help drive improvements in
app quality. The toast errors are errors displayed to the end users of the app.
Service Performance report provides details of all standard and custom connectors to understand performance
bottlenecks and client versus service API issues. An environment admin will get insights into:
Connectors used in the environment.
Best and least performant service and the API service response times.
Success rates for each service to determine areas that need attention.
The 50th, 75th, and 90th percentile response times for each service.
The number of HTTP 500 error codes of connectors indicating issues around the server not responding to calls
from the client.
The number of successful connection requests.
All the service performance KPI’s can be filtered with attributes like a specific service or connector, device platform,
player version, and country, state, or city to drill down into the specific API.
How can I download the reports?
The reports are built on Power BI. To download a report, select the ellipsis (…) of the specific KPI and select Export
data.
Select the environment and time period from the drop-down lists, and then select Apply to save the changes. All
the PowerApps analytics reports will now use this selection.
Preview: Common Data Service storage capacity
8/9/2019 • 6 minutes to read
NOTE
For introductory licensing information on the new capacity analytics model, see PowerApps plans.
Data volume continues to grow exponentially, as businesses advance their digital transformation journey and
bring data across their organization together. Modern business applications need to support new business
scenarios, manage new data types, and help organizations with the increasing complexity of compliance mandates.
To support the growing needs of today’s organizations, data storage solutions need to evolve continuously and
provide the right solution to support expanding business needs.
We have updated our capacity analytics reporting to provide important benefits to our customers. Here is a
summary of changes in capacity analytics.
New Capacity page is available in the Power Platform Admin center.
Admins can visualize the data stored in Database, Files, and Logs.
Entitlement information is added to the report to help customers understand available capacity of the tenant
level.
Existing customers get entitlements for new types of capacity (File and Log) but are not impacted by the
licensing change until renewal.
The new capacity analytics reporting provides a single place to view your capacity data.
To view the Capacity page, select Analytics > Capacity > Overall tab in the left-side menu.
DESCRIPTION
WARNING
The suggestions in this topic include deleting notes, attachments, import history, and other data. Before you delete data, be
sure that the data is no longer needed because you cannot retrieve deleted data. There is no “undo” to restore your data
once it has been deleted. This means it may make more sense for you to increase the amount of storage space you have
with your Microsoft Dynamics 365 subscription instead of reducing the amount of storage space used.
NOTE
Except for methods 3 and 5, all these methods require that you have an administrator Dynamics 365 apps scurity role,
such as System Administrator. This gives you permission to delete records in bulk and to delete system jobs.
After performing actions to free up storage, the system can take up to 24 hours to update storage information. We
recommend waiting up to 24 hours and monitoring your storage.
Storage consumed does not directly correspond to the size reported in Common Data Services for Apps; consumption
includes additional storage for metadata and encryption. For example, removing 10MB of storage from a file does not
mean the file size is reduced by 10MB.
Some platform operations require you to wait 24-36 hours to confirm data size changes. Such operations include but are
not limited to upgrades to new versions and introduction of new workflows. Such operations require system adjustments
that might result in a momentary size increase report.
File
Log
Method 10: Delete audit logs
Database
WARNING
If you delete this data, the attachments will no longer be available in Dynamics 365 apps. However, if you have them saved
in Office Outlook, they will still be there.
4. Choose Results.
5. You will now have a list of email messages that have attachments that are larger than ‘X’ bytes. Review the
emails and delete the attachments as needed.
Method 4: Remove email messages with attachments using a bulk deletion job
WARNING
If you delete this data, the email messages and their associated attachments will no longer be available in Dynamics 365
apps. However, if you have them saved in Office Outlook, they will still be there.
12. Choose Next, review the bulk deletion job, and then choose Submit to create the recurring job.
Method 5: Remove notes with attachments using Advanced Find
WARNING
If you delete this data, notes and their associated attachments will no longer be available in Dynamics 365 apps.
1. Choose Advanced Find.
2. In the Look for list, select Notes.
3. In the search criteria area, add criteria similar to the following:
File Size (Bytes) – Is Greater Than – In the text box, type a byte value, such as 1048576.
4. Choose Results.
5. You will now have a list of attachments that are larger than the size you specified.
WARNING
If you delete this data, notes and their associated attachments will no longer be available in Dynamics 365 apps.
12. Choose Next, review the bulk deletion job, and then choose Submit to create the recurring job.
NOTE
You can only delete the oldest audit log in the system. To delete more than one audit log repeat deleting the oldest available
audit log until you have deleted enough logs.
WARNING
If you delete this data, you will no longer be able to tell if an email was sent through bulk email or if a workflow rule ran
against a record. The emails that were sent and the actions that ran against the record in the workflow will remain.
7. Choose Next.
8. In the Name text box, type a name for the bulk deletion job.
9. Select a date and time for the job start time; preferably a time when users are not in Dynamics 365 apps.
10. Select the Run this job after every check box, and then in the days list, select the frequency you want the
job to run.
11. If you want a notification e-mail sent, select the Send an e-mail to me ([email protected] ) when this
job is finished check box.
12. Choose Next, review the bulk deletion job, and then choose Submit to create the recurring job.
Method 2: Evaluate and delete suspended workflows
Sometimes workflows will enter a suspended state because there is a condition that will never be met or some
other reason that will not allow the workflow to continue.
WARNING
Some workflows will be in a suspended state because they are waiting for a condition that has not yet been met, which is
expected. For example, a workflow may be waiting for a task to be completed.
5. Choose Results.
6. In the results window, you can open each item to determine whether the workflow can be deleted.
Method 7: Remove bulk duplicate detection jobs and associated copies of duplicate records
Every time that a duplicate detection job runs, a copy of each duplicate record is stored in the database as part of
the duplicate detection job. For example, if you have 100 duplicate records, every time that you run a duplicate
detection job that finds these duplicates, whether it is manual or reoccurring, those 100 duplicate records will be
stored in the database under that instance of that duplicate job until the duplicates are merged or deleted, or until
the instance of that duplicate detection job is deleted.
1. Go to Settings > Data Management.
2. Choose Duplicate Detection Jobs.
3. Select the duplicate detection job instances you want to delete and then choose Delete (X).
To avoid wasting storage space, make sure duplicates are resolved promptly so that they are not reported
in multiple duplicate detection jobs.
Method 8: Delete bulk import instances using a bulk deletion job
Every time you perform a bulk import, there is a system job associated with that import. The system job details
show which records imported successfully and which records failed.
WARNING
After you delete these bulk import jobs, you will not be able to see what data was imported and you cannot roll back the
import.
12. Choose Next, review the bulk deletion job, and then choose Submit to create the recurring job.
Method 9: Delete bulk deletion job instances using a bulk deletion job
When you are bulk deleting data, such as in many of the methods described in this article, a bulk deletion system
job is created and can be deleted.
WARNING
After you delete these jobs, you will lose the history of the prior bulk deletion jobs that you’ve run.
7. Choose Next.
8. In the Name text box, type a name for the bulk deletion job.
9. Select a date and time for the job start time; preferably a time when users are not in Dynamics 365 apps.
10. Select the Run this job after every check box, and then in the days list, select the frequency you want the
job to run.
11. If you want a notification e-mail sent, select the Send an email to me ([email protected] ) when this
job is finished check box.
12. Choose Next, review the bulk deletion job, and then choose Submit to create the recurring job.
See also
Preview: Common Data Service storage capacity
Environments overview
8/9/2019 • 4 minutes to read
An environment is a space to store, manage, and share your organization’s business data, apps, and flows. They
also serve as containers to separate apps that may have different roles, security requirements, or target audiences.
How you choose to leverage environments depends on your organization and the apps you are trying to build.
For example:
You may choose to only build your apps in a single environment.
You might create separate environments that group the Test and Production versions of your apps.
You might create separate environments that correspond to specific teams or departments in your company,
each containing the relevant data and apps for each audience.
You might also create separate environments for different global branches of your company.
Get early access to the upcoming PowerApps functionalities by joining PowerApps Preview Program.
Environment scope
Each environment is created under an Azure AD tenant, and its resources can only be accessed by users within
that tenant. An environment is also bound to a geographic location, like the US. When you create an app in an
environment, that app is routed to only datacenters in that geographic location. Any items that you create in that
environment (including connections, gateways, flows using Microsoft Flow, and more) are also bound to their
environment’s location.
Every environment can have zero or one Common Data Service databases, which provides storage for your apps.
The ability to create a database for your environment will depend on the license you purchase for PowerApps and
your permission within that environment. For more information, see Pricing info.
When you create an app in an environment, that app is only permitted to connect to the data sources that are also
deployed in that same environment, including connections, gateways, flows, and Common Data Service
databases. For example, let’s consider a scenario where you have created two environments named ‘Test’ and
‘Dev’ and created a Common Data Service database in each of the environments. If you create an app in the ‘Test’
environment, it will only be permitted to connect to the ‘Test’ database, it won't be able to connect to the ‘Dev’
database.
There is also a process to move resources between environments. For more information, see Migrate resources.
Environment permissions
Environments have two built-in roles that provide access to permissions within an environment:
The Environment Admin role can perform all administrative actions on an environment including the
following:
Add or remove a user or group from either the Environment Admin or Environment Maker role
Provision a Common Data Service database for the environment
View and manage all resources created within an environment
Set data loss prevention policies. For more information see Data loss prevention policies.
After creating the database in the environment, you can use System Administrator role instead of
Environment Admin role.
The Environment Maker role can create resources within an environment including apps, connections,
custom connectors, gateways, and flows using Microsoft Flow.
Environment Makers can also distribute the apps they build in an environment to other users in your organization
by sharing the app with individual users, security groups, or to all users in the organization. For more information,
see Share an app in PowerApps.
Users or groups assigned to these environment roles are not automatically given access to the environment’s
database (if it exists) and must be given access separately by a Database owner. For more information, see
Configure database security.
Users or security groups can be assigned to either of these two roles by an Environment Admin from the Power
Platform Admin center or PowerApps Admin center. For more information, see Administer environments in
PowerApps.
NOTE
No users will be added to the Environment Admin role of the default environment automatically. For more information, see
Administer environments in PowerApps.
Choosing an environment
With the introduction of environments, you will now see a new experience when you come to
https://web.powerapps.com. The apps, connections, and other items that are visible in the site will now be filtered
based on the current environment that is selected. Your current environment is specified in the environment picker
near the right edge of the header. To choose a different environment, click or tap the picker, and a list of available
environments appears. Click or tap the one you wish to enter.
An environment will show up in your picker if you meet one of the following conditions:
You are a member of the Environment Admin role for the environment.
You are a member of the Environment Maker role for the environment.
You are not an Environment Admin or Environment Maker of the environment, but you have been given
‘Contributor’ access to at least one app within the environment. For more information, see share an app. In this
case, you will not be able to create apps in this environment. You will only be able to modify the existing apps
that have been shared with you.
See also
Microsoft Learn: Create and manage environments in Common Data Service
Create and manage environments in the Power
Platform Admin center
8/20/2019 • 5 minutes to read
An environment is a space to store, manage, and share your organization’s business data, apps, and flows. It also
serves as a container to separate apps that may have different roles, security requirements, or target audiences.
PowerApps automatically creates a single default environment for each tenant, which is shared by all users in that
tenant.
TIP
For the blog announcing the latest changes to environment creation, see Provisioning and administration updates are now
live in the Power Platform Admin center.
SETTING DESCRIPTION
SETTING DESCRIPTION
Enable Dynamics 365 apps Select Yes and make a selection to automatically deploy
apps such as Sales and Customer Service.
SETTING DESCRIPTION
Deploy sample apps and data Select Yes to include sample apps and data. Sample data
gives you something to experiment with as you learn. You
must select No for Enable Dynamics 365 apps for this
setting to appear.
NOTE
Currently, apps can only be enabled for Production environments. You can create trials at https://trials.dynamics.com.
Prerequisites
To create an environment with a database, you need 1GB available database capacity.
Steps
1. Sign in to the Power Platform Admin center at https://admin.powerplatform.microsoft.com as an admin
(Dynamics 365 Service admin, Office 365 Global admin, or Delegated admin).
2. In the navigation pane, select Environments, and then select New.
3. Enter the following, and then select Next.
SETTING DESCRIPTION
SETTING DESCRIPTION
FAQ
I’m a Dynamics 365 customer. Should I provision using the Dynamics 365 Admin center or Power Platform
Admin center?
Power Platform Admin center provisioning is only available for customers who have transitioned to the new
capacity-based licenses. If you have not transitioned, please use the Dynamics 365 Admin center for provisioning.
What are the new Trial limits for PowerApps customers?
The new trial limits are one per user.
Can an Office 365 licensed user manage and create environments?
No, Office 365 licensed users will not be able to manage environments.
If I create an environment in the Dynamics 365 Admin center, will it appear in the Power Platform Admin center?
Yes it will appear in both admin centers.
What is the PowerApps Production environment limit?
Provisioning environments is based on database capacity. Previously, it was two environments per PowerApps
Plan 2 license. Now all you need is 1GB of available capacity to provision. All environments with or without
Common Data Service will consume at least 1GB capacity.
See also
Manage environments in PowerApps
Preview: Common Data Service storage capacity
Control who can create and manage environments in
the Power Platform Admin center
8/20/2019 • 2 minutes to read
With the new provisioning model, those with the correct licenses can create an environment as long as 1GB of
capacity is available. To restrict environment creation and management to admins, do the following:
1. Sign in to the Power Platform Admin center at https://admin.powerplatform.microsoft.com.
2. Select the Gear icon ( ) in the upper-right corner of the Power Platform site.
3. Select Only specific admins.
The following admins will be able to create new environments in the Power Platform Admin center:
Office 365 Global admins
Dynamics 365 Service admins
Delegated admins
NOTE
Environments created prior to restriction can still managed after restriction by those who created the environment.
Restriction will prevent any new environments being created and managed.
FAQ
Can I disable Trial environment creation for users in the tenant?
Yes. Use the following PowerShell commands to restrict Trial environment creation.
Download and install the admin PowerShell cmdlets as described here. For more information about our cmdlets,
see PowerShell support for PowerApps (preview ) .
Create a Common Data Service database
4/22/2019 • 2 minutes to read
You can create a database and build apps by using Common Data Service as a data store. You can either create
your own custom entities or use the predefined entities. To create a database, you first need to either create an
environment, or be assigned to an existing environment as an Environment Admin. In addition, you must be
assigned the appropriate license. For information on purchasing a plan for using Common Data Service, see
Pricing info.
There are various ways to create a database:
In the PowerApps Admin center
In the Entities pane of powerapps.com
NOTE
For security reasons, we do not support creating a copy of the database for local use.
NOTE
On creating the database, any security group assigned to Environment Admin or Environment Maker role will not be
honored any more. Currently, assigning permissions in database, do not support Azure AD security group.
Privacy notice
With the Microsoft PowerApps Common Data Model we collect and store custom entity and field names in our
diagnostic systems. We use this knowledge to improve the Common Data Model for our customers. The entity and
field names that Creators create help us understand scenarios that are common across the Microsoft PowerApps
community and ascertain gaps in the service’s standard entity coverage, such as schemas related to organizations.
The data in the database tables associated with these entities is not accessed or used by Microsoft or replicated
outside of the region in which the database is provisioned. Note, however, the custom entity and field names may
be replicated across regions and are deleted in accordance with our data retention policies. Microsoft is committed
to your privacy as described further in our Trust Center.
Create and manage environments in the PowerApps
Admin center
8/9/2019 • 3 minutes to read
Create environments
Follow these steps to create a PowerApps environment and a database for that environment.
Prerequisites
To follow this topic, the following items are required:
Either a PowerApps Plan 2 or Microsoft Flow Plan 2 license. Alternatively, you can sign up for a free PowerApps
Plan 2 trial.
PowerApps Environment Admin, Office 365 Global Admin, or Azure Active Directory Tenant Admin
permissions. For more information, see Environments administration in PowerApps.
Sign in to the PowerApps Admin center
Sign in to the Admin center at https://admin.powerapps.com.
Create an environment and database
1. In the navigation pane, click or tap Environments, and then click or tap New environment.
2. In the New environment dialog box, enter a name for the environment, and then select a region and
environment type from the drop-down lists. The region defaults to the Azure Active Directory Tenant home
region, but you may select any region from the drop-down list. You cannot change the region once the
environment is created. When you're done, click or tap Create environment.
Select Preview(United States) to get early access to the upcoming PowerApps functionalities. Learn more
about the PowerApps Preview Program.
3. Once the environment is created, you'll receive a confirmation message in the dialog box and you'll be
prompted to create a database. Click or tap Create database to enable access to the Common Data Service.
Note: At this time, you can only create a database in the Azure Active Directory Tenant home region.
4. Select the currency and language for the data stored in the database. You cannot change the currency or
language once the database is created. When you're done, click or tap Create database.
It may take several minutes to create the database on the Common Data Service. Once the database is
created, the new environment appears in the list of environments on the Environments page.
Click or tap the environment to view the environment details.
Creating an environment
Who can create environments?
Your license determines whether you can create environments.
You can use Copy environment in the Power Platform Admin center to copy the Dynamics 365 for Customer
Engagement apps and all data from any environment to a Sandbox environment. You can select two levels of copy:
Everything or Customizations and schemas only.
NOTE
You can only copy an environment to a Sandbox environment.
Currently, any components that have not been added to a solution (including canvas apps, flows, custom connectors, and
connections) will not be copied to the target environment.
ENTITIES
BusinessUnit
ConnectionRole
Currency
DuplicateRule
DuplicateRuleCondition
EmailServerProfile
FieldPermission
FieldSecurityProfile
ImportMap
InternalAddress
Mailbox
Organization
Position
ENTITIES
Report
Resource
ResourceGroup
Role
RollupField
SavedQuery
SLAKPIenvironment
Solution
Subject
Team
TeamTemplate
Template
SystemUser
NOTE
Environment Admins or System Administrators can copy all available environments. Customer Engagement System
administrators can copy environments for which they have the Environment Admin or System Administrator role.
2. From the left-side menu, select Environments, and then select an environment to copy.
3. Select Copy from the top menu bar.
4. Select the desired copy over level.
5. Select a Sandbox environment.
A target environment can be a Sandbox or Preview environment; not a Production environment.
WARNING
The target environment will be deleted and replaced with a copy of the data and customizations from the source
environment. You won’t be able to recover any deleted data.
A Sandbox environment is any non-production environment of Common Data Service. Isolated from production, a
Sandbox environment is the place to safely develop and test application changes with low risk.
IMPORTANT
You can only reset Sandbox environments.
A reset will permanently delete environment components such as canvas apps, flows, custom connectors, and
connections.
An example scenario
Thomas is looking at the storage consumed by the various Contoso environments and is getting concerned that
they’ll run out of space in one of their Production environments. He’d like to free up some space so he can give the
Production environment some additional storage. He’s also been notified that the Legal department has set a
retention policy on the use of production data in the test environment.
After contacting Isaac, Thomas resets the Sales department’s complete Sandbox environment. The environment is
re-provisioned to factory settings and ready for future use as a Sandbox environment for a future project.
To reset an environment
1. Go to the Power Platform Admin center and sign in using Environment Admin or System Administrator role
credentials.
2. From the left-side menu, select Environments, and then select an environment to reset.
3. Select Reset from the top menu bar.
4. On the Reset environment page, adjust the environment settings as needed and then select Reset.
WARNING
The Sandbox environment will be deleted and reset to factory settings. You will not be able to recover any deleted
data.
Administration mode
When you place a Sandbox environment in administration mode only users with Customer Engagement System
Administrator or System Customizer security roles will be able to sign in to that environment. Administration
mode is useful when you want to make operational changes and not have regular users affect your work, and not
have your work affect regular users.
NOTE
You can only place Sandbox environments in administration mode.
Processes that use code, such as plug-ins or custom workflow assemblies, continue to be processed by the Common Data
Service platform when administration mode is enabled and background operations are disabled.
SETTING DESCRIPTION
Administration mode Select to enable administration mode for the selected Sandbox
environment. Only System Administrators or System
Customizers will be able to sign in to the selected Sandbox
environment.
Custom message Enter a message that will be displayed to all users when they
attempt to sign in.
Currently, you can create two types of Common Data Service environments: Trial or Production. A Trial
environment is useful for trying out Dynamics 365 for Customer Engagement apps at no cost. Trial environments
expire after 30 days.
Open the Environments page to see the environment types you have and the upcoming expiration date for Trial
environments:
If your environment has a database, it might take several hours to convert to a Production environment. You can
monitor the progress through the notification on the Details tab:
Apps (canvas and model-driven) and flows You can use packaging to export apps and flows from one
environment.
Data in the database (Common Data Service environment) You have multiple options:
Export to Excel and save the data. You can import the
data into another environment.
We delete Trial environments that haven’t had any activity in the environment databases for 30 days.
How can I create a Production or an individual environment?
You need to have a PowerApps plan that provides Production environment creation.
You can create an individual environment by signing up for the PowerApps Community Plan. Note that there are
restrictions on sharing apps in individual environments—these environments are meant for personal use only.
How do I identify my plan(s)?
To determine your plan(s), select the Gear icon ( ) in the upper-right corner of the PowerApps site, and then select
Plan(s).
See also
Administer environments in PowerApps
Environments overview
Choose the right plans for your team
Licensing overview
Manage environments in the PowerApps Admin
center
8/9/2019 • 7 minutes to read
NOTE
We are moving environment management from other admin centers to the Power Platform Admin center. Until this is
completed, some management can be or must be done in other admin centers such as the PowerApps Admin center.
In the PowerApps Admin center, manage environments that you've created and those for which you have been
added to the Environment Admin or System Administrator role. From the admin center, you can perform these
administrative actions:
Create environments.
Rename environments.
Add or remove a user or group from either the Environment Admin or Environment Maker role.
Provision a Common Data Service database for the environment.
Set Data Loss Prevention policies.
Set database security policies (as open or restricted by database roles).
Members of the Azure AD tenant Global administrator role (includes Office 365 Global admins) can also
manage all environments that have been created in their tenant and set tenant-wide policies.
For more information, see Environments overview.
To manage an environment in the PowerApps Admin center, you must have one of these roles:
The Environment Admin or System Administrator role of the environment, OR
The Global Administrator role of your Azure AD or Office 365 tenant.
You also need either a PowerApps Plan 2 or Microsoft Flow Plan 2 license to access the admin center. For more
information, see the PowerApps pricing page.
IMPORTANT
Any changes that you make in PowerApps Admin center affect the Microsoft Flow admin center and vice versa.
Create an environment
For instructions on how to create an environment, see Create an environment.
If you are a member of the Global Administrator role of your Azure AD or Office 365 tenant, all the
environments that have been created by users in your tenant appear, because you're automatically an
Environment Admin for all of them.
3. in the Name text box, enter the new name, then click Save.
If you have created the database in the environment, then you will not see this option. You can rename
the environment from Dynamics 365 Admin center by clicking on the link in Details tab.
After you create a database, choose a security model. For more information, see Configure database security.
NOTE
If the environment has the database, then you need to assign users the System Administrator role, instead of
the Environment Admin role.
The Environment Maker role can create resources within an environment including apps, connections,
custom connectors, gateways, and flows using Microsoft Flow. Environment Makers can also distribute
the apps they build in an environment to other users in your organization. They can share the app with
individual users, security groups, or all users in the organization. For more information, see Share an app
in PowerApps.
To assign a user or a security group to an environment role, an Environment Admin can take these steps in the
PowerApps Admin center:
1. Select the environment in environments table.
b. Specify the names of one or more users or security groups in Azure Active Directory, or specify that
you want to add your entire organization.
NOTE
Users or groups assigned to these environment roles are not automatically given access to the environment’s database (if
it exists) and must be given access separately by a Database owner. For more information, see Configure database
security.
Database security
The ability to create and modify a database schema and to connect to the data stored within a database that is
provisioned in your environment is controlled by the database's user roles and permission sets. You can manage
the user roles and permission sets for your environment's database from the User roles and Permission sets
section of the Security tab. For more information, see Configure database security.
Data policies
An organization's data must be protected so that it isn't shared with audiences that should not have access to it.
To protect this data, you can create and enforce policies that define which consumer services and connector-
specific business data can be shared with. Policies that define how data can be shared are referred to as data
loss prevention (DLP ) policies. You can manage the DLP policies for your environments from the Data Policies
section of the PowerApps Admin center. For more information, see Data loss prevention policies.
YOUR AZURE AD TENANT'S HOME LOCATION REGIONS WHERE YOU CAN CREATE A DATABASE
Any other location Any region except India, Australia, and Preview (United States)
NOTE
On-premises data gateways aren't available in the India region or in custom environments. You must create gateways in the
default environment.
Manage the encryption key
8/9/2019 • 10 minutes to read
IMPORTANT
Self-managed database encryption keys are only available for customers who have more than 1000 P1/P2 licensed user seats
and who have opted in to the feature. To opt in to this program, contact your account or sales representative.
Encryption key management is only applicable to Azure SQL environment databases. The following features and services use
their own key to encrypt their data and can’t be encrypted with the self-managed encryption key:
Relevance Search
Mobile Offline
Activity Log (Office 365 portal)
Exchange (Server-side sync)
IMPORTANT
To prevent the malicious administrator from interrupting the business operations by locking the database, the managed keys
feature doesn't allow tenant environments to be locked for 72 hours after the encryption key has changed or activated.
Additionally, anytime an encryption key is changed for a tenant, all Dynamics 365 for Customer Engagement apps (online)
administrators receive an email message alerting them of the key change. This provides up to 72 hours for other
administrators to roll back any unauthorized key changes.
WARNING
When you perform the steps described here for the first time you are opting in to self-managing your encryption keys. More
information: Understand the potential risk when you manage your keys
1
1. Select Upload the Key, select the .pfx or .byok1 file, and then select Open.
2. Enter the password for the key, and then select Create.
1 For.byok encryption key files, make sure you use the subscription id as shown on the screen when you export the
encryption key from your local HSM. More information: How to generate and transfer HSM -protected keys for
Azure Key Vault
To perform this task using PowerShell, see New -CRMImportProtectionKey and Set-CrmTenantProtectionKey.
Activate an encryption key for a tenant
Once an encryption key is generated or uploaded for the tenant, it can be activated.
1. Sign in to the Power Platform Admin Center (preview ).
2. Select the Environments tab, and then select Manage encryption keys on the toolbar.
3. Select Confirm to acknowledge the manage key risk.
4. Select a key that has an Available state and then select Activate key on the toolbar.
5. Select Confirm to acknowledge the key change and that all administrators will be notified. More information:
Encryption key change notification
When you activate a key for the tenant, it takes a while for the key management service to activate the key. The
status of the Key state displays the key as Installing when the new or uploaded key is activated. Once the key is
activated, the following occurs:
All encrypted environments automatically get encrypted with the active key (there is no downtime with this
action).
When activated, the encryption key will be applied to all environments that are changed from Microsoft-
provided to self-managed encryption key.
To perform this task using PowerShell, see Set-CrmProtectWithTenantKey.
IMPORTANT
To streamline the key management process so that all environments are managed by the same key, the active key can't be
updated when there are locked environments. All locked environments must be unlocked before a new key can be activated.
If there are locked environments that don't need to be unlocked, they must be deleted.
NOTE
After an encryption key is activated, you can’t activate another key for 24 hours.
You should never lock the tenant environments as part of your normal business process. When you lock a
Common Data Service or Dynamics 365 for Customer Engagement tenant, all the environments will be taken
completely offline and they can't be accessed by anyone, including Microsoft. Additionally, services such as
synchronization and maintenance are all stopped. If you decide to leave the service, locking the tenant can ensure
that your online data is never accessed again by anyone.
Note the following about tenant environments locking:
Locked environments can’t be restored from backup.
Locked environments are deleted if not unlocked after 28 days.
You can’t lock environments for 72 hours after an encryption key change.
Locking a tenant locks all environments within the tenant.
Tenant locking is currently unavailable from the Power Platform Admin Center (preview ). To lock a tenant using the
PowerShell cmdlet, see Set-CrmLockTenantProtectedInstances.
Unlock locked environments
To unlock environments you must first upload and then activate the tenant encryption key with the same key that
was used to lock the tenant. Please note that locked environments do not get unlocked automatically once the key
has been activated. Each locked environment has to be unlocked individually.
Environment unlocking is currently unavailable from the Power Platform Admin Center (preview ). To unlock an
environment using the PowerShell cmdlet, see Set-CrmUnlockTenantProtectedInstance.
PowerApps updates the platform and its capabilities every few days or weeks. The PowerApps Preview program is
a way to get early access to those upcoming functionalities and updates prior to availability in other regions
(where customer production apps are deployed).
With the PowerApps Preview program, you can:
Try out, learn, and dogfood upcoming functionalities: Many functionalities will be rolled out first in the
preview for a few days to get feedback. By participating in the Preview program, you can learn about new
functionalities sooner and provide feedback. Also, you will be ready to quickly take advantage of new
functionalities as soon as they reach regions where their production apps are created.
Enable business continuity by ensuring current apps will continue to work with the upcoming updates
(vNext) of PowerApps.
2. Accessing apps created in First Release environment from the Desktop Studio in Windows
As mentioned above, desktop studio in Windows is not available in preview. Hence, creating or editing of
the apps in the preview environment might not be compatible with your Desktop Studio and shows the
following error message:
In such a case, we recommend you use Web Studio to create or edit an app in the preview environment.
3. Database cannot be created in Preview region
Currently, you cannot create a database with Common Data Service in an environment in Preview (United
States) region - we're working on it.
Manage Common Data Service settings
3/22/2019 • 2 minutes to read
Settings
SETTINGS DESCRIPTION
Basic behavior
Auto save Default: On. If On, after a record is created (initially saved), any
changes made to a form will automatically be saved thirty
seconds after the change is made. The 30-second period
starts again after a change is made. If no changes are made,
the automatic save doesn’t happen. More information:
Manage auto-save
Load default static content from Content Delivery Network Default: On. Customer Engagement apps will load out-of-the-
box static content from the Azure Content Delivery Network
(CDN) service. For firewall restrictions and IP whitelisting
related issues, system administrators can select Off to disable
the Azure Azure Content Delivery Network feature.
Share reassigned records with original owner Default: Off. Select whether a record is shared with the original
owner of the record, or completely reassigned to another user.
Open in application mode Default: Off. Select On to enable application mode. When this
mode is enabled, Customer Engagement apps can be opened
in a browser without menus, navigation, or toolbars. Hiding
these parts of the browser causes Customer Engagement
apps to appear like a separate application rather than a
website.
Use Unified Interface only Default: Off. When you enable Unified Interface Only, all your
apps, including those designed for the legacy web client, run in
Unified Interface all the time. Environments with legacy web
client apps will show a notification on the Apps home page,
prompting System Administrators to update those apps to
Unified Interface.
SETTINGS DESCRIPTION
Use legacy form rendering Default: Off. For compatibility, use the legacy form rendering
engine. Note that performance may be adversely affected. If
you have forms that include unsupported customizations,
these enhancements can cause compatibility problems. To
avoid this, you can temporarily turn the form enhancements
off by setting to On. We recommend that you reset this
setting to Off after addressing scripting problems so you can
take advantage of optimized forms. Note: When a form that
includes unsupported customizations is used, such as
unsupported JavaScript, the form may fail to load or the user
will receive an error message.
If the form just fails, set the Use legacy form rendering
option to On. If the form loads after you select this
option, you may have unsupported customizations.
If the user receives an error, select "View the data that
will be sent to Microsoft" and see the details in the
tags.
Formatting
Full name display order Default: First Name. Select the order in which you want
customer and user names to be displayed.
Display currencies using Default: Currency symbol. Set how to display currencies, either
by a currency symbol, which is the default setting, or by
currency code. For example, a currency symbol could be $, and
the currency code could be USD.
Pricing decimal precision Default: 0. Select how many decimal points to use for a
currency.
Display behavior
Show app download message Default: On. If On, users will see a message regarding
downloading the Dynamics 365 for tablets app.
Show legacy app to everyone, not just admin Default: On. The legacy web app, also known as Dynamics 365
- custom, is hidden from end users when a new environment
is provisioned. It is always visible to those with System
Administrator and System Customizer roles, and to other
custom roles with similar privileges. More information:
Dynamics 365 - custom.
Legacy app name Enter the label to use for the legacy app. This appears on the
Dynamics 365 for Customer Engagement apps home page.
The legacy label is Dynamics 365 - custom. More information:
Dynamics 365 - custom.
Show welcome screen on sign in Default: On. Select On to see the detailed card form in a
dashboard. If set to Off, only the header and minimal details
are displayed in the card form.
Show Microsoft Flow on forms and in the site map Default: On. Select On to enable embedded Microsoft Flows in
your organization. More information: Enable embedded Flow
to automate processes.
SETTINGS DESCRIPTION
Show dashboard cards in expanded state Default: Off. Select On to see the detailed card form in a
dashboard. If set to Off, only the header and minimal details
are displayed in the card form.
Manage feature settings
7/26/2019 • 3 minutes to read
Settings
SETTINGS DESCRIPTION
AI Builder (preview)
Create AI models in PowerApps Default: On. If Off, the environment will not have access to AI
Builder. Not all environments will have this setting. For
information about environments eligible for this feature and
related details, see Administer AI Builder
Embedded content
Power BI visualization embedding Default: Off. More information: Add or edit Power BI
visualizations on your dashboard
Bing Maps Default: Off. If On, Dynamics 365 for Customer Engagement
apps (on-premises) users will need to enter a Bing Maps key.
Customer Engagement apps users don’t need to enter a key.
Prevent social data in Dynamics Default: Off. If you don’t want to receive social data in
Dynamics 365 for Customer Engagement apps, select Off. If
you disable social engagement, your organization will not be
able to receive social data in Dynamics 365 for Customer
Engagement apps. Users can continue to work with existing
social data, however.
Communications
Skype presence Default: On. If On, instant messaging will display the current
status for users, contacts, opportunities, or leads. This only
applies to lists and sub-lists for entities with an updated user
interface.
SETTINGS DESCRIPTION
Country/region code prefixing for numbers Default: On. If On, Customer Engagement apps will prefix the
country/region code to numbers that users are trying to call.
Set the telephony provider Default: On. Choose which provider to enable outbound calls
from within Dynamics 365 for Customer Engagement apps.
This setting doesn’t apply to Dynamics 365 for tablets or
Dynamics 365 for phones.
Search
Relevance Search Default: Off. If On, you can use Relevance search to find
records across multiple entities, sorted by relevance.
Quick Find record limits Default: On. If On, if more than 10,000 records are found, a
message will be displayed that suggests a more selective
search. More information: Configure Relevance search for the
organization
Help features
Custom help for customizable entities Default: Off. Select On to replace the default Help content with
custom Help designed for your users. After you enable custom
Help, you can enter a Global Custom Help URL.
Global custom help URL To replace the default Help with a single URL for all
customizable record types (entities), enter the URL here. You
also have the option of entering override URLs for each record
type (entity) for customizable record types. More information:
Create your own guided help
Append parameters to URL Default: Not selected. Select On to append parameters to the
URL, you can make your Help content more dynamic. For
example, you can access parameters for User Language Code,
Entity Name, Entry Point, and Form ID. More information:
Create your own guided help
Learning path Default: Off. Changes access to Learning Path for an entire
organization. More information: On/off switch for Learning
Path (guided help).
Learning path authoring Default: Off. Set to On if you want enable users to author
Learning Path content. More information: Create your own
guided help (Learning Path) for your customers
Auditing
Enable languages in your organization to display the user interface and Help in a language that’s different from the
base language.
The following table shows tasks that are associated with changing regional and language options for your
organization.
TASK DESCRIPTION
Set the base language The base language determines default settings for regional
and language options in Dynamics 365 apps. After the base
language is set, you can’t change it.
Enable or disable languages You can enable or disable available languages in the Settings
area.
Add and remove currencies Similar to setting the base language, you select your
organization's base currency during the purchasing process for
a subscription to Dynamics 365 apps. After the base currency
is set, you can’t change it.
Deactivate or activate currency records You can’t delete currency records that are being used by other
records, such as opportunities or invoices. However, you can
deactivate currency records so they won’t be available for
future transactions.
NOTE
It may take several minutes to provision or unprovision the languages.
Settings
SETTINGS DESCRIPTION
Privacy preference More information: Set error reporting preferences for the
organization
Show privacy statement link for this organization Default: Off. Select to display the privacy statement link.
Privacy statement URL Provide users with a link to your organization's privacy
statement. If you show the link, it will be added to the
Settings menu.
Default action to take when an error occurs More information: Replace the privacy statement for the
organization
Ask the user for permission to send an error report to Default: Not selected.
Microsoft
Blocked attachments
Set blocked file extensions for attachments (semicolon Prevent upload or download of certain attachment types that
separated) are considered dangerous. Separate file extensions with a
semicolon.
Set custom session timeout Default: Off. Select On to specify values different from default
values.
Enter maximum session length Default: 1440. After the time you set is reached, users must
re-authenticate to Customer Engagement apps.
How long before the session expires do you want to show a Default: 20. After the time you set is reached, users receive an
timeout warning? expiration warning.
Set inactivity timeout Default: Off. Enable to automatically sign out a user.
4. Select Save.
NOTE
Any user with the System Administrator security role will always see the Microsoft privacy statement and not the
organization’s privacy statement.
3. Select Save.
When you use this setting, you can control error reporting for the entire organization by:
Not allowing users to make changes in how error reporting occurs.
Changing the default behavior for how error reporting happens.
Customize regional options
8/19/2019 • 2 minutes to read
You can customize how numbers, currencies, times, and dates appear to everyone in your organization.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Business > Regional formatting.
Make sure you have the System Administrator or System Customizer security role or equivalent permissions to
update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
1. Select an environment and go to Settings > Business > Regional formatting.
2. Select the check box Enable the default country/region code, and then choose a region code.
3. Select the Formats tab.
4. From the Current Format list, select the language and country or region, and then select Customize.
5. In the Customize Regional Options dialog box, you can change the default settings for the selected
format. View how the changes will look in the preview boxes.
Select the Number tab to change the decimal symbol, digit grouping symbol, digit groups, and
negative numbers.
Select the Currency tab to change the currency format, negative currency amounts, and number of
decimal places.
Select the Time tab to change the time format, time separator, and notation for morning and
afternoon.
Select the Date tab to set the type of calendar, first day of the week, first week of the year, formats for
long and short dates, and whether or not to show week numbers in calendar views.
Select Apply to apply the changes and continue working in the dialog box, or select OK to save the
changes and close the dialog box.
6. Select OK.
Create or edit business units
8/19/2019 • 3 minutes to read
In Dynamics 365 apps, a business unit is a logical grouping of related business activities.
If your Dynamics 365 apps organization is structured around departments or divisions that have separate
products, customers, and marketing lists, you might want to create business units. Business units are mapped to an
organization’s departments or divisions. Users can securely access data in their own business unit, but they can’t
access data in other business units.
Business units, security roles, and users are linked together in a way that conforms to the Dynamics 365 apps role-
based security model. Use business units together with security roles to control data access so people see just the
information they need to do their jobs.
Keep the following in mind when creating business units:
The organization (also known as the root business unit) is the top level of a Dynamics 365 apps business
unit hierarchy. Dynamics 365 apps automatically creates the organization when you install or provision
Dynamics 365 apps. You can’t change or delete the organization name.
Each business unit can have just one parent business unit.
Each business unit can have multiple child business units.
Dynamics 365 apps security roles and users are associated with a business unit. You must assign every user
to one (and only one) business unit.
You can assign a team to just one business unit, but a team can consist of users from one or many business
units. Consider using a team if you have a situation where users from different business units need to work
together on a shared set of records.
IMPORTANT
By changing the business unit for a user, you remove all security role assignments for the user. At least one security role must
be assigned to the user in the new business unit.
The hierarchy security model is an extension to the existing Dynamics 365 apps security models that use business
units, security roles, sharing, and teams. It can be used in conjunction with all other existing security models. The
hierarchy security offers a more granular access to records for an organization and helps to bring the maintenance
costs down. For example, in complex scenarios, you can start with creating several business units and then add the
hierarchy security. This will achieve a more granular access to data with far less maintenance costs that a large
number of business units may require.
NOTE
While the hierarchy security model provides a certain level of access to data, additional access can be obtained by using other
forms of security, such as security roles.
Manager hierarchy
The Manager hierarchy security model is based on the management chain or direct reporting structure, where the
manager’s and the report’s relationship is established by using the Manager field on the system user entity. With
this security model, the managers are able to access the data that their reports have access to. They are able to
perform work on behalf of their direct reports or access information that needs approval.
NOTE
With the Manager hierarchy security model, a manager has access to the records owned by the user or by the team that a
user is a member of, and to the records that are directly shared with the user or the team that a user is a member of. When a
record is shared by a user who is outside of the management chain to a direct report user with Read-only access, the direct
report's manager only has Read-only access to the shared record.
In addition to the Manager hierarchy security model, a manager must have at least the user level Read privilege on an entity,
to see the reports’ data. For example, if a manager doesn’t have the Read access to the Case entity, the manager won’t be
able to see the cases that their reports have access to.
For a non-direct report in the same management chain of the manager, a manager has the Read-only access to the
non-direct report’s data. For a direct report, the manager has the Read, Write, Update, Append, AppendTo access to
the report’s data. To illustrate the Manager hierarchy security model, let’s take a look at the diagram below. The
CEO can read or update the VP of Sales data and the VP of Service data. However, the CEO can only read the Sales
Manager data and the Service Manager data, as well as the Sales and Support data. You can further limit the
amount of data accessible by a manager with “Depth”. Depth is used to limit how many levels deep a manager has
Read-only access to the data of their reports. For example, if the depth is set to 2, the CEO can see the data of the
VP of Sales, VP of Service and Sales and Service Managers. However, the CEO doesn’t see the Sales data or the
Support data.
It is important to note that if a direct report has deeper security access to an entity than their manager, the manager
may not able to see all the records that the direct report has access to. The following example illustrates this point.
A single business unit has three users: User 1, User 2 and User 3.
User 2 is a direct report of User 1.
User 1 and User 3 have User level read access on the Account entity. This access level gives users access to
records they own, the records that are shared with the user, and records that are shared with the team the
user is a member of.
User 2 has Business Unit read access on the Account entity. This allows User 2 to view all of the accounts for
the business unit, including all of the accounts owned by User 1 and User 3.
User 1, as a direct manager of User 2, has access to the accounts owned by or shared with User 2, and any
accounts that are shared with or owned by a team that User 2 is a member of. However, User 1 doesn’t have
access to the accounts of User 3, even though his or her direct report may have access to User 3 accounts.
Position hierarchy
The Position hierarchy is not based on the direct reporting structure, like the Manager hierarchy. A user doesn’t
have to be an actual manager of another user to access user’s data. As an administrator, you will define various job
positions in the organization and arrange them in the Position hierarchy. Then, you add users to any given position,
or, as we also say, “tag” a user with a particular position. A user can be tagged only with one position in a given
hierarchy, however, a position can be used for multiple users. Users at the higher positions in the hierarchy have
access to the data of the users at the lower positions, in the direct ancestor path. The direct higher positions have
Read, Write, Update, Append, AppendTo access to the lower positions’ data in the direct ancestor path. The non-
direct higher positions, have Read-only access to the lower positions’ data in the direct ancestor path.
To illustrate the concept of the direct ancestor path, let’s look at the diagram below. The Sales Manager position has
access to the Sales data, however, it doesn’t have access to the Support data, which is in the different ancestor path.
The same is true for the Service Manager position. It doesn’t have access to the Sales data, which is in the Sales
path. Like in the Manager hierarchy, you can limit the amount of data accessible by higher positions with “Depth”.
The depth will limit how many levels deep a higher position has a Read-only access, to the data of the lower
positions in the direct ancestor path. For example, if the depth is set to 3, the CEO position can see the data all the
way down from the VP of Sales and VP of Service positions, to the Sales and Support positions.
NOTE
With the Position hierarchy security, a user at a higher position has access to the records owned by a lower position user or
by the team that a user is a member of, and to the records that are directly shared to the user or the team that a user is a
member of.
In addition to the Position hierarchy security model, the users at a higher level must have at least the user level Read privilege
on an entity to see the records that the users at the lower positions have access to. For example, if a user at a higher level
doesn’t have the Read access to the Case entity, that user won’t be able to see the cases that the users at a lower positions
have access to.
IMPORTANT
To make any changes in Hierarchy security, you must have the Change Hierarchy Security Settings privilege.
After you have enabled the hierarchy modeling, choose the specific model by selecting the Manager Hierarchy or
Custom Position Hierarchy. All system entities are enabled for hierarchy security out-of-the-box, but, you can
exclude selective entities from the hierarchy. The Hierarchy Security window shown below:
Set the Depth to a desired value to limit how many levels deep a manager has a Read-only access to the data of
their reports. For example, if the depth equals to 2, a manager can only access his or her accounts and the accounts
of the reports two levels deep. In our example, if you log in into Dynamics 365 apps not as an Administrator, who
can see all accounts, but, as the VP of Sales, you’ll only be able to see the active accounts of the users shown in the
red rectangle, as illustrated below:
NOTE
While, the hierarchy security grants the VP of Sales access to the records in the red rectangle, additional access can be
available based on the security role that the VP of Sales has.
To add a user to a particular position in the Position hierarchy, use the lookup field called Position on the user
record’s form, as show below:
IMPORTANT
To add a user to a position or change the user’s position, you must have the Assign position for a user privilege.
To change the position on the user record’s form, on the nav bar, choose More (…) and choose a different position,
as shown below:
The example of the enabled users with their corresponding positions is shown below:
Performance considerations
To boost the performance, we recommend:
Keep the effective hierarchy security to 50 users or less under a manager/position. Your hierarchy may have
more than 50 users under a manager/position, but you can use the Depth setting to reduce the number of
levels for Read-only access and with this limit the effective number of users under a manager/position to 50
users or less.
Use hierarchy security models in conjunction with other existing security models for more complex
scenarios. Avoid creating a large number of business units, instead, create fewer business units and add
hierarchy security.
See also
Security concepts for Microsoft Dynamics 365 for Customer Engagement
Query and visualize hierarchical data
Hierarchy security to control access
8/20/2019 • 9 minutes to read
The hierarchy security model is an extension to the existing Dynamics 365 apps security models that use business
units, security roles, sharing, and teams. It can be used in conjunction with all other existing security models. The
hierarchy security offers a more granular access to records for an organization and helps to bring the maintenance
costs down. For example, in complex scenarios, you can start with creating several business units and then add the
hierarchy security. This will achieve a more granular access to data with far less maintenance costs that a large
number of business units may require.
NOTE
While the hierarchy security model provides a certain level of access to data, additional access can be obtained by using other
forms of security, such as security roles.
Manager hierarchy
The Manager hierarchy security model is based on the management chain or direct reporting structure, where the
manager’s and the report’s relationship is established by using the Manager field on the system user entity. With
this security model, the managers are able to access the data that their reports have access to. They are able to
perform work on behalf of their direct reports or access information that needs approval.
NOTE
With the Manager hierarchy security model, a manager has access to the records owned by the user or by the team that a
user is a member of, and to the records that are directly shared with the user or the team that a user is a member of. When a
record is shared by a user who is outside of the management chain to a direct report user with Read-only access, the direct
report's manager only has Read-only access to the shared record.
In addition to the Manager hierarchy security model, a manager must have at least the user level Read privilege on an entity,
to see the reports’ data. For example, if a manager doesn’t have the Read access to the Case entity, the manager won’t be
able to see the cases that their reports have access to.
For a non-direct report in the same management chain of the manager, a manager has the Read-only access to the
non-direct report’s data. For a direct report, the manager has the Read, Write, Update, Append, AppendTo access to
the report’s data. To illustrate the Manager hierarchy security model, let’s take a look at the diagram below. The
CEO can read or update the VP of Sales data and the VP of Service data. However, the CEO can only read the
Sales Manager data and the Service Manager data, as well as the Sales and Support data. You can further limit the
amount of data accessible by a manager with “Depth”. Depth is used to limit how many levels deep a manager has
Read-only access to the data of their reports. For example, if the depth is set to 2, the CEO can see the data of the
VP of Sales, VP of Service and Sales and Service Managers. However, the CEO doesn’t see the Sales data or the
Support data.
It is important to note that if a direct report has deeper security access to an entity than their manager, the manager
may not able to see all the records that the direct report has access to. The following example illustrates this point.
A single business unit has three users: User 1, User 2 and User 3.
User 2 is a direct report of User 1.
User 1 and User 3 have User level read access on the Account entity. This access level gives users access to
records they own, the records that are shared with the user, and records that are shared with the team the
user is a member of.
User 2 has Business Unit read access on the Account entity. This allows User 2 to view all of the accounts for
the business unit, including all of the accounts owned by User 1 and User 3.
User 1, as a direct manager of User 2, has access to the accounts owned by or shared with User 2, and any
accounts that are shared with or owned by a team that User 2 is a member of. However, User 1 doesn’t have
access to the accounts of User 3, even though his or her direct report may have access to User 3 accounts.
Position hierarchy
The Position hierarchy is not based on the direct reporting structure, like the Manager hierarchy. A user doesn’t
have to be an actual manager of another user to access user’s data. As an administrator, you will define various job
positions in the organization and arrange them in the Position hierarchy. Then, you add users to any given position,
or, as we also say, “tag” a user with a particular position. A user can be tagged only with one position in a given
hierarchy, however, a position can be used for multiple users. Users at the higher positions in the hierarchy have
access to the data of the users at the lower positions, in the direct ancestor path. The direct higher positions have
Read, Write, Update, Append, AppendTo access to the lower positions’ data in the direct ancestor path. The non-
direct higher positions, have Read-only access to the lower positions’ data in the direct ancestor path.
To illustrate the concept of the direct ancestor path, let’s look at the diagram below. The Sales Manager position has
access to the Sales data, however, it doesn’t have access to the Support data, which is in the different ancestor path.
The same is true for the Service Manager position. It doesn’t have access to the Sales data, which is in the Sales
path. Like in the Manager hierarchy, you can limit the amount of data accessible by higher positions with “Depth”.
The depth will limit how many levels deep a higher position has a Read-only access, to the data of the lower
positions in the direct ancestor path. For example, if the depth is set to 3, the CEO position can see the data all the
way down from the VP of Sales and VP of Service positions, to the Sales and Support positions.
NOTE
With the Position hierarchy security, a user at a higher position has access to the records owned by a lower position user or
by the team that a user is a member of, and to the records that are directly shared to the user or the team that a user is a
member of.
In addition to the Position hierarchy security model, the users at a higher level must have at least the user level Read privilege
on an entity to see the records that the users at the lower positions have access to. For example, if a user at a higher level
doesn’t have the Read access to the Case entity, that user won’t be able to see the cases that the users at a lower positions
have access to.
IMPORTANT
To make any changes in Hierarchy security, you must have the Change Hierarchy Security Settings privilege.
After you have enabled the hierarchy modeling, choose the specific model by selecting the Manager Hierarchy or
Custom Position Hierarchy. All system entities are enabled for hierarchy security out-of-the-box, but, you can
exclude selective entities from the hierarchy. The Hierarchy Security window shown below:
Set the Depth to a desired value to limit how many levels deep a manager has a Read-only access to the data of
their reports. For example, if the depth equals to 2, a manager can only access his or her accounts and the accounts
of the reports two levels deep. In our example, if you log in into Dynamics 365 apps not as an Administrator, who
can see all accounts, but, as the VP of Sales, you’ll only be able to see the active accounts of the users shown in the
red rectangle, as illustrated below:
NOTE
While, the hierarchy security grants the VP of Sales access to the records in the red rectangle, additional access can be
available based on the security role that the VP of Sales has.
To add a user to a particular position in the Position hierarchy, use the lookup field called Position on the user
record’s form, as show below:
IMPORTANT
To add a user to a position or change the user’s position, you must have the Assign position for a user privilege.
To change the position on the user record’s form, on the nav bar, choose More (…) and choose a different position,
as shown below:
The example of the enabled users with their corresponding positions is shown below:
Performance considerations
To boost the performance, we recommend:
Keep the effective hierarchy security to 50 users or less under a manager/position. Your hierarchy may have
more than 50 users under a manager/position, but you can use the Depth setting to reduce the number of
levels for Read-only access and with this limit the effective number of users under a manager/position to 50
users or less.
Use hierarchy security models in conjunction with other existing security models for more complex
scenarios. Avoid creating a large number of business units, instead, create fewer business units and add
hierarchy security.
See also
Security concepts for Microsoft Dynamics 365 for Customer Engagement
Query and visualize hierarchical data
Enhance security by encrypting your data
8/19/2019 • 2 minutes to read
Dynamics 365 apps uses standard SQL Server cell level encryption for a set of default entity attributes that contain
sensitive information, such as user names and email passwords. This feature can help organizations meet FIPS
140-2 compliance.
For Dynamics 365 (online) apps, all new and upgraded organizations use data encryption by default. Data
encryption can’t be turned off.
Dynamics 365 apps users who have the system administrator security role can change the encryption key at any
time.
WARNING
By default, Dynamics 365 apps generates a passphrase that is a random collection of Unicode characters. Therefore,
you must save the system-generated passphrase by using an application and file that supports Unicode characters.
Some text editors, such as Notepad use ANSI coding by default. Before you save the passphrase using Notepad, select
Save As, and then in the Encoding list, select Unicode.
5. As a best practice, save the text file that contains the encryption key on a computer in a secure location on an
encrypted hard drive.
See also
SQL Server Encryption
FIPS 140 Evaluation
Manage Your Data
Manage configuration data
Manage email settings
3/22/2019 • 3 minutes to read
SETTINGS DESCRIPTION
Notifications
Attachments
Maximum file size attachments Default: 5 MB (5120 KB). Maximum file Increase or decrease the maximum file
size (in Kilobytes) size for attached files. The maximum size
is 128 MB (131,072 KB).
Use secure frames to restrict email Default: Off. If this is set to On, you may
message content see the following error message when
you’re reading email: “This content
cannot be displayed in a frame”.
Although this can make sending
sensitive content in email less secure,
changing the setting to Off typically
eliminates this error.
People can send emails with unresolved Default: Off. Set this to On if you want
recipients to send email messages that have
unresolved recipients.
If there are multiple possible recipient Default: Off. Use this setting to choose
matches in the to, CC, or BCC fields, set which record an email address resolves
them as unresolved to when there are multiple possible
matches in to, cc, or bcc fields of an
email. When you select On, if the to, cc,
or bcc fields of an email have an email
address that can be resolved to multiple
contacts (or other records), the email
address will be resolved in the
unresolved mode instead of resolving to
all possible records. Unresolved email
addresses can then be resolved
individually as you encounter them.
When someone manually resolves an When set to Yes, the same email
unresolved email address, apply it to all address is applied to all similar
similar unresolved addresses unresolved email addresses when
resolved in one email activity. When set
to Off, the email address is applied only
to the specific email activity and does
not resolve similar addresses present in
other email activities. The default value
is On.
See also
Track Outlook email by moving it to a tracked Exchange folder
Frequently asked questions about synchronizing records between Microsoft Dynamics 365 and Outlook
Set up email through server-side synchronization
Manage email tracking settings
4/16/2019 • 2 minutes to read
SETTINGS DESCRIPTION
Use correlation Default: On. Select this check box if you want to link email
activities with other related records using the information in
the email headers. This method uses email properties for
correlation and is more accurate than smart matching, but less
accurate than folder-level tracking or tracking tokens. More
information: Email message filtering and correlation Note:
Email correlation using email headers works best when email is
processed using server-side synchronization. If you’re using
the Email Router to process email, you can use tracking tokens
or smart matching to correlate email activities with related
records.
Use tracking tokens Default: On. Select this check box to use tracking tokens and
to configure how Dynamics 365 displays them in the Subject
line of the email messages.
Tracking token preview More information: Use Email message filtering and correlation
to specify which emails are tracked
Use smart matching Default: Off. Select On to use smart matching to correlate
email based on the similarity between email messages. Smart
matching isn’t as accurate as tracking tokens or folder-level
tracking. More information: Email message filtering and
correlation
Folder-level tracking
Use folder-level tracking for Exchange folders (server-side Default: On. Users can set up Exchange tracking folders, and
synchronization must be enabled) then move messages to those folders to track them
automatically on virtually any device. More information: Track
Outlook email by moving it to a tracked Exchange folder
- Select On.
- Your organization must synchronize email through server-
side synchronization. More information: Set up server-side
synchronization
Tracking items
People can use categories to track emails and appointments Default: Off. Content coming.
Track emails sent between people as two activities Default: Off. Select this option to create two email activities
between Dynamics 365 users, one for the sender and one for
the recipient.
Broadcast announcements to an entire organization
8/14/2019 • 2 minutes to read
Circulate information quickly to a wide set of users at one go by using Announcements in Microsoft Dynamics 365.
Announcements can also serve as message boards, where you can post topics of your interest that you wish to
share, or get answers to.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Announcements.
Make sure you have the System Administrator or System Customizer security role or equivalent permissions to
update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
Create an announcement
1. Select an environment and go to Settings > Data management > Announcements.
2. On the command bar, select New.
3. Fill in the information, as required.
Title (required) - Type a title for the announcement that clearly and unambiguously states the purpose
and nature of the announcement.
Body (required) - Type the text for the announcement that you want to broadcast.
TIP
You can copy and paste an announcement text from another application. However, formatting might be lost.
More Information URL (optional) - Type the address of the website that provides detailed information
about the announcement.
NOTE
A web address that does not contain "http://" is automatically expanded to a full web address. In the announcement,
the web address will appear as an active external link.
Expiration Date (optional) - Type the date on which you want to stop the broadcast and the
announcement should expire.
NOTE
You can’t edit/extend this date after expiry. Microsoft Dynamics 365 deletes the announcement after the expiration
date.
4. When you’re done, on the command bar, choose Save or Save and Close to begin the broadcast.
Broadcast an announcement
Make the announcements available to other users in your organization by using web resources and dashboards.
Create a web resource
1. In a text editor, type the following code, and save the file as “announcementsondashboard.htm”.
<html>
<body>
<script type="text/javascript">window.location.href="/home/homepage/home_news.aspx?pagemode=iframe";
</script>
</body>
</html>
Contracts, cases, articles, quotes, orders, invoices, marketing campaigns, categories, and knowledge articles are
automatically numbered by Dynamics 365 apps. If your organization has standard numbering formats, you can
change the default three-character prefixes and number format to match your organization.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Announcements.
Make sure you have the System Administrator or System Customizer security role or equivalent permissions to
update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
1. Select an environment and go to Settings > Data management > Auto numbering.
2. In the Set Auto-Numbering dialog box, select the record type that you want to change.
3. In the Prefix box, enter up to three characters, symbols, or numbers.
Prefixes are system-wide and are used for all system-generated numbers for the selected record type. If you
change the prefix for a record type, it won’t change the prefix of numbers that are already assigned.
The prefix of the tracking token for email messages is set in the System Settings area. More information:
System Settings dialog box - Email tab
4. In the Number box, enter the starting number.
If you haven’t set a numbering format before, the Number box displays 1000. After you set the numbering
format and save your settings, this field is set to read-only and you can’t modify it. If a custom auto-
numbering solution was used, you won’t be able to change the number.
5. Select a suffix length.
Articles and knowledge articles don’t have suffixes. The suffix is used for records that were created while you
were offline and for which the number can’t be guaranteed to be unique.
6. Select OK to save your settings.
See also
Use solutions for your customizations
Remove a large amount of specific, targeted data
with bulk deletion
8/14/2019 • 2 minutes to read
The bulk deletion feature helps you to maintain data quality and manage the consumption of system storage in
Dynamics 365 apps by deleting data that you no longer need.
For example, you can delete the following data in bulk:
Stale data.
Data that is irrelevant to the business.
Unneeded test or sample data.
Data that is incorrectly imported from other systems.
With bulk deletion you can perform the following operations:
Delete data across multiple entities.
Delete records for a specified entity.
Receive email notifications when a bulk deletion finishes.
Delete data periodically.
Schedule the start time of a recurring bulk delete.
Retrieve the information about the failures that occurred during a bulk deletion.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Bulk deletion.
Make sure you have the System Administrator or System Customizer security role or equivalent permissions to
update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
Importing data is often the first important task that you need to perform after you have installed Customer
Engagement. You can import data from various Dynamics 365 apps systems and data sources into standard and
customized fields of most business and custom entities in Dynamics 365. You can include related data, such as
notes and attachments. To assure data integrity, you can enable duplicate detection that prevents importing
duplicate records. More information: Detect duplicate data. For more complex data import scenarios, you can write
code using the data import web service. More information: Import data using web services.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Data import wizard.
Preliminary steps before you import the data into Dynamics 365 apps include:
1. Preparing source data files in one of the following formats: comma-separated values (.csv), XML
Spreadsheet 2003 (.xml), Compressed (.zip) or text files. You can import data from one source file or several
source files. A source file can contain data for one entity type or multiple entity types.
2. Preparing data maps for mapping data contained in the source file to the Dynamics 365 apps record fields.
You must map every column in the source file to an appropriate field. Unmapped data isn’t imported. More
information: Select a data map
There are several ways to import data into Dynamics 365 apps:
NOTE
We recommend limiting your import to 20K rows or fewer.
1. To import large volumes of data, we recommend a programmatic way, as most efficient. When you import
data programmatically, you gain additional capabilities that are not available when you use other methods of
importing data. These advanced capabilities include viewing stored source data, accessing error logs and
creating data maps that include complex transformation mapping, such as concatenation, split, and replace.
See Import data.
2. For smaller import jobs, you can use the Import Data Wizard tool included in the Dynamics 365 apps web
application. For information about the Import Data Wizard or how to import specific record types, see
Import accounts, leads, or other data.
NOTE
For the Import Data Wizard, the maximum file size for .zip files is 32 MB; for the other file formats, it’s 8 MB.
With the Import Data Wizard, you can specify the “Map Automatically” option. The wizard automatically maps all the
files and the column headings with Dynamics 365 record types and fields if:
The file names exactly match the display name of the record type.
The column headings of the file you are importing exactly match the display names of the fields in the
record.
3. To add data for an individual record, the quickest way is to use Quick Create from the nav bar or New from
the entity form.
See also
Detect duplicate data
Turn duplicate detection rules on or off for the whole
organization
8/14/2019 • 2 minutes to read
To maintain the integrity of your data, it’s a good idea to set up duplicate detection rules to reduce duplicate records
in the system. Remember that after you create duplicate detection rules, you need to turn them on.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Duplicate detection.
Make sure you have the System Administrator, System Customizer, Sales Manager, Vice President of Sales, Vice
President of Marketing, or CEO -Business Manager security role or equivalent permissions to update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
1. Select an environment and go to Settings > Data management > Duplicate detection.
2. Select or clear the Enable duplicate detection check box.
NOTE
If your system contains a large number of records, checking for duplicates can impact performance.
3. If you’re turning duplicate detection on, select or clear the check boxes to set when duplicates are detected:
When a record is created or updated
The system checks for duplicates when a user enters or updates records.
IMPORTANT
Duplicates aren’t detected when a user merges two records, activates or deactivates a record, or saves a
completed activity.
When Dynamics 365 apps for Outlook goes from offline to online
For users of Dynamics 365 apps for Outlook, the system detects duplicates when the user
synchronizes their data after working offline, as long as users have enabled duplicate detection in
Outlook. To enable duplicate detection in Outlook, select File > Dynamics 365 > Options. Choose
the Local Data tab, and then select the Enable duplicate detection during offline to online
synchronization check box.
During data import
When you use the Import Data wizard to bring in contacts, leads, accounts, or other types of data, the
wizard detects any duplicate records as long as you enable duplicate detection in the wizard. More
information: Import accounts, leads, or other data
4. Select OK.
See also
Set up duplicate detection rules to keep your data clean
Frequently asked questions about synchronizing records between Microsoft Dynamics 365 for Customer
Engagement apps and Microsoft Outlook
Run bulk system jobs to detect duplicate records
Download a template for data import
8/14/2019 • 2 minutes to read
Whether your data is stored in spreadsheets, databases, or other systems, you'll want to import the data into
Dynamics 365 apps so you can keep track of all your customer information in one place. You use templates for
importing many types of records, such as accounts, leads or cases. There is a complete list in the Templates for
Data Import wizard.
These settings can be found in the Power Platform Admin center by going to Environments > [select an
environment] > Settings > Data management > Templates.
Make sure you have the System Administrator or System Customizer security role or equivalent permissions to
update the setting.
Follow the steps in View your user profile.
Don’t have the correct permissions? Contact your system administrator.
1. Select an environment and go to Settings > Data management > Templates.
2. In the Templates for Data Import dialog box, choose the record type that you want to download the
template for, and then select Download.
3. In the file download box, select Save or Save as and navigate to a location for the file.
4. Select Close.
See also
Import accounts, leads, or other data
Import contacts
Asynchronous processing of cascading transactions
5/23/2019 • 3 minutes to read
No other jobs can be executed on the entire set of selected Cascading changes are batched, locking only the records being
records (direct or cascading) until the cascading operation is processed within the batch. This allows other jobs to execute
complete. during the full cascading change operation.
When the job is completed all data shows the new desired As the job runs each completed batch displays the desired
value. value. This means that there will be a time when some data
shows the desired value and some shows the original value
until the full operation is completed. This is referred to as
“eventual consistency.”
If a single record fails, all data is rolled back to the original If a single job fails, it is retried multiple times to attempt
value. The roll back will require re-editing all completed completion. If the job can't be completed the failure is
records, which takes additional time. recorded in the System Jobs area. Notice that successfully
completed records retain the new value.
If one of the records in the cascading list has a value that is The operation always works in overwrite mode changing the
different than the expected value, the job will fail and roll back. current value to the new value based on the parent child
For example, the starting record belongs to Owner 1 and the relationship. There are no job failures due to an original value
cascading operation wants to change it to Owner 2. If one of mismatch.
the downstream related records has changed to Owner 3 or is
deleted before the lock occurs, the entire job will roll back.
TIP
To view only cascading operations, in the View selector select Cascade Operations.
NOTE
It isn't possible to cancel an asynchronous cascading job. You must wait for it to complete by indicating a status of
Completed or Failed.
NOTE
Other transactions, such as delete, merge, share/unshare, rollup view, and re-parent are are currently under review for
asynchronous processing.
Gateway Access
Most of the PowerApps and Flow licenses have access to use the gateway with the exception of some of the lower
end Office 365 licenses (Business and Office Enterprise E1 SKUs).
The Gateways page lists all on-premises data gateway clusters installed on the tenant. In addition, you can review
the following information about these clusters:
Gateway Cluster Name: The name of the gateway cluster.
Contact Info: Admin contact information for the gateway cluster.
Administrators: The list of gateway administrators.
Gateways: The number of gateway members in the gateway cluster.
The gateway cluster list includes both On-premises data gateways and On-premises data gateways (personal
mode).
NOTE
On-premises data gateways in non-default environments/regions are currently not included.
Manage users
Select the People icon ( ) next to the gateway cluster name to see the list of gateway users. Add or remove
gateway admins in the Manage Users page.
For personal gateways, this would show the owner of the personal gateway and cannot be changed due to the
security scope of personal gateways.
For On-premises data gateway in standard mode, users can be added in any of the following three categories.
Admin:
Power BI: Administrators have full control of the gateway, including adding other admins, creating data
sources, managing data source users, and deleting the gateway.
PowerApps and Flow: Administrators have full control of the gateway, including adding other admins,
creating connections, additionally sharing gateways in Can use and Can use + share permission levels
and deleting the gateway.
Others: Administrators have full control of the gateway, including adding other admins and deleting the
gateway.
Can use: Users who can create connections on the gateway to use for apps and flows but cannot share the
gateway. Use this permission for users who will run apps but not share them. Applies only to PowerApps and
Microsoft Flow.
Can use + share: Users who can create a connection on the gateway to use for apps and flows, and
automatically share the gateway when sharing an app. Use this permission for users who need to share apps
with other users or with the organization. Applies only to PowerApps and Microsoft Flow.
NOTE
Can Use and Can use + share apply only to PowerApps and Microsoft Flow.
While sharing gateways for Can use and Can use + share permission levels, you can restrict the data source type that
the user can connect over the gateway. At least one data source type should be selected for the user to be successfully
added.
Search
Use Search to find gateway clusters and see their details. You can search for gateway cluster names and contact
info, but not administrators.
Manage installers
As either an Azure AD Global administrator (which includes Office 365 Global admins) or a Power BI service
administrator, use Manage Gateway installers to manage who can install the On-premises data gateway in your
enterprise. This operation isn’t available for gateway admins.
NOTE
This feature does not apply for On-premises data gateways (personal mode).
4. Enable Restrict Users in your organization from installing gateways. This option is off by default
allowing anyone in your organization to install gateway.
5. Add users who can install gateway, and then select Add.
NOTE
Currently, we do not support groups for Manage Installers; you can add individual users.
6. To remove users who have permission to install gateway, select Remove installer ( ), and then select
Confirm.
NOTE
This does not impact gateways which are already installed. This feature only allows or restricts users from installing
gateways going forward.
If a person who doesn’t have access to install gateways tries to install one, they will get the following error once
they provide their credentials during the gateway registration.
See also
On-premises data gateway
Connecting to on-premises data sources with On-premises Data Gateway
About environments
8/9/2019 • 8 minutes to read
ROLE DESCRIPTION
ROLE DESCRIPTION
System Administrator This role takes over for the Environment Admin and has
complete ability to customize and administer the environment.
Users of the role also have full read-write access to data in the
database. The role cannot be updated to change the privileges
granted. Care should be taken in assigning this to the right
people.
System Customizer This role has full permission to customize the environment.
The role’s data access is focused only on data owned by the
user. This role can be modified but it is not recommended to
modify.
Environment Maker Can create new resources associated with the environment
including apps, connections, gateways and flows. There is no
default privileges to data included. This role can be modified
but it is not recommended to modify.
Common Data Service User This is a basic user role, with ability to run apps and perform
common tasks but no ability to customize the system. The
data access is focused on Read access to most Common Data
Model core entities with full access to records owned by the
user. This is a good role to consider copying to make a custom
security role for users.
In addition to these default roles, you can also create custom security roles. Custom security roles should be
created to support applications built in your organization. Custom security roles can also come with applications
you install from App Source or if your users sign up for Dynamics 365.
Types of environments
There are multiple types of environments. The type of environment indicates the purpose and determines the
environment characteristics. The following table summarizes the current types of environments that you might
encounter.
TYPE DESCRIPTION
Default environment
Each tenant will have a default environment created automatically in the region nearest the Azure Active Directory
(Azure AD ) tenant. This environment has a few unique characteristics from other environments that you create.
This environment can’t be disabled or deleted. All tenant users are added automatically to the maker role for the
default environment and you can’t remove them from that role. They are not however added automatically to the
environment administrator role. This makes the default environment the perfect place for people to build personal
productivity apps and flows.
The default environment is also the only place you can currently create gateways to connect to on-premises
resources. So, if you have an application that needs on-premise resources the app, its connector and the gateway
must be created and run from your organization’s default environment. It is planned to allow creation of gateways
in the non-default environments in the future.
Another unique consideration of the default environment is you can’t create a Common Data Service database in
the default environment. This however will be supported in the future.
Environment regions
When you create an environment, you will pick a geographic location. Application components, including the
Common Data Service database will reside in that region. Generally, you will want to choose a location closest to
the majority of your users that will be using applications in the particular environment. If you are connecting to
other existing external resources, you should consider their location as well. You should also consider any data
residency issues when choosing a location.
Having users’ applications and other assets spread across multiple environments will result in the user frequently
having to adjust their environment setting. The best user experience is when the user stays within a single
environment for most of their daily use.
In the mobile applications the user is presented with a consolidated list of applications across the environments
they have access to. Each application indicates the environment. This reduces the need to switch, however it
introduces the need for the user to choose the correct application. For example, imagine if you had an application
Device Ordering and it was deployed to environment Test and environment Production. If the user had access to
both environments it would show up twice on the list. The user would have to differentiate between the two. Some
of this can be minimized by only granting access as needed and then only temporarily to the Test environment.
On the other hand, if you don’t see the Create my Database link then the Common Data Service database instance
exists and you can click on the Dynamics 365 Administration center link to navigate to the list of all your Common
Data Service databases.
From the Dynamics 365 Admin center you can open the instance as well as manage and view some of the instance
details. The actions you can take on each instance depends currently on if it started as an instance for Dynamics
365 Customer Engagement or if you started it with just the core Common Data Service entities. For core Common
Data Service instances, you can only copy or set notifications. On Dynamics 365 Common Data Service instances
you also have the ability to reset the instance if it is of type sandbox, and potentially convert an instance to a
sandbox to then test or reset.
You do however have the option to manually take a backup. A great use for this is before doing big data imports or
changes or deploying new releases of applications.
Once the manual backup is completed it will show in the list of other backups allowing you to select it as the
restore point.
See also
Microsoft Learn: Introduction to Common Data Service
Types of PowerApps
3/22/2019 • 4 minutes to read
It is also possible as the scenarios get more complex that your solution contains both types of apps.
Application players
Both types of applications can be used as web applications from mainstream web browsers. Both types of
applications can be discovered from web.powerapps.com. Dynamics 365 users can also discover them from
home.dynamics.com application list as well as in the common application navigation list. Mobile users can run the
application in a device installed player app on both phones and tablet devices. Currently, the player application for
canvas apps
In the event the new version has problems, a prior version can be restored by clicking the Restore button next to
that version. In the example above, there are two versions of an app. If the Restore button is clicked on version 1,
PowerApps will create a new version 3 of the application that is identical to version 1. In this way history and audit
information is preserved and the maker could elect to return to version 2 and fix issues at a later date. This light
weight application lifecycle management (ALM ) is perfect for productivity applications built by your organizations
users without introducing them to the additional overhead of deploying to multiple environments.
For model-driven applications there is also a concept of publish that happens after change of most visual
components in the application. For example, if you change the application navigation, users in the same
environment will not see the change until Publish is completed. Restore is typically accomplished with model-
driven applications by exporting a solution version and re-importing it to restore.
On import, prior to completion of the import the related resources will need to be configured to have the proper
connections established in the target environment. Custom Connectors and Common Data Service customizations
will need to be established prior to the import. If the Update action is chosen on import, the new version will be
saved as a draft and will need to be “Published” before users will be able to use it. This allows an opportunity to
test the application in the environment without impacting existing users.
You can also explore this information from the PowerShell cmdlets – we cover more details on that in the
Management and Monitoring section.
About Connectors
6/4/2019 • 4 minutes to read
Now in this example notice it is an Admin account. Since it is sending a notification probably not a great concern
but if it was a more sensitive connector this could allow escalation of privileges beyond what is intended in your
security models.
Run-only sharing is an option when the flow is manually triggered. This option allows greater control because first
of all the user does not have ability to edit the flow just to run it. Second, when you invite the user you can specify
to reuse the existing connection or require the user to provide their own. To manage the Run-Only users drill down
on the Flow from the list of Flows and you will see the following:
From here you will see a dialog to specify the user or group as well as a list of the connections and the choice for
each on how to grant access. The following shows the connection configuration and how you can choose to force
the user to sign-in to their own connection.
One of the more recent additions is the ability to share a flow with a SharePoint List or an Office 365 Group. In this
scenario, the Flow is available to all members of the group in the case of Office 365 groups. For SharePoint Lists,
anyone with edit access to the list would have access to the flow. The flow would then show up with the ability to
execute it from the application navigation.
Restricting Use of Connectors
Within each environment using data loss prevention policies you can limit what connectors can be used together in
a single application or flow. More on this in the section where we cover Data Loss Prevention (DLP ) policies.
The API Key is a little less complex as it typically involves the API assigning a key that is passed on each request.
That key is provided when the connection is established for the connector and is stored in the environment with the
other connection information in a secure way. An example of an API Key authentication connector is the Azure
Storage Blob. As you can see below it wants the Storage Account Name as well as the Access Key.
When on-premise gateways are involved the process is even a little more complex. The following diagrams what
happens when you establish a connection with the gateway data source.
About solution packages
3/22/2019 • 3 minutes to read
Types of Solutions
There are two types of solutions, managed and unmanaged. Solutions start out as unmanaged, meaning their
components can be modified. Managed solutions are locked down, meaning you can’t directly modify the
components. Managed solutions are created by exporting an unmanaged solution and requesting it be exported as
managed. That solution when imported into another target Common Data Service instance is then installed in a
managed state. Components in the managed solution can’t be directly modified, but they can be added into
another unmanaged solution that tracks changes as a separate layer. Multiple managed solutions that are installed
in the same Common Data Service instance create layers that combine for what the users see as the effective set of
customizations.
What the User Sees (Calculated)
Default Solution (Unmanaged Layer)
PowerApps - Model Driven App A (managed)
PowerApps - Model Driven App B (managed)
ISV Loan Calculator (managed)
Common Data Model
Creating Solutions
Each PowerApp environment has a default solution created automatically as an empty solution when the Common
Data Service instance is created in the environment. Directly in the Common Data Service instance you can create
additional unmanaged solutions and manage their components using Solution Explorer.
Installing Solutions
Solutions can be installed into a Common Data Service instance if all their dependencies have been met. A solution
becomes dependent when it uses something from another solution. Those dependent solutions must be installed
first. Solutions can be installed directly into a target Common Data Service instance from the Solution Explorer.
Solutions can also be deployed using the Package Deployer tool which can deploy a set of solutions along with
data into a Common Data Service instance. Package deployer can be run interactively, or from PowerShell. Package
Deployer is how Microsoft AppSource marketplace installs apps. Importing a managed solution is different than
importing an unmanaged solution. When you import an unmanaged solution, the changes are merged in with
other unmanaged changes in that Common Data Service instance. These merged changes can only be removed by
manually removing each individually. The administrator must also publish the unmanaged changes to have any
non-schema (e.g. display labels) changes be visible to other users.
Uninstalling Solutions
Solutions are uninstalled by deleting them from the Common Data Service instance. The result of the delete action
varies greatly between managed and unmanaged solutions. Because unmanaged solutions are merged in with
other changes, it is not possible to remove them as a unit. Removing an unmanaged solution simply removes the
solution container and all the components remain in the instance. The remaining components must manually be
removed one by one. In fact some unmanaged changes must be reverted manually such as a label change.
Managed solutions act more like a true uninstall, it removes all the solution components that were installed if
nothing new has taken a dependency on them. This includes any data from entities that were only defined and used
by that solution being removed. So, take care when removing solutions that you no longer need the data. In many
cases you might find that you want to first export the data before the remove/uninstall.
About licensing and license management
8/29/2019 • 7 minutes to read
NOTE
For information about licensing changes coming to PowerApps and Microsoft Flow in October 2019, see PowerApps and
Microsoft Flow licensing FAQs for October 2019.
Organizations can obtain licenses by either licensing Microsoft PowerApps or Flow specifically or by it being
included in the license of another Microsoft cloud service offering. For example, both Office 365 and Dynamics 365
provide entitlements for PowerApps and Microsoft Flow. As with most Microsoft licensing, you can mix and match
for users as appropriate giving some additional entitlements.
Regardless of how obtained all licenses are user based. In the rest of this section we will highlight some of the key
points of licensing, but it is not the product licensing documentation, you should consult that for any of the latest
details. Links for pricing and specific plan details can be found later in this section.
First, let’s look at what you, as the administrator, will need to have the best administrator experience. While you can
do basic administration with any of the licenses with PowerApps entitlements, the best experience is with
PowerApps P2 and that is what Microsoft recommends for administrators. This provides the ability to create
additional environments as well as Common Data Service. It also provides the best experience in the
administration centers for controlling the environments.
The following summarizes the access based on various administrator role and license combination, as you can
probably easily tell Global Admin with a PowerApps P2 license provides the most complete administrator
experience. Without a PowerApps P2 the administrator can view some information but only able to administer
their own assets.
Global Admin Yes Sees only DLP No Can create but Can view
without policies and only for all Common Data
PowerApps P2 Tenant level user environments Service instances
reports and
statistics
Global Admin Yes Full access Yes - all Full ability to Full access
with PowerApps environments view, create,
P2 modify and
remove
Dynamics Admin View only No tenant level Only own Only own Full access
role with info, only own
PowerApps P2 environments
PowerApps has two primary standalone licensing tiers. PowerApps P1 which is best suited for business users who
need to use basic PowerApps applications. PowerApps P2 is more focused towards Makers and Administrators
who want to create data models in the Common Data Service. Each PowerApps P2 user is entitled to create two
Production environments each having a Common Data Service database. Users of the apps built on the Common
Data Service only require PowerApps P1 unless they use advanced features like plug-ins and real-time workflows
or work with Dynamics 365 restricted entities ( a list of these can be found here
https://docs.microsoft.com/powerapps/maker/common-data-service/data-platform-restricted-entities).
For example, John could create a PowerApps Canvas application that stores data in the Contact entity and two
custom entities in a Common Data Service environment he created. For this, he would need a PowerApps P1 or P2
license to build the application and customize Common Data Service. Mary and Henry are users of the application
John built. John had shared the application with them, so they could use it. Mary and Henry would be ok with just a
PowerApps P1 license or a license that came with Dynamics 365. If either of them had only PowerApps that came
with Office 365 they would however need to upgrade their license to at least a PowerApps P1.
Building on that example, John asked George, a developer at the company to create a plug-in on one of the custom
entities. The business logic would do some automated processing every time the data was updated. This advanced
business logic usage would require now for all users that wanted to use the canvas app to be upgraded to a
PowerApps P2 license. You can find additional Entity Licensing examples here https://docs.microsoft.com/en-
us/powerapps/maker/common-data-service/data-platform-entity-licenses.
PowerApps licenses include an equivalent Microsoft Flow license. It is also possible however to license flow by
itself. Flow also has a free plan. All Flow plans offer unlimited creation of Flows but vary based on number of runs
included and the time delay for checking for new work to perform. In addition to the key differences documented in
the chart below, it is important to note that with the free plan the runs are per person where runs for other licenses
aggregate at the tenant level.
Trial Plans
Trial plans are available for both PowerApps and Microsoft Flow plans 1 and 2. Free trials last 30 days for
PowerApps and 90 days for Microsoft Flow plans. Users can self-service sign up for these trials in your
organization. This can be done by explicitly visiting the pricing pages or by being prompted when they attempt an
action in the apps that require additional licensing.
For Microsoft Flow, an unlicensed user that signs in to flow.microsoft.com will be setup with the free Flow plan. If
later they try to perform an action like sharing a Flow, they will be prompted to sign up for a trial. In this example, if
the user accepted the offer for trial they would be signed up for a Flow Plan 2 trial. This trial would not show up
under the user licenses in the Office 365 Portal, however you would be able to see it in the PowerApps license
report discussed later in this security section.
For PowerApps, if a user signs up for a PowerApps P1 trial they will be upgraded to a PowerApps P2 trial if needed
for any of the actions they take such as creating an environment. If they sign up for the trial by visiting
web.powerapps.com it will start as a PowerApps P2 trial.
As the administrator, you will likely be assisting users that had started in a trial and either want to continue
experimenting or are ready to get a regular license to keep working with the app they are building. If you are
moving to a regular license for a user, it would also be a good time to work with them to see if their app should stay
where it was built or should be moved according to the environment strategy you adopt. For those not ready to get
a full license but want to keep experimenting you could help them get setup on the community plan and help them
move their application and flow assets into their new developer environment.
NOTE
For information about licensing changes coming to PowerApps and Microsoft Flow in October 2019, see PowerApps and
Microsoft Flow licensing FAQs for October 2019.
Pricing
Please see the PowerApps pricing page with the latest pricing information for each PowerApps license (Plan 1 and
Plan 2). Please see Microsoft Flow pricing page with the latest pricing information for each Microsoft Flow license.
Licenses
PowerApps for Office 365
PowerApps capabilities for Office 365 enable users to extend and customize the Office experience with
PowerApps and Microsoft Flow. Users can create Canvas applications based on Office 365 data. These
productivity apps can also utilize data outside of Office 365 by connecting to common services including Box.com,
Facebook, and many more via the use of standard connectors.
Flow runs per user/month (includes Flow for Office 365) 2,000
1For PowerApps for Office 365 Enterprise F1 please refer to the section below.
The following Office 365 plans include PowerApps for Office 365
INCLUDED PLANS
Which Microsoft Office 365 plans These plans include PowerApps for
include PowerApps? Office 365:
Flow runs per user/month (includes Flow for Office 365) 750
Per-user licenses come with included capacity for resources used when an app or flow is executed. These
resources include data storage management and flow runs. The capacities included in the per-user licenses are
pooled at the tenant level and, when the tenant’s capacity is exhausted, customers may purchase additional
capacity through add-on licenses. For every increment of PowerApps or Flow user subscription licenses, the
included database and file capacity increases, see table. The cap on the amount of database capacity that may be
earned or purchased per tenant is subject to the technical limit of 4TB/instance, no maximum on file or log
capacity.
Accrued entitlements per user subscription license
DEFAULT CAPACITY PER TENANT POWERAPPS PLAN 1 POWERAPPS PLAN 2
NOTE
We’ve removed the requirement to purchase additional production or non-production environments for Common Data
Service. New environments can be created when at least 1 GB of database capacity is available. To learn how to create new
production or non-production instances, see Create an environment.
Capacity add-ons
When the tenant’s capacity is exhausted, customers may purchase additional capacity through add-on licenses.
Subscription add-ons apply across tenant and are not tied to a specific user. Subscription add-ons can be
purchased at any time and remain a part of the subscription for the remainder of the subscription term.
Create and run apps with custom Yes, add up to 15 custom entities per Yes
entities application, customizations should map
to application context/use rights
Access to restricted Dynamics 365 Create, read, update and delete Create, read, update and delete
entities within the context of Dynamics
365 application use rights
Included Flow capacity (Pooled across 2,000 Flow runs per user/month 15,000 Flow runs per user/month Flow
tenant) Plan 2 included
1Team member license does not provide access to Dynamics 365 app APIs
Download the Dynamics 365 licensing guide to learn more about use rights for specific Dynamics 365
applications and plans.
These Dynamics 365 apps can be customized using PowerApps and Microsoft Flow capabilities
Dynamics 365 for Sales Professional
Dynamics 365 for Customer Service Professional
Dynamics 365 for Talent: Attract
Dynamics 365 for Talent: Onboard
Dynamics 365 Team Member
These Dynamics 365 apps and plans include PowerApps P2
Dynamics 365 Business Central
Dynamics 365 for Sales Enterprise
Dynamics 365 for Customer Service
Dynamics 365 for Field Service
Dynamics 365 for Project Service Automation
Dynamics 365 for Talent
Dynamics 365 for Retail
Dynamics 365 Customer Engagement Plan
Dynamics 365 Unified Operations Plan
Dynamics 365 Plan
Manage PowerApps licenses in your organization
8/6/2019 • 8 minutes to read
This article describes how users in your organization can get access to use PowerApps, and how you can control
access to the PowerApps service.
Users can sign up by going to powerapps.microsoft.com, selecting Sign up free, and then completing the sign-up
process for PowerApps through admin.microsoft.com.
Option 2
Users can sign up by going to powerapps.microsoft.com, selecting Sign in, signing in with their work or school
accounts, and sign up for the PowerApps Plan 2 trial by accepting the PowerApps terms of use.
When a user in your organization signs up for PowerApps, that user is assigned a PowerApps license
automatically.
NOTE
Users who sign up for a trial license from within PowerApps don't appear in the Office 365 admin portal as PowerApps Plan
2 trial users (unless they have another license to Office 365, Dynamics 365, or PowerApps).
Administration of PowerApps
Why has the PowerApps icon appeared in the Office 365 app launcher?
Microsoft PowerApps is a fundamental part of the Office 365 suite and is enabled as a service as a part of existing
Office 365 SKU's. As users everywhere in the world can now use Microsoft PowerApps, it appears in 'All apps' in
the app launcher screen. See Licensing overview to understand which Office 365 SKUs now include PowerApps.
See the following section if you'd like to remove the PowerApps tile from 'All apps' by default.
How do I remove PowerApps from existing users?
If a user was assigned a PowerApps Plan 1 or PowerApps Plan 2 license then you can take the following steps to
remove the PowerApps license for that user:
1. Go to the Office 365 Admin Portal.
2. In the left navigation bar, select Users, and then select Active Users.
3. Find the user you want to remove the license for, and then select their name.
4. On the user details pane, in the Product licenses section select Edit.
5. Find the license called Microsoft PowerApps Plan 1 or Microsoft PowerApps Plan 2, set the toggle to
Off and then select Save.
If a user has access to PowerApps through their Office 365 and Dynamics 365 plan license, then you can disable
their access to the PowerApps service by taking the following steps:
1. Go to the Office 365 Admin Portal.
2. In the left navigation bar, select Users, and then select Active Users.
3. Find the user you want to remove access for, and then select their name.
4. On the user details pane, in the Product licenses section select Edit.
5. Expand the user's Office 365 or Dynamics 365 license, disable access to the service called PowerApps for
Office 365 or PowerApps for Dynamics 365 and then select Save.
Bulk removal of licenses is also possible through PowerShell. See Remove licenses from user accounts with Office
365 PowerShell for a detailed example. Finally, further guidance about bulk removal of services within a license
can be found at Disable access to services with Office 365 PowerShell.
Removing of the PowerApps license or service for a user in your organization will also result in the removal of the
PowerApps and Dynamics 365 icons from the following locations for that user:
Office.com
Office 365 AppLauncher “waffle”
How can I restrict my users' ability to access my organization's business data using PowerApps?
PowerApps allows you to create data zones for business and non-business data, as shown below. Once these data
loss prevention policies are implemented, users are prevented from designing or running PowerApps that
combine business and non-business data. For more details, See Data loss prevention (DLP ) policies.
Why did 10,000 licenses for Microsoft PowerApps show up in my Office 365 tenant?
As a qualifying organization, users in your organization are eligible to try out Microsoft PowerApps Plan 2 for 30
days, and these trial licenses represent the available capacity for new PowerApps users in your tenant. There is no
charge for these licenses. Specifically, there are two possible reasons why you may see a capacity 10,000 (trial)
licenses for PowerApps showing up in the Office 365 admin portal:
If at least one user in your tenant participated in the PowerApps public preview that spanned from April
2016 to October 2016 then you will see 10,000 licenses labeled as "Microsoft PowerApps and Logic flows"
If at least one user in your tenant has signed-up for a PowerApps Plan 2 trial by going through trial signup
Option 1 outlined in the How do users sign up for PowerApps section then you will see 10,000 licenses
labeled "Microsoft PowerApps & Flow"
You can choose to assign additional licenses to users yourself through the Office 365 admin portal, but please note
that these are trial licenses for Microsoft PowerApps Plan 2 and they will expire after 30 days of being assigned to
a user.
Is this free? Will I be charged for these licenses?
These licenses are free trial licenses for your users to try-out the Microsoft PowerApps Plan 2 for 30 days.
How will this change the way I manage identities for users in my organization today?
If your organization already has an existing Office 365 environment and all users in your organization have Office
365 accounts, then identity management does not change.
If your organization already has an existing Office 365 environment but not all users in your organization have
Office 365 accounts, then we create a user in the tenant and assign licenses based on the user’s work or school
email address. This means that the number of users you are managing at any particular time will grow as users in
your organization sign up for the service.
If your organization does not have an Office 365 environment connected to your email domain, there is no change
in how you manage identity. Users will be added to a new, cloud-only user directory, and you will have the option
to take over as the tenant admin and manage them.
What is the process to manage a tenant created by Microsoft for my users?
If a tenant was created by Microsoft, you can claim and manage that tenant using the following steps:
1. Join the tenant by signing up for PowerApps using an email address domain that matches the tenant domain
you want to manage. For example, if Microsoft created the contoso.com tenant, then join the tenant with an
email address ending with @contoso.com.
2. Claim admin control by verifying domain ownership: once you are in the tenant, you can promote yourself to
the admin role by verifying domain ownership. To do so, follow these steps:
3. Go to https://admin.microsoft.com.
4. Select the app-launcher icon in the upper-left corner, and then choose Admin.
5. Read the instructions on the Become the admin page, and then choose Yes, I want to be the admin.
NOTE
If this option doesn’t appear, an Office 365 administrator is already in place.
If I have multiple domains, can I control the Office 365 tenant that users are added to?
If you do nothing, a tenant is created for each user email domain and subdomain.
If you want all users to be in the same tenant regardless of their email address extensions:
Create a target tenant ahead of time or use an existing tenant. Add all the existing domains and subdomains
that you want consolidated within that tenant. Then all the users with email addresses ending in those domains
and subdomains automatically join the target tenant when they sign up.
IMPORTANT
There is no supported automated mechanism to move users across tenants once they have been created. To learn about
adding domains to a single Office 365 tenant, see Add your users and domain to Office 365.
Purchase PowerApps for your organization
8/9/2019 • 2 minutes to read
This article shows you how to purchase PowerApps for your organization as an administrator. You can purchase
PowerApps through the PowerApps website directly, through the Microsoft 365 admin center, or through your
Microsoft representative or partner. This article will discuss the trial options available for PowerApps Plan 1 or
Plan 2 and then explain how to purchase PowerApps Plan 1 or Plan 2 as an organization. For more information,
see PowerApps in your organization Q&A.
NOTE
To purchase PowerApps for an organization, you must already be an Office 365 Global or Billing Admin of a tenant, or you
must create a tenant.
3. Provide information to make the purchase, and then navigate to the Microsoft 365 admin center to assign
PowerApps licenses to your users.
5. Enter the number of licenses you would like to add, and then select Check out now or Add to cart.
NOTE
You can add more licenses later if needed.
Add-ons
These are not supported yet.
See also
PowerApps in your organization Q&A
Self-service sign up for PowerApps
FAQs and more information
8/29/2019 • 3 minutes to read
NOTE
For information about licensing changes coming to PowerApps and Microsoft Flow in October 2019, see PowerApps and
Microsoft Flow licensing FAQs for October 2019.
We have found some common questions on licensing and plan options. We’ve included several here with their
answers. However, if you find you need more details, you can find that on PowerApps plans here
https://powerapps.microsoft.com/en-us/pricing/ and Microsoft Flow plans here https://flow.microsoft.com/en-
us/pricing/. For additional information on the mechanics of managing users, please refer to: Manage PowerApps
licenses in your organization.
This section provides information on how Common Data Service, the underlying data platform for PowerApps,
handles security from user authentication to authorization that allows users to perform actions with data and
services. Conceptually, security in Common Data Service is there to ensure users can do the work they need to do
with the least amount of friction, while still protecting the data and services. Security in Common Data Service can
be implemented as a simple security model with broad access all the way to highly complex security models where
users have specific record and field level access.
The following is a high-level overview of how security model is implemented in Common Data Service.
Users are authenticated by Azure Active Directory (Azure AD ).
Licensing is the first control-gate to allowing access to PowerApps components.
Ability to create applications and flows is controlled by security roles in the context of environments.
A user’s ability to see and use apps is controlled by sharing the application with the user. Sharing of canvas apps
is done directly with the user or Azure AD group. Sharing of model-drive apps is done via Common Data
Service security roles.
Environments act as security boundaries allowing different security needs to be implemented in each
environment.
Flows and Canvas apps use connectors, the specific connections credentials and associated service entitlements
determine permissions when apps use the connectors.
Environments with Common Data Service add support for more advanced security models that are specific to
controlling access to data and services in the Common Data Service instance.
Related topics
What is Common Data Service?
Security concepts in Common Data Service
Controlling access to Common Data Service
6/19/2019 • 2 minutes to read
Common Data Service relies on Azure Active Directory (Azure AD ) for authentication. This means that you can
leverage the full functionality of Azure AD to manage and restrict access to users. This includes using Conditional
Access Policies and other premium features of Azure AD. Developers can also register applications with Azure AD
and use the oAuth2 authorization framework to allow their code to access the platform APIs.
External users from other Azure AD tenants can be added as Business Guests in your Azure AD. They can be
configured to work with some limitations with model-driven apps. Business Guests are not supported currently for
canvas apps and Microsoft Flow. Other external users beyond the capability of Business Guests, including Azure
B2C is not currently supported.
Related topics
What is Common Data Service?
Security concepts in Common Data Service
Developers: Authentication with Common Data Service web services
Security concepts in Common Data Service
6/19/2019 • 8 minutes to read
One of the key features of Common Data Service is its rich security model that can adapt to many business usage
scenarios. This security model is only in play when there is a Common Data Service database in the environment.
As an administrator, you likely won't be building the entire security model yourself, but will often be involved in the
process of managing users and making sure they have the proper configuration as well as troubleshooting
security access related issues.
Business Units
Business units work in conjunction with security roles to determine the effective security that a user has. Business
units are a security modeling building block that helps in managing users and the data they can access. Business
units define a security boundary. Every Common Data Service database has a single root business unit.
You can create child business units to help further segment your users and data. Every user assigned to a
Common Data Service instance will belong to a business unit. While business units could be used to model 1:1 a
true organization hierarchy, more often they lean more towards just defined security boundaries to help achieve
the security model needs.
To better understand let’s look at the following example. We have three business units. Woodgrove is the root
business unit and will always be at the top, that is unchangeable. We have created two other child business units A
and B. Users in these business units have very different access needs. When we associate a user with this
Common Data Service instance, we can set the user to be in one of these three business units. Where the user is
associated will determine which business unit owns the records that user is the owner of. By having that
association allows us to tailor a security role to allow the user to see all records in that business unit.
Entity/Record Ownership
Common Data Service supports two types of record ownership. Organization owned, and User or Team owned.
This is a choice that happens at the time the entity is created and can’t be changed. For security purposes, records
that are organization owned, the only access level choices is either the user can perform the operation or can’t. For
user and team owned records, the access level choice for most privileges are tiered Organization, Business Unit,
Business Unit and Child Business Unit or only the user’s own records. That means for read privilege on contact, I
could set user owned, and the user would only see their own records.
To give another example, let’s say User A is associated with Division A, and we give them Business Unit level Read
access on Contact. They would be able to see Contact #1 and #2 but not Contact #3.
When you configure or edit security role privileges you are setting the access level for each option. The following
is an example of the Security Role privilege editor.
In the above you can see the standard privilege types for each entity Create, Read, Write, Delete, Append, Append
To, Assign and Share. You can edit each of these individually. The visual display of each will match the key below as
to what level of access you have granted.
In the above example, we have given organization level access to Contact which means that the user in Division A
could see and update contacts owned by anyone. In fact, one of the most common administrative mistakes is
getting frustrated with permissions and just over granting access. Very quickly a well-crafted security model starts
looking like swiss cheese (full of holes!).
Teams
Teams are another important security building block. Teams are owned by a Business Unit. Every Business Unit
has one default team that is automatically created when the Business Unit is created. The default team members
are managed by Common Data Service and always contain all users associated with that Business Unit. You can’t
manually add or remove members from the default team, they are dynamically adjusted by the system as new
users are associated/disassociated with business units. There are two types of teams, owning teams and access
teams. Owning Teams can own records, which gives any team member direct access to that record. Users can be
members of multiple teams. This will allow it to be a powerful way of granting permissions to users in a broad way
without micromanaging access at the individual user level. Access teams are discussed below as part of Record
Sharing.
Record Sharing
Individual records can be shared on a one by one basis with another user. This is a powerful way of handling
exceptions that don’t fall into the record ownership or member of a business unit access model. It should be an
exception though because it is a less performant way of controlling access. Sharing tougher to troubleshoot
because it is not a consistently implemented access control. Sharing can be done at both the user and team level.
Sharing with a team is a more efficient way of sharing. A more advanced concept of sharing is with Access Teams
which provides auto creation of a team and sharing of record access with the team based on an Access Team
Template (template of permissions) which is applied. Access teams can also be used without the templates, with
just manual add/remove of it’s members. Access teams are more performant because they don’t allow owning
records by the team or having security roles assigned to the team. Users get access because the record is shared
with the team and the user is a member.
Record level security in Common Data Service
You might be wondering – what determines access to a record? That sounds like a simple question but for any
given user it is the combination of all their security roles, the business unit they are associated with, the teams they
are members of and the records that are shared with them. The key thing to remember is all access is accumulative
across all those concepts in the scope of a Common Data Service database instance. These entitlements are only
granted within a single database and are individual tracked in each Common Data Service database. This all of
course requires they have an appropriate license to access Common Data Service.
Field Level Security in Common Data Service
Sometimes record level control of access is not adequate for some business scenarios. Common Data Service has
a field level security feature to allow more granular control of security at the field level. Field level security can be
enabled on all custom fields and most system fields. Most system fields that include personal identifiable
information (PII) are capable of being individually secured. Each field’s metadata defines if that is an available
option for the system field.
Field level security is enabled on a field by field basis. Access is then managed by creating a Field Security Profile.
The profile contains all fields that have field level security enabled and the access granted by that specific profile.
Each field can be controlled within the profile for Create, Update and Read access. Field Security Profiles are then
associated with a user or Teams to grant those privileges to the users to the records they already have access to.
It’s important to note that Field Level Security has nothing to do with Record Level security, a user must already
have access to the record for the Field Security Profile to grant them any access to the fields. Field level security
should be used as needed and not excessively as it can add overhead that is detrimental if over used.
Managing Security Across Multiple Environments
Security roles and Field Security Profiles can be packaged up and moved from one environment to the next using
Common Data Service solutions. Business Units and Teams must be created and managed in each Common Data
Service environment along with the assignment of users to the necessary security components.
Configuring Users Environment Security
Once roles, teams and business units are created in an environment it is time to assign the users their security
configurations. First, when you create a user you will associate the user with a business unit. By default, this is the
root business unit in the organization. They are also added to the default team of that business unit.
In addition, you would assign any security roles that user needs. You would also add them as members of any
teams. Remember teams can also have security roles, so the effective rights of the user is the combination of
directly assigned security roles combined with those of any teams they are members of. Security is always additive
offering the least restrictive permission of any of their entitlements. The following is a good walkthrough of
configuring environment security.
If you have used Field Level security, you would need to associate the user or a team of the user to one of the Field
Security Profiles you created.
Security is a complex topic and is best accomplished as a joint effort between the application makers and the team
administering the users permissions. Any major changes should be coordinated well in advance of deploying the
changes into the environment.
Related topics
Configure environment security
System and application users
7/27/2019 • 2 minutes to read
There is a list of special system and application users that is created when the system is provisioned. Special system
users are created for integration and support scenarios. Application users are created during system provisioning
for setup and configuration management. Application users can also be used for performing back-end services.
Most of these users are hidden from user views but they can be found by using the Advanced Find on the Users
entity. Do not delete or modify these users including changing or reassigning security role.
SECURITY ROLE
USER TYPE FULL NAME USER NAME PURPOSE ASSIGNED
Common Data Service uses a role-based security model to help secure access to the database. This topic
explains how to create the security artifacts that you must have to help secure an app. The user roles control run-
time access to data and are separate from the Environment roles that govern environment administrators and
environment makers. For an overview of environments, see Environments overview.
NOTE
Currently, roles can only be assigned to users. Please check back for when assigning a role to a security group is available.
4. In case user doesn’t exist, you can add the user from PowerApps Admin center Add the user by
mentioning the email address of the user, in your organization, and selecting Add user.
Wait for a few minutes to check if the user is available in the list of users in the environment.
5. Select the user from the list of users in the environment.
System Administrator Create, Read, Write, Delete, Has full permission to customize or
Customizations, Security Roles administer the environment, including
creating, modifying, and assigning
security roles. Can view all data in the
environment. More information:
Privileges required for customization
System Customizer Create (self), Read (self), Write (self), Has full permission to customize the
Delete (self), Customizations environment. However, can only view
records for environment entities that
they create. More information:
Privileges required for customization
Common Data Service User Read (self), Create (self), write (self), Can run an app within the
delete (self) environment and perform common
tasks for the records that they own.
Note: this only applies to non-custom
entities. See Create or configure a
custom security role.
Delegate Act on behalf of another user Allows code to run as another user or
impersonate. Typically used with
another security role to allow access to
records. More information:
Impersonate another user
TIP
If you want to create a custom security role with the minimum required privileges to run an app, check out the section
below: Minimum privileges to run app.
The environment might maintain the records which can be used by multiple apps, you might need multiple
security roles to access the data with different privileges. e.g.
Some of the users (Type A) might only need to read, update, and attach other records so their security role
will have read, write, and append privileges.
Other users might need all the privileges that users of Type A has, plus the ability to create, append to, delete,
and share, so their security role will have create, read, write, append, delete, assign, append to, and share
privileges.
For more information about access and scope privileges, see Security roles.
1. In PowerApps Admin center select the environment where you want to update a security role.
2. Click on the Dynamics 365 Administration Center link in the Details tab to manage the environment
in the Dynamics 365 admin center.
3. Select the instance (with the same name of environment) and select Open.
4. If you see published apps and tiles, look in the upper-right corner and select the Gear icon ( ). Then
select Advanced settings.
5. In the menu bar, select Settings > Security.
7. Select New.
8. From the security role designer, enter a role name in the Details tab. From the other tabs, you'll select the
actions and the scope for performing that action.
9. Select a tab and search for your entity; for example - Custom Entities tab, for setting permissions on a
custom entity.
10. Select the privileges Read, Write, Append.
11. Select Save and Close.
IMPORTANT
You should try out the solution in a development environment before importing into a production environment.
Control user access to environments: security groups
and licenses
8/6/2019 • 3 minutes to read
If your company has multiple Common Data Service environments, you can use security groups to control which
licensed users can be a member of a particular environment.
Consider the following example scenario:
In this example, four security groups provide controlled access to a specific environment.
Note the following about security groups:
When users are added to the security group, they are added to the Common Data Service environment.
When users are removed from the group, they are disabled in the Common Data Service environment.
When a security group is associated with an existing environment with users, all users in the environment
that are not members of the group will be disabled.
If a Common Data Service environment does not have an associated security group, all users with a
Common Data Service license (Customer Engagement, Microsoft Flow, PowerApps, etc.) will be created as
users and enabled in the environment.
If a security group is associated with an environment, only users with Common Data Service licenses that
are members of the environment security group will be created as users in the Common Data Service
environment.
Removing a security group from an environment is currently not supported.
When you assign a security group to an environment, that environment will not show up in
home.dynamics.com for users not in the group.
If you do not assign a security group to an environment, the environment will show up in
home.dynamics.com even for those who have not been assigned a security role in that Common Data
Service environment.
If you do not specify a security group, all users who have a Common Data Service license, (Customer
Engagement, Flow, PowerApps, etc.) will be added to the new environment.
You cannot yet make security groups members of other security groups. Check back for availability of
support for nested security groups.
NOTE
All licensed users, whether or not they are members of the security groups, must be assigned security roles to access
environments. You assign the security roles in the Customer Engagement web application. Users can’t access environments
until they are assigned at least one security role for that environment. For more information, see Configure environment
security.
NOTE
If the users you want to add to the security group are not created, create the users and assign to them the Common Data
Service licenses.
To add multiple users, see: bulk add users to Office365 groups.
When new connectors are added they are added to the Default category which is No business data allowed. If you
would prefer you can change which category is considered the default, and then all new connectors will be
classified in that category by default.
Typically, though most companies will want to treat new connectors as No business data allowed until they
evaluate if it is appropriate to use with what they have classified as business data.
Let’s look at an example if we were to create a new tenant wide DLP policy that had just the Common Data Service
added to the Business Only Data and all others in No Business Data. Let’s look at a few application examples and
the outcome of this policy.
CONNECTORS USED IN APPLICATION OR FLOW IMPACT OF DLP
SharePoint, Twitter and Common Data Service This would not be allowed
Users accessing a PowerApp or Flow impacted by the DLP policy will see a message informing of the DLP policy
conflict. As an administrator you should have a process and plan in place to handle these types of support needs if
you are using DLP policies.
One thing to keep in mind, DLP policies created for a connector do not understand that that connector could be
configured to talk to Dev, Test and Production, etc. When you configure a DLP policy it is all or nothing. So, if you
want to allow Dynamics 365 connector to talk to a test database in the test environment, but not allow it to connect
to the production database in that same test environment, then DLP policies won’t help you restrict that. Another
way to say the same thing, is DLP policies are Connector aware, but do not control the connections that are made
using the connector.
Contoso – Default This is the default environment, and anyone can create apps
and flows in it
Community Plan Environments (0…N) These will be automatically created by any users in our org
that sign up for the free Community Plan
User Owned Environments (0…N) These are Production or Trial Environments created by users
with full P2 licenses or with Trial P2 licenses
We now are going to design a tenant wide default DLP policy. Our goal is to ensure that as people create their own
environments and test and explore they minimize mix of core business data without us first working with them.
Our goal is to apply this default global policy to all environments except Contoso Enterprise Applications which we
are going to manage by a separate DLP policy.
We have identified the following connectors as our initial set of business only data allowed connectors (remember
you can always add to this list at any time!).
With this policy in place any use outside of those business connectors will need to have exceptions handled and we
will cover that shortly.
For Contoso Enterprise Application environment since we excluded it from our policy we have two choices. We can
either leave it wide open since we only deploy to it trusted applications that we as administrators install and
configure or we establish a DLP policy for it to match its application needs. The following new DLP policy shows
how we would create a DLP specific for that environment.
The following is an example that might look like a super set of our global one – notice it includes some social
network and 3rd party connectors – but since these are all trusted apps and flows that is ok.
Now with this in place, you need a plan on how to handle exceptions. You really have three choices
1. Deny the request
2. Add the connector to the default DLP policy
3. Add the users’ environments to the All Except list for the Global default DLP and create a user specific DLP
policy with the exception included.
Hopefully that helps you understand how you might apply DLP policies in your organization. These are just some
of the many options you could configure with DLP policies.
Create a data loss prevention (DLP) policy
3/12/2019 • 2 minutes to read
To protect data in your organization, PowerApps lets you create and enforce policies that define which consumer
connectors specific business data can be shared with. These policies that define how data can be shared are
referred to as data loss prevention (DLP ) policies. DLP policies ensure that data is managed in a uniform manner
across your organization, and they prevent important business data from being accidentally published to
connectors such as social media sites.
In this topic, you'll learn how to create a DLP policy for a single environment that prevents data that's stored in
your Common Data Service and SharePoint databases from being published to Twitter.
Prerequisites
To follow the steps, one of the following items is required:
Azure Active Directory Tenant Admin permissions
Office 365 Global Admin permissions
PowerApps Environment Admin permissions plus a PowerApps Plan 2, Microsoft Flow Plan 2, or a PowerApps
Plan 2 trial license
For more information, see Environments administration in PowerApps.
2. The Data Policy Name field auto-populates with a name based on the time and date the policy is created.
Replace this with Secure Data Access for Contoso.
3. The options on the Environments tab differ depending on whether you're an Environment admin or a
Tenant admin. If you're an Environment admin, select an environment from the drop-down list, and then
click or tap Continue.
If you're a Tenant admin, you can create DLP policies that apply to one or more environments, or to all
environments within the tenant (including those created using a trial license). For this topic, click or tap
Apply to ONLY selected environments, select an environment from the drop-down list, and then click or
tap Continue.
Note that environment DLP policies cannot override tenant-wide DLP policies.
4. On the Data groups tab, under Business data only, click or tap Add.
5. In the Add connectors window, select Common Data Service and SharePoint (you may have to scroll
down or search to find them), and then click or tap Add connectors to add them to the Business data
only data group.
Connectors can reside in only one data group at a time and are added to the No business data allowed
group by default. By moving Common Data Service and SharePoint to the Business data only group,
you're preventing users from creating flows and apps that combine these two connectors with any of the
connectors in the No business data allowed group.
6. Click Save policy.
The Secure Data Access for Contoso policy is created and appears in the list of data loss prevention policies. Since
the Twitter connector resides in the No business data allowed data group, this policy ensures that the Common
Data Service and SharePoint do not share their data with Twitter.
It's good practice for administrators to share a list of DLP policies with their organization so that users are aware
of the policies prior to creating apps.
Next steps
In this topic, you learned how to create a DLP policy for a single environment to prevent important business data
from being accidentally published to connectors such as Twitter. To learn more about DLP policies, check out the
article about how to manage them.
Manage data loss prevention (DLP ) policies
Manage data loss prevention (DLP) policies
3/12/2019 • 2 minutes to read
An organization's data is critical to its success. Its data needs to be readily available for decision-making, but it
needs to be protected so that it isn't shared with audiences that shouldn't have access to it. To protect this data,
PowerApps lets you create and enforce data loss prevention (DLP ) policies that define which consumer
connectors specific business data can be shared with. For example, an organization that uses PowerApps may not
want its business data that's stored in SharePoint to be automatically published to its Twitter feed.
To create, edit, or delete DLP policies, you must have either Environment Admin or Azure Active Directory Tenant
Admin permissions. For more information, see Environments administration in PowerApps.
For instructions on how to create a DLP policy, see Create a data loss prevention (DLP ) policy.
NOTE
Environment DLP policies cannot override tenant-wide DLP policies.
To review the changes, find the DLP policy in the list of data loss prevention policies and click or tap it to
review its properties.
Delete a DLP policy
1. In the list of data loss prevention policies, click or tap the trash can icon next to the policy you want to
delete.
Next steps
Learn more about environments
Learn more about Microsoft PowerApps
Data groups
3/12/2019 • 3 minutes to read
Data groups are a simple way to categorize services within a data loss prevention (DLP ) policy. The two data
groups available are the Business data only group and the No business data allowed group. Organizations are
free to determine which services are placed into a particular data group. A good way to categorize services is to
place them in groups, based on the impact to the organization. By default, all services are placed into the No
business data allowed data group. You manage the services in a data group when you create or modify the
properties of a DLP policy from the admin center.
NOTE
Any new services that are added to PowerApps will be placed in the designated default group. For this reason, we
recommend you keep the No business data allowed as the default group and manually add services into the Business
data only group after your organization has evaluated the impact of allowing business data to be shared with the new
service.
2. Select SharePoint and Salesforce then select Add services to add both to the business data only group:
3. Select Save Policy from the menu at the top:
4. Notice that both SharePoint and Salesforce are now in the business data only group:
In this walk-through, you've added SharePoint and Salesforce to the business data only data group of a DLP
policy. If one of the person who is part of the DLP policy's environment create an app shares data between
SharePoint or Salesforce and any service in the No business data allowed data group, the app will not be
allowed to run.
1. Select the ... located at the top right corner of the data group you wish to designate as the default data group:
4. Notice the data group is now designated as the default data group:
Next steps
Learn more about data loss prevention (DLP ) policies
Learn more about environments
Learn more about Microsoft PowerApps
Management and monitoring
3/12/2019 • 2 minutes to read
Power Platform Admin center The new unified administrative portal for Power Platform
https://admin.powerplatform.microsoft.com admins. Currently this portal can be used for Common Data
Service Instance Management, to submit Dynamics 365 &
flow focused support tickets, and to view PowerApps and Flow
admin analytics. Over time the following admin experience will
be migrated & replaced by the Power Platform Admin center:
1. PowerApps Admin Portal
PowerApps Admin Portal Creating and managing environments including security starts
https://admin.powerapps.com here. Within each environment you can manage the apps and
flows. Monitoring to see who is licensed and building things.
Managing Data Loss Prevention Policies. Manage Common
Data Service Data Integration projects. Over time this will
migrated & replaced by the Power Platform Admin center.
PowerApps Maker Portal This portal is focused on building PowerApps but can also
https://web.powerapps.com view and manage Common Data Service components, manage
connectors and gateways. You can also see application
statistics from details on apps here.
Microsoft Flow Admin Portal This points to the same site as admin.powerapps.com. Over
https://admin.flow.microsoft.com time this will migrated & replaced by the Power Platform
Admin center.
Business platform admin center This points to the same site as admin.powerapps.com. Over
https://admin. businessplatform.microsoft.com time this will migrated & replaced by the Power Platform
Admin center.
Dynamics 365 admin center The Dynamics 365 Admin Center, that can be leveraged to
https://port.crm. dynamics.com/G/manage/index.aspx perform certain Common Data Service Environment
management activities like renaming, deleting, and resetting.
PORTAL COMMON TASKS
Dynamics 365 Instance Management This instance management portal is reached from
https://port.crm.dynamics.com admin.powerapps.com when managing the Common Data
/G/Instances/InstancePicker.aspx Service database or from the Dynamics 365 admin center.
Here you will see a list of all the Common Data Service
databases and can perform actions such as backup, as well as
other actions on a per instance basis.
Microsoft 365 admin center Here you will manage users and their license assignment as
https://admin.microsoft.com/AdminPortal well as you can launch into many of the individual admin
centers from here.
Security & Compliance Center In addition to the general compliance tasks, administrators can
https://protection.office.com come here to search the Audit log to see Flow audit events
Over the near-term future we will see consolidation of the PowerApps, Flow and the Dynamics 365 administration
portals into a more unified administrative portal experience. For partners helping their customers manage their
cloud services using delegated administration capabilities you will not be able to use delegated access to the
PowerApps and Flow portals. Currently, you would need to have a user in the customers tenant and assign that
user a P2 license.
From here you will see the following details for that specific flow.
PowerShell support for PowerApps (preview)
5/30/2019 • 11 minutes to read
With the preview launch of the PowerShell cmdlets for app creators and administrators, you can automate many
of the monitoring and management tasks that are only possible manually today in PowerApps or the PowerApps
Admin center.
Cmdlets
Cmdlets are functions written in PowerShell script language that execute commands in the Windows PowerShell
environment. Running these PowerApps cmdlets will allow you to interact with your Business Application
Platform without having to go through the admin portal in a web browser. You can combine these cmdlets with
other PowerShell functions to write complex scripts that can optimize your workflow. Note that you can still use
the cmdlets if you’re not an admin on the tenant, but you will be limited to the resources you own. Cmdlets that
start with the word ‘Admin’ are designed to be used by an administrative user account.
Cmdlets are available on the PowerShell gallery as two separate modules:
Administrator
Maker
NOTE
Regarding Dynamics 365 Government Community Cloud (GCC) level 2 support:
The default endpoint is “prod”. If a user wants to run a PowerShell script on the GCC environment, the -Endpoint parameter
needs to be changed to “usgov”. GCC High and DOD are not yet supported.
Installation
To run the PowerShell cmdlets for app creators, do the following:
1. Run PowerShell as an administrator.
2. Import the necessary modules using the following commands:
3. If you are prompted to accept the change to InstallationPolicy value of the repository, accept [A] Yes to all
modules by typing ‘A’ and pressing Enter for each module.
4. Before accessing any of the commands, you have the option to provide your credentials using the following
command. These credentials are refreshed for up to ~8 hours before you’re required to sign in again to
continue using the cmdlets.
# This call opens prompt to collect credentials (Azure Active Directory account and password) used by
the commands
Add-PowerAppsAccount
NOTE
We have updated some of the cmdlets function names in the latest release in order to add appropriate prefixes to prevent
collisions. See the table below for an overview of what has changed.
PURPOSE CMDLET
Read, update, and delete canvas app permissions Get-PowerAppRoleAssignment (previously Get-
AppRoleAssignment )
Set-PowerAppRoleAssignment (previously Set-
AppRoleAssignment )
Remove-PowerAppRoleAssignment (previously Remove-
AppRoleAssignment )
Read, update, and delete custom connector permissions Get-PowerAppConnectorRoleAssignment (previously Get-
ConnectorRoleAssignment )
Set-PowerAppConnectorRoleAssignment (previously Set-
ConnectorRoleAssignment )
Remove-PowerAppConnectorRoleAssignment (previously
Remove-ConnectorRoleAssignment )
Read, update, and delete canvas app permissions Get-AdminPowerAppRoleAssignment (previously Get-
AdminAppRoleAssignment )
Remove-AdminPowerAppRoleAssignment (previously
Remove-AdminAppRoleAssignment )
Set-AdminPowerAppRoleAssignment (previously Set-
AdminAppRoleAssignment )
Set-AdminPowerAppOwner (previously Set-AdminAppOwner)
Read and delete a user's Microsoft Flow settings, which are Get-AdminFlowUserDetails
not visible to user, but that support flow execution Remove-AdminFlowUserDetails
PURPOSE CMDLETS
Create, read, update and delete data loss prevention policies Get-AdminDlpPolicy (previously Get-AdminApiPolicy)
for your organization New-AdminDlpPolicy (previously Add-AdminApiPolicy)
Remove-AdminDlpPolicy (previously Remove-
AdminApiPolicy)
Set-AdminDlpPolicy (previously Set-AdminApiPolicy)
Add-ConnectorToBusinessDataGroup
Remove-ConnectorFromBusinessDataGroup
Add-CustomConnectorToPolicy
Remove-CustomConnectorFromPolicy
Tips
Use Get-Help ‘CmdletName’ to get a list of examples.
To cycle through the possible options for input tags, click on the tab key after typing out the dash (-)
character, after the cmdlet name.
Example commands:
Get-Help Get-AdminPowerAppEnvironment
Get-Help Get-AdminPowerAppEnvironment -Examples
Get-Help Get-AdminPowerAppEnvironment -Detailed
Operation examples
Below are some common scenarios that show how to use new and existing PowerApps cmdlets.
Environments Commands
PowerApps Commands
Flow commands
API connection commands
Data Loss Prevention (DLP ) policy commands
Environments commands
Use these commands to get details on and update environments in your tenant.
Display a list of all environments
Get-AdminPowerAppEnvironment
Returns a list of each environment across your tenant, with details of each (e.g., environment name (guid), display
name, location, creator, etc).
Display details of your default environment
Get-AdminPowerAppEnvironment –Default
Returns the details for only the default environment of the tenant.
Display details of a specific environment
Note: The EnvironmentName field is a unique identifier, which is different from the DisplayName (see first and
second fields in the output in the following image).
PowerApps commands
These operations are used to read and modify PowerApps data in your tenant.
Display a list of all PowerApps
Get-AdminPowerApp
Returns a list of all PowerApps across the tenant, with details of each (e.g., application name (guid), display name,
creator, etc).
Display a list of all PowerApps that match the input display name
Get-AdminPowerApp 'DisplayName'
Returns a list of all the PowerApps in your tenant that match the display name.
Note: Use quotation characters (”) around input values that contain spaces.
Feature an application
Set-AdminPowerAppAsFeatured –AppName 'AppName'
Featured applications are grouped and pushed to the top of the list in the PowerApps mobile player.
Note: Like environments, the AppName field is a unique identifier, which is different from the DisplayName. If
you want to perform operations based on the display name, some functions will let you use the pipeline (see next
function).
Make an application a Hero app, using the pipeline
A Hero app will appear at the top of the list in the PowerApps mobile player. There can only be one Hero app.
The pipeline (represented as the ‘|’ character between two cmdlets) takes the output of the first cmdlet and passes
it as the input value of the second, assuming the function has been written to accommodate the pipeline feature.
Note: an app must already be a featured app before it is changed to a hero.
Display the number of apps each user owns
You can combine native PowerShell functions with the PowerApps cmdlets to manipulate data even further. Here
we use the Select function to isolate the Owner attribute (an object) from the Get-AdminApp object. We then
isolate the name of the owner object by pipelining that output into another Select function. Finally, passing the
second Select function output into the Group function returns a nice table that includes a count of each owner’s
number of apps.
The above command will store the PowerApps user details (basic usage information about the input user via their
user principal name) in the specified text file. It will create a new file if there is no existing file with that name, and
overwrite the text file if it already exists.
Set logged in user as the owner of a PowerApp
Changes the owner role of a PowerApp to the current user, and replaces the original owner as a “can view” role
type.
Note: The AppName and EnvironmentName fields are the unique identifiers (guids), not the display names.
Flow commands
Use these commands to view and modify data related to Microsoft Flow.
Display all flows
Get-AdminFlow
Returns the user details regarding flow usage. In this example we’re using the user Id of the current logged in user
of the PowerShell session as input.
Remove flow user details
Deletes the details on a flow user completely from the Microsoft database. All flows the input user owns must be
deleted before the flow user details can be purged.
Note: The UserId field is the Object ID of the user’s Azure Active Directory record, which can be found in the
Azure Portal under Azure Active Directory > Users > Profile > Object ID. You must be an admin to access this
data from here.
Export all flows to a CSV file
Get-AdminFlow | Export-Csv -Path '.\FlowExport.csv'
Exports all the flows in your tenant into a tabular view .csv file.
API connection commands
View and manage API connections in your tenant.
Display all native Connections in your default environment
Displays a list of all API connections you have in the default environment. Native connections are found under the
Data > Connections tab in the maker portal.
Display all custom connectors in the tenant
Get-AdminPowerAppConnector
Get-AdminDlpPolicy
Get-AdminDlpPolicy 'DisplayName'
Lists the API connections that are in the Business data only(or BusinessDataGroup) field in an input policy.
Add a connector to the ‘Business data only’ group
Adds a connector to the ‘Business data only’ group in a given DLP policy. See the list of connectors by
DisplayName and ConnectorName (used as input) here.
Version History
DATE UPDATES
DATE UPDATES
05/24/2018 1. Minor bug fixes in both the cmdlets for app creators
and administrators
2. Added the following new administrative cmdlets:
Get-AdminConnection
Remove-AdminConnection
Get-AdminConnectionRoleAssignment
Set-AdminConnectionRoleAssignment
Remove-AdminConnectionRoleAssignment
Get-AdminConnector
Remove-AdminConnector
Set-AdminConnectorRoleAssignment
Get-AdminConnectorRoleAssignment
Remove-AdminConnectorRoleAssignment
Get-AdminPowerAppsUserDetails
Get-AdminFlowUserDetails
Remove-AdminFlowUserDetails
Get-AdminApiPolicy
Add-AdminApiPolicy
Remove-AdminApiPolicy
Set-AdminApiPolicy
Add-ConnectorToBusinessDataGroup
Remove-ConnectorFromBusinessDataGroup
08/24/2018 Fixed an issue where the Flow admin cdmlets where not
returning data for some using based on their security settings
Questions?
If you have any comments, suggestions, or questions, post them on the Administering PowerApps community
board.
Automation of tasks with PowerShell
3/22/2019 • 2 minutes to read
Office 365 cmdlets These are focused on Office 365 related tasks and can be used
https://docs.microsoft.com/en- to automate user-related actions and tasks, for example,
us/office365/enterprise/powershell/getting-started-with- assignment of licenses.
office-365-powershell
Dynamics 365 cmdlets These are useful if you have any environments with Common
https://docs.microsoft.com/en- Data Service databases. Modules include support for using the
us/powershell/dynamics365/customer-engagement/overview Common Data Service online admin API, as well as to
automate solution deployment to the Common Data Service
instances.
Microsoft Azure cmdlets The Azure cmdlets are useful if you are including any Azure
https://docs.microsoft.com/en-us/powershell/azure/overview components in your overall solution. This could also be used
to script setup of the on-premise application gateway.
```
Get-AdminPowerAppEnvironment
```
This will give you key information such as the Display Name and GUID of the environment. This is often what is
needed for follow on operations.
Adding parameters such as -Default will allow you to generically find the default environment in the tenant.
```
Get-AdminPowerAppEnvironment -Default
```
Using the GUID you got back (which is the non-display name for the environment) you can drill into details of that
specific environment Get-AdminPowerAppEnvironment -Environment ‘EnvironmentName’
Which would produce the following detailed information:
Another useful one is getting a list of connections in an environment. The following lists all the connections in the
tenant’s default environment.
```
Get-AdminPowerAppEnvironment -Default | Get-AdminPowerAppConnection
```
And finally, a little more complex example. This one pipes the output from one cmdlet to others and presents a nice
list of number apps in each environment in the tenant.
```
Get-AdminPowerApp | select -ExpandProperty EnvironmentName | Group | %{ New-Object -TypeName PSObject -Property
@{ DisplayName = (Get-AdminPowerAppEnvironment -EnvironmentName $_.Name | select -ExpandProperty displayName);
Count = $_.Count } }
```
Use PowerApps Build Tools to automate common build and deployment tasks related to PowerApps. This includes
synchronization of solution metadata (solutions) between development environments and source control,
generating build artifacts, deploying to downstream environments, provisioning/de-provisioning of environments,
and the ability to perform static analysis checks against your solution using the PowerApps checker service.
Interested? Check out the blog: Automate your application lifecycle management (ALM ) with PowerApps Build
Tools (Preview ).
Automation of tasks with Flow
3/12/2019 • 2 minutes to read
Flow management connector Can be used to automate working with Flows including
https://docs.microsoft.com/en- getting lists of new flows or connectors in your environments.
us/connectors/flowmanagement/
Office 365 Users connector Useful for automating actions around users. For example, you
https://docs.microsoft.com/en-us/connectors/office365users/ could use the connector to get the manager of a user that
owns an environment to be able to send them an e-mail for
approval.
Approval connector Often administrators need to get approvals and Flow offers a
https://docs.microsoft.com/en-us/connectors/approvals/ rich approval set of tasks you can automate this process.
If you're an Environment admin, you can view and download a list of apps created in the environments that you're
administering. If you're a 365 Global admin or Azure Active Directory Tenant admin, you can view and download a
list of apps created in all of the environments in your organization.
In this topic, you'll learn how to download a list of apps created in a single environment to a .csv file, and then view
that list in Excel.
Prerequisites
To follow the steps, the following items are required:
Either a PowerApps Plan 2 or Microsoft Flow Plan 2 license. Alternatively, you can sign up for a free
PowerApps Plan 2 trial.
PowerApps Environment Admin, Office 365 Global Admin, or Azure Active Directory Tenant Admin
permissions. For more information, see Environments administration in PowerApps.
2. On the Resources tab, click or tap Apps, and then click or tap Download the list of apps.
The list of apps is downloaded into a .csv file. This process could take several minutes. Make sure that you
don't close the window before the list completely downloads or you may have to restart the process.
Next steps
In this topic, you learned how to download and view a list of apps created in an environment within your
organization. Next, learn how to manage the apps created in your organization.
Manage apps created in your organization
Manage apps created in your organization
3/12/2019 • 2 minutes to read
If you're an Environment Admin, Office 365 Global Admin, or Azure Active Directory Tenant Admin, you can
manage the apps created in your organization.
Admins can do the following from the PowerApps Admin center:
Add or change the users with whom an app is shared
Delete apps not currently in use
View the data sources used by an app
Prerequisites
Either a PowerApps Plan 2 or Microsoft Flow Plan 2 license. Alternatively, you can sign up for a free
PowerApps Plan 2 trial.
PowerApps Environment Admin, Office 365 Global Admin, or Azure Active Directory Tenant Admin
permissions. For more information, see Environments administration in PowerApps.
Manage an app
1. Sign in to the Admin center at https://admin.powerapps.com.
2. In the navigation pane, click or tap Environments, and then click or tap the environment that contains the
app that you want to manage.
If you don't see Environments in the navigation pane, that indicates you don't have a PowerApps Plan 2,
Microsoft Flow Plan 2, or PowerApps Plan 2 trial license.
3. On the Resources tab, click or tap Apps, and then click or tap the app that you want to manage.
This takes you to the app Details page.
Next steps
Check out other how -to guides to learn what else you can do from the PowerApps Admin center.
Environment and tenant app migration through
Packaging
3/22/2019 • 5 minutes to read
Learn how to migrate resources from one environment to another with packaging. These environments can be
within the same tenant or across different tenants.
The scenario
One common scenario where you may want to migrate resources is where you have Test or Dev environments
and a Production environment. Developers and testers have wide access to the apps in their environments. But
when it comes time to migrate a new app to production, that environment has rigorous control over permissions
to update and change it.
Another scenario is one where each customer has their own environment and data. When a new customer is
added, a new environment is created for them, and you would migrate apps into their environment.
NOTE
While packaging is in preview, any user with a valid PowerApps license will be able to try out packaging for their apps and
environments.
Exporting an app
1. In http://web.powerapps.com, click or tap Apps, select the ellipses for the app you want to migrate, and
then select Export (preview).
2. When the export package page opens, enter a Name and Description for the package.
3. Within the ‘Review Package Content’ section you can optionally add comments or notes or change the
setting for how each individual resource will be imported into the target environment during package
import.
4. When you are done select Export and the package file will begin downloading within a few seconds.
Importing an app
1. In http://web.powerapps.com, click or tap Apps, and then select Import package (preview).
2. Select Upload and select the app package file that you want to import.
3. Once the package has been uploaded you will need to review the package contents and will need to provide
additional input for any item marked with a red icon by selecting the wrench icon for each item and
entering the required information.
4. Once you have provided all of the required information select Import.
5. When import completes you will be automatically redirected to a page (similar to the one below ) that
outlines whether or not the import operation was successful.
NOTE
If you are importing an app and chose to Update an existing app, the new changes will be saved as a draft of the
applications. You will need to publish those changes in order for them to be available all other users of the applications.
NOTE
If you would like to learn more about solutions in PowerApps, please see Introduction to solutions.
2. Select Advanced in the left-navigation bar to launch the solution explorer for this environment's default
solution
3. Select Export Solution and complete the required steps. A solution package file will begin downloading
within a few seconds.
3. Copy the Url from your browser, make the following changes and then navigate to the new URL in your
browser:
Current URL structure:
https://{orguniquename}.crm.dynamics.com/tools/solution/edit.aspx?id={solutionname}
New URL structure:
https://{orguniquename}.crm.dynamics.com/tools/solution/SolutionImportWizard.aspx
4. Select the Common Data Service solution package file that you want to import, and complete the wizard.
5. If import is successful you will see the following confirmation dialog. In order for the solution changes to be
available to other customizers within the environment select Publish All Customizations
Embed an app in Microsoft Teams
8/21/2019 • 3 minutes to read
As an admin, you can share apps created in PowerApps to users in your tenant through Microsoft Teams. Upload
the apps so they show up for all teams in your tenant under the All tabs section.
Individuals can share an app they've created in PowerApps in a Team they are a member of by following these
instructions.
NOTE
Team custom app policies must be set to allow uploading custom apps. Check out custom app settings.
Prerequisites
Have a PowerApps license
Be a tenant administrator
Created a canvas app
2. Select More Commands (...) for the app you want to share in Teams, and then select Details.
3. Record the App ID for later use.
3. Fill in information about your app in the App Details page. For the App ID GUID, you should use your
app's ID GUID you recorded above. This will avoid duplication of Teams apps for a particular app.
FIELDS DESCRIPTION
App names
Short name Required. The short display name for the app. 30 character
limit.
Long name The full name of the app, used if the full app name exceeds
30 characters.
Identification
Package Name Required. A unique identifier for this app in reverse domain
notation; for example, com.example.myapp.
Descriptions
Developer information
Website Required. The https:// URL to the website for your app via
powerapps.com. When someone clicks to install and sees
the About page, it should link to the web version of your
app.
App URLs These links will show up in the About page along with the
website URL.
Terms of use Required. The https:// URL to the developer's terms of use.
Example.
Branding
Full color A relative file path to a full color 192x192 PNG icon.
7. Add your app's configuration URL in the "Configuration URL" input field, using the following format:
https://web.powerapps.com/webplayer/teamsapptabsettings?appid=<your App ID>
Replace <App ID> with the App ID GUID you recorded above.
Select the scope for your app to appear in. Ensure Can update configuration is checked, select Save, and
then skip to Step 10.
--OR--
8. To configure the Teams manifest, under Add a personal tab select Add.
11. To set device permissions for your app, under Device permissions select Set up.
12. Under Finish, select Test and distribute, and then select Download.
13. Go to Store > Upload a custom app > Upload for [your tenant name].
14. Locate your app file and select it. Then, navigate to your team and select +.
15. You app will appear as a tile under All Tabs. Search for your app, select it, and then select Save.
The app now appears as a tab for all teams in your tenant.
Download a list of active users in your tenant
3/21/2019 • 2 minutes to read
If you're a 365 Global admin or Azure Active Directory Tenant admin, you can download a list of active users in
your tenant, so you can see not only who's accessed PowerApps, Microsoft Flow, or both, but also the licenses
assigned to those users.
In this topics, you'll learn how to download a list of active users to a .csv file, and then view that list in Excel.
To follow the steps, you need Office 365 Global Admin or Azure Active Directory Tenant Admin permissions.
The list of users is downloaded into a .csv file. This process could take several minutes. Make sure that you don't
close the window before the list completely downloads or you may have to restart the process.
If a user has left the organization, the list will show Unknown in the User name and Email address columns. If
the list shows Unknown but nobody has left the organization, wait several minutes, and then download the list
again.
To add user licenses, open the Microsoft 365 admin center.
Next steps
In this topic, you learned how to download and view a list of active users in your tenant. To learn how to download
and view a list of apps created in your environments, continue to the next topic.
Download a list of apps created in your environments
Deployment scenarios
3/22/2019 • 4 minutes to read
Canvas app or Flows that are built to share with others (wp)
In this scenario a user built a flow in the default environment that uses only connectors that are allowed by your
DLP policies.
For this scenario there is no need for additional DLP policies or environments. The user can share the flow
themselves, with other users either as co-owners if they want them to be able to edit it, or for run-only.
Canvas app or Flows with existing Common Data Service database (wp)
A user or team wants to build an application that leverages data that already exists in Common Data Service. They
do not plan to make any schema changes to Common Data Service.
For this scenario the Common Data Service database would exist in an environment other than default (since you
can’t currently create a Common Data Service instance in default). The canvas apps or flows can’t therefore be built
in the default environment using the Common Data Service connectors but could if they use the Dynamics 365
connector which allows you to select the Common Data Service instance from a separate environment.
The next decision comes down to if there is need for test data. If there is, then building the app in the test
environment with the Common Data Service connector would allow the app to be promoted to the production
Common Data Service environment once development and testing was completed. Since the app used the
Common Data Service connector it would be able to be simply exported and re-imported into the production
environment without having to change the references to test. This assumes that test and production Common Data
Service environments have the same schema.
Who is the application owner, and who is involved in Are any new connectors being used by the application?
maintaining it?
Who are the users of the apps? Are they already licensed? Is there any new reference data to update?
What environment did you build the app in? Are there any new Canvas, Flows or Common Data Service
solutions added in this update?
Are there any PowerApps canvas or model-driven apps as Any changes to how users are assigned security roles?
part of the application?
Are there any flows? Any impact on existing Common Data Service data?
What connectors are the apps using? Any changes in the required licenses?
Does anything require an on-premises gateway? Potentially any of the considerations from the New Application
column, if it was not a consideration at the time.
Is there any existing data that must be migrated into the new
production system?
The answers to these questions will help you put together an application profile and decide how best to support
the team with deploying the application. This is not an exhaustive list, but a starting point for you to develop your
own set of questions for applications.
The output from the tool is a zip file containing the data and the schema file. The same tool can be used to import
the data into the target Common Data Service instance. You can also package the data with a Solution Deployer
package that we will discuss shortly allowing it to be deployed alongside one or more Common Data Service
solutions. You can read more about how to use the tool here https://docs.microsoft.com/en-
us/dynamics365/customer-engagement/admin/manage-configuration-data.
Within the Audit log search screen, tenant administrators can search audit logs across many popular services
including eDiscovery, Exchange, Power BI, Azure AD, Microsoft Teams, Dynamics 365 for Customer Engagement
apps, and now Microsoft PowerApps.
Once the Audit log search screen is accessed, an administrator can filter for specific activities by pulling down the
Activities dropdown. By scrolling down the list, a section dedicated to Microsoft PowerApps activities can be
found.
EVENT DESCRIPTION
Created app When the app gets created for the first time by a maker
Published app When the app is published and is now made available to
others in the environment
Edited app permission Every time a user's permissions to the app is changed
Deleted app permission Every time a user's permissions to the app is removed
Base schema
Schemas define which PowerApps fields are sent to the Office 365 Security and Compliance Center. Some fields
are common to all applications that send audit data to Office 365, while others are specific to PowerApps. The Base
schema contains the common fields.
Review your audit data using reports in Office 365 Security and
Compliance Center
You can review your audit data in the Office 365 Security and Compliance Center. See Search the audit log for user
and admin activity in Office 365.
To use the preconfigured PowerApps reports, go to https://protection.office.com > Search & investigation >
Audit log search and select the PowerApps app activities tab.
See also
Search the audit log for user and admin activity in Office 365
Office 365 Management APIs overview
Permissions in the Office 365 Security & Compliance Center
Integrate data into Common Data Service
5/15/2019 • 16 minutes to read
The Data Integrator (for Admins) is a point-to-point integration service used to integrate data into Common Data
Service. It supports integrating data from multiple sources—for example, Dynamics 365 for Finance and
Operations, Dynamics 365 for Sales and SalesForce (Preview ), SQL (Preview )—into Common Data Service. It
also supports integrating data into Dynamics 365 for Finance and Operations and Dynamics 365 for Sales. This
service has been generally available since July 2017.
We started with first-party apps—for example, Dynamics 365 for Finance and Operations and Dynamics 365 for
Sales. With the help of Power Query or M -based connectors, we are now able to support additional sources like
SalesForce (Preview ) and SQL (Preview ) and will extend this to 20+ sources in the near future.
TIP
Check out the blog: Data Integrator Updates – New features with an intuitive user interface providing a fluent experience.
How can you use the Data Integrator for your business?
The Data Integrator (for Admins) also supports process-based integration scenarios like Prospect to Cash that
provide direct synchronization between Dynamics 365 for Finance and Operations and Dynamics 365 for Sales.
The Prospect to Cash templates that are available with the data integration feature enable the flow of data for
accounts, contacts, products, sales quotations, sales orders, and sales invoices between Finance and Operations
and Sales. While data is flowing between Finance and Operations and Sales, you can perform sales and marketing
activities in Sales, and you can handle order fulfillment by using inventory management in Finance and
Operations.
The Prospect to Cash integration enables sellers to handle and monitor their sales processes with the strengths
from Dynamics 365 for Sales, while all aspects of fulfillment and invoicing happen using the rich functionality in
Finance and Operations. With Microsoft Dynamics 365 Prospect to Cash integration, you get the combined power
from both systems.
See the video: Prospect to cash integration
For more information about the Prospect to Cash integration, see the documentation on the Prospect to Cash
solution.
We also support Field Service integration and PSA (Project Service Automation) integration to Dynamics 365 for
Finance and Operations.
NOTE
Please make sure that the account you specify for each connection has access to entities for the corresponding applications.
Additionally, the account for each connection can be in a different tenant.
NOTE
You can specify multiple mappings for each connection set.
6. Select Next and choose a connection set you created earlier (or create a new connection set).
7. Make sure you have chosen the right one by confirming the connection and environment names.
8. Select Next and then choose the legal entity to business unit mappings.
9. Review and accept the privacy notice and consent on the next screen.
10. Proceed to create the project and then run the project which in turn executes the project.
On this screen, you will notice several tabs—Scheduling and Execution history—along with some
buttons—Add task, Refresh entities, and Advanced Query—that will be described later in this article.
Execution history
Execution history shows the history of all project executions with project name, timestamp of when the project
was executed, and status of execution along with the number of upserts and/or errors.
Example of project execution history.
Example of successful execution, showing status as completed with # of upserts. (Update Insert is a logic to
either update the record, if it already exists, or to insert new record.)
For execution failures, you can drill down to see the root cause.
Here is an example of a failure with project validation errors. In this case, the project validation error is due
to missing source fields in the entity mappings.
If the project execution is in ‘ERROR’ state, then it will retry execution at the next scheduled run.
If the project execution is in ‘WARNING’ state, then you will need to fix the issues on the source. It will retry
execution at the next scheduled run.
In either case, you could also choose to manually ‘re-run execution.’
NOTE
Anytime you execute a project, manually or schedule based, it generates a detailed log which shows project name, last
updated timestamp along with status. You can view this under the execution history for each project. Project execution
history is maintained for 45 days after which it is automatically purged.
3. Select Recur every and once you have completed all the fields, select Save schedule.
You can set a frequency as often as 1 minute or have it recur a certain number of hours, days, weeks, or months.
Note that the next refresh won't start until the previous project task completes its run.
Also note that under Notifications, you can opt in for email-based alert notifications, which would alert you on job
executions that either completed with warnings and/or failed due to errors. You can provide multiple recipients,
including groups separated by commas.
NOTE
Currently, we support scheduling 50 integration projects at any given time per paid tenant. However you can create
more projects and run them interactively. For trial tenants, we have an additional limitation that a scheduled project
would only run for first 50 executions.
While we support scheduling projects to run every minute, please bear in mind that this may put a lot of stress on your
apps and in turn impact overall performance. We highly encourage users to test project executions under true load
conditions and optimize for performance with less frequent refreshes. In production environments, we do not
recommend running more than 5 projects per minute per tenant.
To optimize performance and not overload the apps, we currently limit project executions to 500k rows per execution per
project.
Anytime you execute a project, manually or schedule based, it generates a detailed log which shows project name, last
updated timestamp along with status. You can view this under the execution history for each project. Project execution
history is maintained for 45 days after which it is automatically purged.
7. The dropdown list shows you all your source and destination entities.
In this case, a new task was created to sync User entity from SalesForce to Users entity in Common Data
Service.
8. Once you create the task, you will see your new task listed and you can delete the original task.
9. You just created a new template—in this case, a template to pull User entity data from SalesForce to
Common Data Service. Select Save to save your customization.
10. Follow the steps to customize field mappings for this new template. You could run this project and/or save
the project as a template from the Project list page.
11. Provide a name and description and/or share with others in your organization.
5. Follow the steps 6 through 9 here to finish creating a data integration project. Select Save.
6. You’ll see the Tasks page which is empty since it’s a blank template, without any tasks. Select Add task to
pick an entity from the drop-down list and add a new task. In this case, for demo purposes, we will create an
Activities Sales to Fin and Ops task by picking Activities entity for Dynamics 365 for Finance and
Operations and Dynamics 365 for Sales. Select Create.
7. You'll see a new task has been added Activities Sales to Fin and Ops. Select Save to save your changes.
8. The project is created. Select Save as template from the Projects list page.
9. Provide and name and description, then select Save. Additionally, select Share with everyone in my
organization to share this template.
You'll see the newly created template listed on the Templates list page.
Additionally, after creating a new integration project, when you choose Select a template you'll see your newly
created template as part of the Select a template list.
4. You are now presented with the familiar entity mapping page with a link to launch Advanced Query and
Filtering.
5. Select to link to launch the Advanced Query and Filtering user interface, which gives you source field data
in Microsoft Excel-type columns.
6. From the top menu, you get several options for transforming data such as Add conditional column,
Duplicate column, and Extract.
7. You can also right-click any column for more options such as Remove columns, Remove duplicates, and
Split column.
8. You also can filter by clicking each column and using Excel-type filters.
9. Default value transforms can be achieved using the conditional column. To do this, from the Add Column
dropdown list, select Add Conditional Column and enter the name of the new column. Fill in both Then
and Otherwise with what should be the default value, using any field and value for If and equal to.
11. Fix the each clause in the fx editor and select OK.
12. Each time you make a change, you apply a step. You can see the applied steps on the right-hand pane (scroll
to the bottom to see the latest step). You can undo a step in case you need to edit. Additionally, you can go
to the Advanced editor by right-clicking the QrySourceData on the left pane, at the top to view the M
language that gets executed behind the scenes, with the same steps.
13. Select OK to close the Advanced Query and Filtering interface and then, on the mapping task page, pick the
newly created column as the source to create the mapping accordingly.
Performance tuning
There are several factors that impact the performance of an integration scenario. Performance is highly dependent
on:
Which applications you are integrating: Dynamics 365 for Finance and Operations and Common Data
Service
Which entities are used: the entities' shape, validation, and business logic (standard and customizations)
The Data Integrator takes the data from the source application and pushes it into the target application. The main
performance considerations are on how source and target applications scale with the concerned entities. It
leverages the best available technologies to pull/push data in a performant manner.
Dynamics 365 for Finance and Operations uses the data management framework which provides a way to
pull/push data in the most performant fashion. The data management framework is used to manage data entities
and data entity packages in Microsoft Dynamics 365 for Finance and Operations.
Dynamics 365 for Common Data Service uses OData APIs along with parallelism to maximize the performance.
You can use the following settings to tune the performance of Dynamics 365 for Finance and Operations based on
load, entity, and resources.
Exporting data from Dynamics 365 for Finance and Operations:
Direct export ( skip Staging On) Make sure the entities used for integration support direct export ( skip
Staging On). This allows export to run in bulk fashion and the staging table is bypassed. If you run with
skip Staging Off, then it falls back to row by row calls and data is inserted in the staging table.
Enable change tracking for entities Change tracking enables incremental export of data from Microsoft
Dynamics 365 for Finance and Operations by using data management. In an incremental export, only
records that have changed are exported. To enable incremental export, you must enable change tracking on
entities. Without change tracking, you will do full exports which may affect performance. For complex
scenarios, use custom query for change tracking.
Importing data to Dynamics 365 for Finance and Operations:
Make sure the entity itself is performant. If possible, create set-based entities.
If the number of rows to be imported are high and entity does not support set operations: Data
management can be configured to import the entity with parallel tasks. This can be configured in data
management (parameters), by configuring the entity execution parameters. This would use batch
framework to create parallel tasks, which is based on resource availability to run in parallel.
Turning off validations (optional): While the Data Integrator does not bypass any business logic and
validations, you may optionally turn off the ones that are not required to improve performance.
Consider the following tips to ensure performance while importing or exporting data from Dynamics 365 for
Customer Engagement environments.
Importing/Exporting data to/from Dynamics 365 for Customer Engagement
Ensure indexes are defined for integration keys.
Data Integrator error management and
troubleshooting
4/19/2019 • 5 minutes to read
The Data Integrator is a point-to-point integration service used to integrate data from multiple sources--for
example, Dynamics 365 for Finance and Operations, Dynamics 365 for Sales, Salesforce, and Microsoft SQL
(Preview )--into Common Data Service. It also supports integrating data into Dynamics 365 for Finance and
Operations and Dynamics 365 for Sales. The Integrate data into Common Data Service topic provides detailed
step-by-step instructions to help you set up projects for process-based integration scenarios like Prospect to Cash,
Field Service, and Project Service integrations.
While we are constantly evolving and driving fixes into the platform based on customer feedback, we understand
there is a need to provide guidance when you run into issues. This topic walks you through error management and
troubleshooting some of these issues.
The admin dashboard provides a one-stop real-time view of all your project runs and their status with a drill-down
to view execution details. The dashboard shows you the individual and summarized count of executions. These are
color-coded to show the status of each project: green for completed projects, yellow for completed projects with
warnings, and red for projects with an error status. Similarly, the green, yellow, and red icons on the project list
page indicate the status of your projects.
Additionally, to view more details, you can drill through project executions via the admin dashboard by selecting
individual bar charts.
Now you can drill through individual errors.
You can also view project execution details by selecting the individual projects on the project list page and viewing
the historical executions and status on the Execution history tab.
If you get a warning or error, you can drill down more by clicking through the executions on the Execution
history tab.
Project monitoring
We highly encourage our customers and partners to subscribe to email-based notifications so you receive email
alerts on project executions that completed with either warnings or errors. For each project, on the Scheduling
tab, you can select email-based notifications and provide multiple email addresses (including group addresses),
separated by commas.
Any time a project completes with a warning or is in the error state, you get an email notification indicating the
project execution status with a drillthrough link to the specific failure.
Selecting the link takes you directly to your project execution status, which you can further drill through for specific
errors.
Warning
Status if some records were upserted successfully, while some failed or errored out.
Error
Status if none of the records were successful and/or errored out, and there were no upserts or inserts in the
destination.
If the project execution is in the Error state, then it will automatically retry execution at the next scheduled
run.
You can also manually retry an execution by selecting Re-run execution via the ellipsis (...) on the Execution
history page.
Environment: If you don’t see your environments in the drop-down, ensure that the account you used to
create the connections has the appropriate access to the entity. A good way to test this is by creating a flow
(using Microsoft Flow ).
Here is an example of creating a simple flow to test your connection to Dynamics 365 for Finance and
Operations:
1. Create a new flow (choose Create from blank) under Business logic/Flow from
https://web.powerapps.com.
2. Select a Recurrence trigger. Under New Step, search for and select Dynamics 365 for Finance
and Operations connector.
3. Select Create record as an action. In the drop-down, ensure that you are logged in with the
appropriate account. This is the same account you use to create a connection for your data integration
projects.
4. Select the drop-down under Instance to show all the Dynamics 365 Finance and Operations
environments. This is a good step to verify that your account (from the previous step) has access to
the environments.
5. Once you have picked your environment, confirm that you have access to all the entities under it.
Organizations: This is where you would specify the legal entity (for example, USMF ) for Dynamics 365 for
Finance and Operations, the business unit for Dynamics 365 for Sales, or the Common Data Service
organization name. If you miss this step, you get a message that contains valid names corresponding to your
application that you then need to plug in under Organizations.
Project validation errors
First, you validate a data integration project, and then execute it. Some of the top reasons for validation errors
include:
Incorrect company/business unit selected during project creation
Missing mandatory columns
Incomplete or duplicate mapping
Field type mismatch
Here is an example of how the error manifests in the case of duplicate mapping. The orange banner indicates
mapping issues.
When you drill further into the project execution history, you see there is a duplicate field issue.
When you inspect the mapping, you can identify duplicates. In this case, the source field fax is incorrectly mapped
to ADDRESSCITY.
Once you fix the mapping, the error should go away, and you should be able to execute the project successfully.
If this is an integration project where Dynamics 365 for Finance and Operations is the source, go to the Data
Management workspace in Dynamics 365 Finance and Operations. Then filter projects based on your data
integration project name, or specifically choose the type of import or export job.
Additionally, you can open the job history of the project and drill through the job ID based on the time stamp of
your execution. You can also inspect the execution log, view historical runs, and view the staging data.
Responding to DSR requests for system-generated
logs in PowerApps, Microsoft Flow, and Common
Data Service
3/22/2019 • 6 minutes to read
Microsoft gives you the ability to access, export, and delete system-generated logs that may be deemed personal
under the European Union (EU ) General Data Protection Regulation (GDPR ) broad definition of personal data.
Examples of system-generated logs that may be deemed personal under GDPR include:
Product and service usage data, such as user activity logs
User search requests and query data
Data generated by product and services as a product of system functionality and interaction by users or other
systems
Note that the ability to restrict or rectify data in system-generated logs is not supported. Data in system-generated
logs constitutes factual actions conducted within the Microsoft cloud, and diagnostic data—including modifications
to such data—would compromise the historical record of actions and increase fraud and security risks.
Prerequisites
This article focuses on responding to DSR requests for system-generated logs in managed and unmanaged
tenants. To determine whether or not you belong to a managed or unmanaged tenant, please see the Determining
Tenant Type section below.
How long does the Microsoft Data Log Export tool take to This depends on several factors. In most cases it should
complete a request? complete in one or two days, but it can take up to 30 days.
What format will the output be in? The output will be in the form of structured, machine-readable
files such as XML, CSV, or JSON.
Who has access to the Data Log Export tool to submit access Office 365 Global Administrators will have access to the GDPR
requests for system-generated logs? Log Manager tool.
What data does the Data Log Export tool return? The Data Log Export tool returns system-generated logs that
Microsoft stores. Exported data spans across various Microsoft
services including Office 365, Azure, Dynamics, PowerApps,
Microsoft Flow, and Common Data Service.
How is data returned to the user? Data will be exported to your organization's Azure storage
location; it will be up to administrators in your organization to
determine how they will show/return this data to users.
What will data in system-generated logs look like? Example of a system-generated log record in JSON format:
[{
"DateTime": "2017-04- 28T12:09:29-07:00",
"AppName": "SharePoint",
"Action": "OpenFile", "IP": "154.192.13.131",
"DevicePlatform": "Windows 1.0.1607"
}]
NOTE
For security and audit purposes, some features do not allow you to export or delete system-generated logs in order to
maintain the integrity of personal information.
QUESTION ANSWER
How long does the Microsoft Data Log Export tool take to This depends on several factors. In most cases it should
complete a request? complete in one or two days, but it can take up to 30 days.
What format will the output be in? The output will be in the form of structured, machine-readable
files such as XML, CSV, or JSON.
Who has access to the Data Log Export tool to submit access Users who are a member of an unmanaged tenant have
requests for system-generated logs? access to submit requests.
What data does the Data Export tool return? The Data Export tool returns system-generated logs that
Microsoft stores. Exported data spans across various Microsoft
services including Office 365, Azure, Dynamics, PowerApps,
Microsoft Flow, and Common Data Service.
How is data returned to the user? Data will be exported to a Microsoft website where a link will
be securely provided to the user who made the DSR request.
What will data in system-generated logs look like? Example of a system-generated log record in JSON format:
[{
"DateTime": "2017-04- 28T12:09:29-07:00",
"AppName": "SharePoint",
"Action": "OpenFile", "IP": "154.192.13.131",
"DevicePlatform": "Windows 1.0.1607"
}]
NOTE
For security and audit purposes, some features do not allow you to export or delete system-generated logs in order to
maintain the integrity of personal information.
{
...
"Login": "[email protected]",
"DomainName": "unmanagedcontoso.com",
"IsViral": **true**,
...
}
Users can delete templates by navigating to the templates tab and clicking the ellipses next to the template, and
then selecting the delete option:
Users can delete connection sets by navigating to the connection sets tab and clicking on the ellipses next to the
connection set, and then selecting the delete option:
To export connection sets, users can navigate to the connection set tab and click on the ellipses next to the
connection set, and then select the export option:
Responding to Data Subject Rights (DSR) requests for
PowerApps customer data
3/22/2019 • 7 minutes to read
Discover
The first step in responding to a DSR request is to find the personal data that is the subject of the request. This first
step—finding and reviewing the personal data at issue—will help you determine whether a DSR request meets
your organization's requirements for honoring or declining a DSR request. For example, after finding and
reviewing the personal data at issue, you may determine the request doesn’t meet your organization’s
requirements because doing so may adversely affect the rights and freedoms of others.
Step 1: Find personal data for the user in PowerApps
Below is a summary of the types of PowerApps resources that contain personal data for a specific user.
Canvas app Cross-platform business apps that can be built from a power
of a blank canvas and connected to over 200 data sources.
Learn more
Canvas-app permissions Canvas apps can be shared with users within an organization.
Learn more
Connection permissions Certain types of connections can be shared with users within
an organization. Learn more
Custom connector Custom connectors that a user has created to provide access
to a data source not offered through one of the PowerApps
standard connectors. Learn more
PowerApps user and user-app settings PowerApps stores several user preferences and settings that
are used to deliver the PowerApps runtime and portal
experiences.
Model-driven apps and model-driven app permissions Model-driven app design is a component-focused approach to
app development. Model-driven apps and their user access
permissions are stored as data within the Common Data
Service database. Learn more
PowerApps offers the following experiences to find personal data for a specific user:
Website access: PowerApps site, PowerApps Admin center, and Office 365 Service Trust Portal
PowerShell access: PowerApps cmdlets (for app creators and administrators) and On-premises gateway
cmdlets
For detailed steps on how you can use these experiences to find personal data for a specific user for each of these
types of resources, see Responding to Data Subject Rights (DSR ) requests to export PowerApps customer data.
After you find the data, you can then perform the specific action to satisfy the request by the data subject.
Step 2: Find personal data for the user in Microsoft Flow
PowerApps licenses always include Microsoft Flow capabilities. In addition to being included in PowerApps
licenses, Microsoft Flow is also available as a standalone service.
For guidance on how to discover personal data stored by the Microsoft Flow service, see Responding to GDPR
Data Subject Requests for Microsoft Flow.
IMPORTANT
It is recommended that admins complete this step for a PowerApps user
Step 3: Find personal data for the user in instances of Common Data Service
Certain PowerApps licenses, including the PowerApps Community Plan, give the ability for users within your
organization to create instances of Common Data Service and to create and build apps on Common Data Service.
The PowerApps Community Plan is a free license that allows users to try out Common Data Service in an
individual environment. See the PowerApps Pricing page for which capabilities are included in each PowerApps
license.
For guidance on how to discover personal data stored by Common Data Service, see Responding to Data Subject
Rights (DSR ) requests for customer data in Common Data Service.
IMPORTANT
It is recommended that admins complete this step for a PowerApps user.
Rectify
If a data subject asks you to rectify the personal data that resides in your organization’s data, you and your
organization must determine whether it’s appropriate to honor the request. Rectifying data may include editing,
redacting, or removing personal data from a document or other type of item.
You can use Azure Active Directory to manage the identities (personal data) of your users withih PowerApps.
Enterprise customers can manage DSR rectify requests by using the limited editing features within a given
Microsoft service. As a data processor, Microsoft does not offer the ability to correct system-generated logs,
because they reflect factual activities and constitute a historical record of events within Microsoft services. See
GDPR: Data Subject Requests (DSRs) for details.
Restrict
Data subjects may request that you restrict processing of their personal data. We provide both pre-existing
application programming interfaces (APIs) and user interfaces (UIs). These experiences provide the enterprise
customer’s tenant administrator the capability to manage such DSRs through a combination of data export and
data deletion. A customer may request:
Export an electronic copy of the personal data of the user, including:
account(s)
system-generated logs
associated logs
Delete the account and associated data residing within Microsoft systems.
Export
The “right of data portability” allows a data subject to request a copy of his or her personal data in an electronic
format (that’s a “structured, commonly used, machine read-able and interoperable format”) that may be
transmitted to another data controller.
See Responding to Data Subject Rights (DSR ) requests to export PowerApps customer data for details.
Delete
The “right to erasure” by the removal of personal data from an organization’s customer data is a key protection in
the GDPR. Removing personal data includes system-generated logs but not audit-log information.
PowerApps allows users to build line-of-business applications that are a critical part of your organization’s day-to-
day operations. When a user leaves your organization, you will need to manually review and determine whether to
delete certain data and resources that they have created. Other customer data will be automatically deleted
whenever the user’s account is deleted from Azure Active Directory.
See Responding to Data Subject Rights (DSR ) requests to delete PowerApps customer data for details.
Responding to Data Subject Rights (DSR) requests to
export PowerApps customer data
8/9/2019 • 11 minutes to read
The “right of data portability” allows a data subject to request a copy of his or her personal data in an electronic
format (that is, a structured, commonly used, machine readable and interoperable format) that may be transmitted
to another data controller:
Website access: PowerApps portal, PowerApps Admin center, and Office 365 Service Trust Portal
PowerShell access: PowerApps App creator cmdlets, Admin cmdlets and On-premises gateway cmdlets
Below is a summary of the types of personal data that PowerApps can store for a specific user and which
experiences you can use to find and export it.
** With the introduction of Common Data Service, if a database is created within the environment,
environment permissions and model-driven app permissions are stored as records within the Common Data
Service database instance. For guidance on how to respond to DSR requests for users that use Common Data
Service, see Responding to Data Subject Rights (DSR ) requests for Common Data Service customer data.
*** An administrator can access these resources from the PowerApps portal only if the owner of the resource
has explicitly granted him or her access. If the administrator has not been granted access, he or she will need
to leverage the PowerApps Admin PowerShell cdmlets.
Prerequisites
For users
Any user with a valid PowerApps license can perform the user operations outlined in this document using the
PowerApps portal or App creator cmdlets.
For admins
To perform the administration operations outlined in this document using the PowerApps Admin center, Microsoft
Flow Admin Center, or PowerApps Admin PowerShell cdmlets, you'll need the following:
A paid PowerApps Plan 2 license or a PowerApps Plan 2 trial license. You can sign-up for a 30-day trial
license at http://web.powerapps.com/trial. Trial licenses can be renewed if they've expired.
Office 365 Global Administrator or Azure Active Directory Global Administrator permissions if you need to
search through another user’s resources. (Note that Environment Admins only have access to those
environments and environment resources for which they have permissions.)
2. If the environment was created by the user from the DSR request, go to the Details page, copy the details,
and then paste them into a document editor, such as Microsoft Word.
PowerShell cmdlets for app creators
Users can export the environments they have access to in PowerApps by using the Get-
PowerAppsEnvironment function in the PowerApps App creator PowerShell cmdlets:
Add-PowerAppsAccount
Get-PowerAppsEnvironment | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "7557f390-5f70-4c93-8bc4-8c2faabd2ca0"
Get-AdminEnvironment -CreatedBy $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
4. If the user has access to either role, go to the Users page, copy the details, and then paste them into a
document editor, such as Microsoft Word.
PowerShell cmdlets for admins
Administrators can export all environment role assignments for a user across all environments without a
Common Data Service database by using the Get-AdminEnvironmentRoleAssignment function in the
PowerApps Admin PowerShell cdmlets:
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminEnvironmentRoleAssignment -UserId $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
IMPORTANT
This function only works for environments that do not have a Common Data Service database instance.
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminApp -Owner $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
Get-AppRoleAssignment | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
4. If the user has access to the app, go to the app’s Share page, copy the details, and then paste them into a
document editor, such as Microsoft Word.
PowerShell cmdlets for admins
Administrators can export all app role assignments for a user across all apps in their tenant by using the Get-
AdminAppRoleAssignment function in the PowerApps Admin PowerShell cdmlets:
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminAppRoleAssignment -UserId $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
Get-Connection | ConvertTo-Json | out-file -FilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminConnection -CreatedBy $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Step 6: Export the user’s permissions to shared connections
PowerShell cmdlets for app creators
Users can export the connection role assignments for all connections that they have access to by using the Get-
ConnectionRoleAssignment function in the PowerApps App creator PowerShell cmdlets:
Add-PowerAppsAccount
Get-ConnectionRoleAssignment | ConvertTo-Json | Out-file -FilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminConnectionRoleAssignment -PrincipalObjectId $userId | ConvertTo-Json | Out-File -FilePath
"UserDetails.json"
Add-PowerAppsAccount
Get-Connector -FilterNonCustomConnectors | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminConnector -CreatedBy $userId | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
Get-ConnectorRoleAssignment | ConvertTo-Json | Out-File -FilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminConnectorRoleAssignment -PrincipalObjectId $userId | ConvertTo-Json | Out-File -FilePath
"UserDetails.json"
Add-PowerAppsAccount
Get-AdminPowerAppsUserDetails -WriteToFile -OutputFilePath "UserDetails.json"
Add-PowerAppsAccount
$userId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
Get-AdminPowerAppsUserDetails -WriteToFile -OutputFilePath "UserDetails.json" -UserPrincipalName
[email protected]
3. Select Share, copy the contents of the page, and then paste it into a document editor, such as Microsoft
Word.
Gateway PowerShell cmdlets
There are also PowerShell cmdlets that allow you to retrieve, manage, and delete your personal gateways. For
more information, see On-premises gateway cmdlets.
Administrators
Please refer to the Tenant Administration section in the Understand on-premises data gateways for Microsoft
PowerApps article for guidance around managing gateways for your organization.
IMPORTANT
We recommend that administrators complete this step for PowerApps users.
Step 12: Export the user’s personal data in Common Data Service
instances
Anyone with a PowerApps license, provided there is 1GB available database capacity, can create Common Data
Service environments and create and build apps on Common Data Service; this includes the PowerApps
Community Plan, which is a free license that allows users to try out Common Data Service in an individual
environment. To see which Common Data Service capabilities are included in each PowerApps license, see the
PowerApps Pricing page.
For guidance on how to respond to DSR requests for users that use Common Data Service, see Responding to
Data Subject Rights (DSR ) requests for Common Data Service customer data.
IMPORTANT
We recommend that administrators complete this step for PowerApps users.
Responding to Data Subject Rights (DSR) requests to
delete PowerApps customer data
4/15/2019 • 14 minutes to read
The “right to erasure” by the removal of personal data from an organization’s customer data is a key protection in
the European Union (EU ) General Data Protection Regulation (GDPR ). Removing personal data includes removing
system-generated logs but not audit log information.
PowerApps allows users to build line-of-business applications that are a critical part of your organization’s day-to-
day operations. When a user leaves your organization, you'll need to manually review and determine whether to
delete certain data and resources that the user created. Other personal data will be automatically deleted whenever
the user’s account is deleted from Azure Active Directory.
Here is the breakdown between which personal data will be automatically deleted and which data will require your
manual review and deletion:
Environment** Gateway
Connection permissions
Custom connector**
Custom-connector permissions
** Each of these resources contains “Created By” and “Modified By” records that include personal data. For security
reasons, these records will be retained until the resource is deleted.
*** For environments that include a Common Data Service database, environment permissions (that is, which
users are assigned to the Environment Maker and Admin roles) are stored as records in that database. For
guidance on how to respond to DSRs for users of Common Data Service, see Responding to Data Subject Rights
(DSR ) requests for Common Data Service customer data.
For the data and resources that require manual review, PowerApps offers the following experiences to reassign (if
necessary) or delete personal data for a specific user:
Website access: PowerApps site, PowerApps Admin center, and Office 365 Service Trust Portal
PowerShell access: PowerApps cmdlets for app creators and administrators and cmdlets for on-premises
gateways.
Here is the breakdown of which experiences are available to delete each type of resource that can contain personal
data:
** With the introduction of Common Data Service, if a database is created within the environment, environment
permissions and model-driven app permissions are stored as records within the instance of that database. For
guidance on how to respond to DSRs for users of Common Data Service, see Responding to Data Subject Rights
(DSR ) requests for Common Data Service customer data.
Prerequisites
For users
Any user with a valid PowerApps license can perform the user operations outlined in this document using the
PowerApps or PowerShell cmdlets for app creators.
Unmanaged tenant
If you are a member of an unmanaged tenant, meaning that your Azure AD tenant does not have global
administrator, then you will still be able to follow the steps outlined in this art to remove your own personal data.
However, since there is no global administrator for your tenant you will need to follow the instructions outlined in
Step 11: Delete the user from Azure Active Directory below to delete your own account from the tenant.
In order to determine if you are a member of an unmanaged tenant please follow these steps:
1. Open the following URL in a browser, making sure to replace your email address in the URL:
https://login.microsoftonline.com/common/userrealm/[email protected]?api-version=2.1
2. If you are a member of an unmanaged tenant then you will see an "IsViral": true in the response.
{
...
"Login": "[email protected]",
"DomainName": "unmanagedcontoso.com",
"IsViral": true,
...
}
IMPORTANT
Deleting an environment will permanently delete all resources within the environment, including all apps, flows, connections,
etc. So please review the contents of an environment before deletion.
IMPORTANT
This function works only in environments that do not have an instance of a database in Common Data Service.
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
# Retrieve all environments created by the user and then delete them
Get-AdminEnvironment -CreatedBy $deleteDsrUserId | Remove-AdminEnvironment
4. If the user has access to either role, from within the Users screen, remove their permission, and select Save.
PowerShell
An administrator can delete all environment role assignments for a user across all environments without a
Common Data Service database by using the Remove-AdminEnvironmentRoleAssignment function in the
PowerShell cmdlets for PowerApps administrators:
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#find all environment role assignments for the user for environments without a Common Data Service instance
and delete them
Get-AdminEnvironmentRoleAssignment -UserId $deleteDsrUserId | Remove-AdminEnvironmentRoleAssignment
IMPORTANT
This function works only for environments that do not have an instance of a Common Data Service database.
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
$newAppOwnerUserId = "72c272b8-14c3-4f7a-95f7-a76f65c9ccd8"
#find all apps owned by the DSR user and assigns them a new owner
Get-AdminApp -Owner $deleteDsrUserId | Set-AdminAppOwner -AppOwner $newAppOwnerUserId
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#find all apps owned by the DSR user and deletes them
Get-AdminApp -Owner "0ecb1fcc-6782-4e46-a4c4-738c1d3accea" | Remove-AdminApp
NOTE
An app’s role assignments will be deleted when the app is deleted.
NOTE
The app owner's role assignment can only be deleted by assigning a new owner for the app.
4. If the user has access to the app, from within the app’s Share screen, remove their permission and select
Save.
PowerShell cmdlets for admins
An admin can delete all of a user’s canvas-app role assignments by using the Remove-
AdminAppRoleAssignmnet function in the PowerApps Admin PowerShell cmdlets:
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#find all app role assignments for the DSR user and deletes them
Get-AdminAppRoleAssignment -UserId $deleteDsrUserId | Remove-AdminAppRoleAssignment
Add-PowerAppsAccount
#Retrieves all connections for the calling user and deletes them
Get-Connection | Remove-Connection
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#Retrieves all connections for the DSR user and deletes them
Get-AdminConnection -CreatedBy $deleteDsrUserId | Remove-AdminConnection
Step 6: Delete the user’s permissions to shared connections
PowerShell cmdlets for app creators
A user can delete all of their connection role assignments for shared connections by using the Remove-
ConnectionRoleAssignment function in the PowerShell cmdlets for app creators:
Add-PowerAppsAccount
#Retrieves all connection role assignments for the calling users and deletes them
Get-ConnectionRoleAssignment | Remove-ConnectionRoleAssignment
NOTE
Owner role assignments cannot be deleted without deleting the connection resource.
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#Retrieves all connection role assignments for the DSR user and deletes them
Get-AdminConnectionRoleAssignment -PrincipalObjectId $deleteDsrUserId | Remove-AdminConnectionRoleAssignment
Add-PowerAppsAccount
#Retrieves all custom connectors for the calling user and deletes them
Get-Connector -FilterNonCustomConnectors | Remove-Connector
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#Retrieves all custom connectors created by the DSR user and deletes them
Get-AdminConnector -CreatedBy $deleteDsrUserId | Remove-AdminConnector
Add-PowerAppsAccount
#Retrieves all connector role assignments for the calling users and deletes them
Get-ConnectorRoleAssignment | Remove-ConnectorRoleAssignment
NOTE
Owner role assignments cannot be deleted without deleting the connection resource.
Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
#Retrieves all custom connector role assignments for the DSR user and deletes them
Get-AdminConnectorRoleAssignment -PrincipalObjectId $deleteDsrUserId | Remove-AdminConnectorRoleAssignment
IMPORTANT
It is recommended that admins complete this step for a PowerApps user.
Step 10: Delete the user’s personal data in instances of Common Data
Service
Certain PowerApps licenses, including the PowerApps Community Plan, give the ability for users within your
organization to create instances of Common Data Service and to create and build apps on Common Data Service.
The PowerApps Community Plan is a free license that allows users to try out Common Data Service in an
individual environment. See the PowerApps pricing page for which capabilities are included in each PowerApps
license.
For guidance on how to respond to DSRs for users who use Common Data Service, see Responding to Data
Subject Rights (DSR ) requests for Common Data Service customer data.
IMPORTANT
It is recommended that admins complete this step for a PowerApps user.
NOTE
Please see the Unmanaged tenant section above to see how to detect if you are a member of an unmanaged or managed
tenant.
1. Navigate to the Work and School privacy page and sign-in with your Azure AD account.
2. Select Close account and follow the instructions to delete your account from your Azure AD tenant.
Responding to Data Subject Rights (DSR) requests
for Common Data Service customer data
4/19/2019 • 17 minutes to read
Your environment is the previous version of Common Data Service if you see the following entities listed:
After you determine which type of Common Data Service environment you have, follow the steps in the
following sections to identify personal data.
NOTE
You may have some environments in Common Data Service and others in the previous version of Common Data Service,
so you'll need to repeat the processes outlined below for each environment in your organization.
User personal data in Common Data Service
Prerequisites
You must create users in the Microsoft 365 admin center and assign them an appropriate user license and
security role before they can access and use Common Data Service.
Standard user personal data (for example, UserName, UserID, Phone, Email, and Address) is kept and maintained
in the Microsoft 365 admin center. System administrators can update this personal data only in the Microsoft 365
admin center, and the data is then automatically synced to the Common Data Service system User entity in all
environments. System administrators can also create custom attributes to capture additional user personal data
within the Common Data Service system User entity, and then manually maintain and manage these attributes.
To avoid interruption to business applications that may be critical to your organization’s operations, a user's
records are not automatically removed from the Common Data Service system User entity when that user is
deleted from within the Microsoft 365 admin center. The user’s status is set to Disabled in Common Data Service,
but a Common Data Service System Administrator must locate and remove the user's personal data from
Common Data Service within the application.
Only Office 365 Global Administrators and Common Data Service System Administrators can perform the
discover, rectify, export, and delete actions listed below.
Discover
System Administrators can create multiple Common Data Service instances. These instances can be used for trial,
development, or production purposes. Each of these instances has a copy of the system User entity with any
custom attributes that may have been added by the system administrator, as well as the user personal data
synced from the Microsoft 365 admin center.
System administrators can find a list of all the Common Data Service instances by navigating to the Dynamics
365 Administration Center from the PowerApps Admin center.
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center.
Entity record Known as the system User PowerApps Admin center Through the Web API
entity, it stores a user's
personal data.
Audit history Allows customers to identify PowerApps Admin center Through the Web API
resources that users
created, accessed, changed,
or deleted at an entity level.
User
User personal data is stored in the Azure Active Directory and is automatically synced to all Common Data
Service environments. System administrators cannot update this personal data directly in Common Data Service
while the user is active—they must update the data from within the Office 365 Administration Center. System
administrators can add personal data (for example, custom attributes) directly to Common Data Service, but they
must manually manage this data.
To find a user and his or her personal data, go to the PowerApps Admin center and do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Security > Users.
4. Enter the name of the user in the Search box, and then click or tap Search.
5. To view the user's personal data, double-click or double-tap the user's name.
Audit history
When audit tracking is enabled for an entity in Common Data Service, a user's personal data is logged in the
audit history along with the actions that the user performs.
Rectify
If a data subject asks you to rectify the personal data that resides in your organization’s data, you and your
organization must determine whether it’s appropriate to honor the request. Rectifying data may include editing,
redacting, or removing personal data from a document or other type of item.
You can use Azure Active Directory to manage the identities (personal data) of your users within Common Data
Service. Enterprise customers can manage DSR rectify requests by using the limited editing features within a
given Microsoft service. As a data processor, Microsoft does not offer the ability to correct system-generated logs,
because they reflect factual activities and constitute a historical record of events within Microsoft services. See
GDPR: Data Subject Requests (DSRs) for details.
Once a user record is deleted from Azure Active Directory, System Administrators can then remove any
remaining personal data related to that user (such as custom attributes) from all the instances.
Export
System user
You can export a user's personal data stored in the system User entity to Excel from the user list within the
administration center.
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Security, and then select Enabled Users View.
4. Click Export to Excel.
Audit history
You can take screenshots of the audit history from within the adminisration center.
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Auditing, and then select Audit Summary View.
4. Locate the user audit record, and then press Alt+PrtScn to take the screenshot.
5. Save the screenshot to a file, which you can then send to the DSR requestor.
Delete
User
To avoid interruption to business applications that may be critical to your organization’s operations, a user's
records are not automatically removed from the Common Data Service system User entity when that user is
deleted from within the Microsoft 365 admin center. The user’s status is set to Disabled in Common Data Service,
but a Common Data Service System Administrator must locate and remove the user's personal data from
Common Data Service within the application.
Remove a user's personal data from the user's Summary page
When a user record is deleted from the Azure Active Directory, the following message is displayed on the user's
Summary page:
This user’s information is no longer managed by Office 365. You can update this record to respond to DSR
requests by removing or replacing all personal data associated with this user.
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Security > Users, and then select Disabled Users View.
4. Enter the name of the user in the Search box, and then click or tap Search.
5. Double-click the user's name in the search results list.
6. On the user's Summary page, remove all personal data, and then click or tap Save.
Remove a user's personal data by using Excel
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Security > Users, and then select Disabled Users View.
4. Create and download an Excel template file from the user's personal data. For step-by-step instructions,
see Create a new Excel template.
5. Open the downloaded Excel template file, remove the user's personal data, and then save the file.
6. Return to the Disabled Users View page and click or tap Import Data.
7. Select the Excel template file in the Upload data file dialog box and make all the necessary changes in
the Map Fields window.
8. Click or tap Next, and then click or tap Submit.
Remove audit history from the Audit Summary View page
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, and then click or
tap Open.
3. Go to Settings > Auditing, and then select Audit Summary View.
4. Locate the user's change history, click or tap the check box next to the row (s), and then click or tap Delete
Change History.
3. Enter the individual’s personal data in the search box, and then click or tap Search.
Rectify
Common Data Service System Administrators can update an individual’s personal data by using the list of results
from the Relevance Search. However, an individual’s personal data may also be stored in other custom entities.
Common Data Service System Administrators are responsible for maintaining an inventory of these other
custom entities and making the appropriate updates to an individual’s personal data.
From the Relevance Search results, do the following:
1. Click or tap an item that contains the individual's personal data.
2. Update the individual's personal data where appropriate, and then click or tap Save.
Export
You can take a screenshot of the data and share it with your DSR requestor.
From the PowerApps Admin center, do the following:
1. In the navigation pane, click or tap Environments, and then select an environment from the list.
2. Click or tap Dynamics 365 Administration Center, select an environment from the list, click or tap the
search button, and then click or tap Relevance Search.
3. Enter the individual’s personal data in the search box, and then click or tap Search.
4. Double-click the item in the search results list.
5. Press Alt+PrtScn to take the screenshot.
6. Save the screenshot to a file, which you can then send to the DSR requestor.
Delete
Common Data Service System Administrators can delete an individual’s personal data from records where that
data is stored. The Common Data Service System Administrator can choose to either delete the record where the
personal data is stored, or remove the contents of the personal data from the record.
NOTE
Common Data Service administrators can customize an environment to prevent a record from being deleted from an entity.
If configured in this way, you'll have to remove the contents of the personal data from the record rather than delete the
record itself.
Entity records
An individual's personal data can be stored in any business entity.
This version of the Common Data Service contains its own database schema and infrastructure. It has its own
entities, and you manage these entities in PowerApps.
To see a list of your entities, do the following:
1. In the Environment drop-down list, select your environment.
2. In the navigation pane, click or tap Data, and then click or tap Entities.
3. From the list of entities, click or tap an entity (for example, the Account entity), as shown below.
4. Click or tap the Data tab. A list of records for the entity displays.
2. From the list of entities, click or tap an entity (for example, the Account entity), as shown below.
3. Click or tap the Data tab. A list of records for the entity displays.
4. Click or tap Export data.
5. When the export is complete, click or tap Open in Excel, and then click or tap Enable editing.
6. In the menu bar, click or tap File, click or tap Save As, and then select a location in which to save the file.
7. Make the necessary personal data updates and save the spreadsheet.
8. In PowerApps, go back to the Data tab of the entity, and then click or tap Import data.
9. Click Search, and then select and open the Excel spreadsheet that you just updated.
10. Click Import.
Export
You can export personal data from each entity into an Excel spreadsheet and view it.
From PowerApps, do the following:
1. In the navigation pane, click or tap Data, and then click or tap Entities.
2. From the list of entities, click or tap the entity that you want to export and view (for example, the Account
entity), as shown below.
3. Click or tap the Data tab. A list of records for the entity displays.
3. Click or tap the Data tab. A list of records for the entity displays.
4. Click or tap Export data.
5. When the export is complete, click or tap Open in Excel, and then click or tap Enable editing.
6. In the menu bar, click or tap File, click or tap Save As, and then select a location in which to save the file.
7. Delete the rows containing the personal data that you want to remove from the entity and save the
spreadsheet.
8. In PowerApps, go back to the Data tab of the entity, and then click or tap Import data.
9. Click Search, and then select and open the Excel spreadsheet that you just updated.
10. Click Import.
Compliance and data privacy
6/4/2019 • 5 minutes to read
Trust Center
The Microsoft Trust Center (https://www.microsoft.com/en-us/trustcenter) is a centralized resource for obtaining
information on Microsoft’s portfolio of products. This includes information on security, privacy, compliance, and
transparency. While this content may contain some subset of this information for PowerApps, it is important to
always refer to the Microsoft Trust Center for the most up to date authoritative information.
For quick reference, you can find the Trust Center Information for the Microsoft Power Platform here
https://www.microsoft.com/en-us/TrustCenter/CloudServices/business-application-platform/default.aspx This will
include information on PowerApps, Microsoft Flow and Power BI.
Data Location
Microsoft operates multiple data centers world-wide that support the Microsoft Power platfrom applications.
When your organization establishes a tenant, it establishes the default geographical (geo) location. In addition,
when creating environments to support applications and contain Common Data Service data the environments can
be targeted for a specific geo. A current list of the geos for the Microsoft Power Platform can be found here
https://www.microsoft.com/en-us/TrustCenter/CloudServices/business-application-platform/data-location
To support continuity of operations, Microsoft may replicate data to other regions within a geo, but the data will
not move outside the geo to support data resiliency. This supports the ability to fail over or recover more rapidly in
the event of a severe outage. There are some reasonable exceptions to keeping data in the specific geo that are
listed on the above site primary focused on legal and support. It’s also important to note, that you or your users
can take actions that expose data outside of the geo. Other services can also be configured to access the data and
expose it outside of the geo. By default, authorized users can access the platform and your applications and data
from anywhere in the world where there is connectivity.
Data Protection
Data as it is in transit between user devices and the Microsoft datacenters are secured. Connections established
between customers and Microsoft datacenters are encrypted, and all public endpoints are secured using industry-
standard TLS. TLS effectively establishes a security-enhanced browser to server connection to help ensure data
confidentiality and integrity between desktops and datacenters. API access from the customer endpoint to the
server is also similarly protected. Currently, TLS 1.2 (or higher) is required for accessing the server endpoints.
Data transferred through the on-premises data gateway is also encrypted. Data that users upload is typically sent
to Azure Blob storage, and all metadata and artifacts for the system itself are stored in an Azure SQL database and
Azure Table storage.
All instances of the Common Data Service database use SQL Server Transparent Data Encryption (TDE ) to
perform real-time encryption of data when written to disk, also known as encryption at rest.
By default, Microsoft stores and manages the database encryption keys for your instances so you don’t have to.
The manage keys feature in the Dynamics 365 admin center gives administrators the ability to self-manage the
database encryption keys that are associated with instances of Dynamics 365 (online). You can read more about
managing your own keys here https://docs.microsoft.com/en-us/dynamics365/customer-
engagement/admin/manage-encryption-keys-instance but generally it is recommended have Microsoft manage
the keys unless you have a specific business need to maintain your own.
TERM RELEVANCE
Data Controller Organizations that collect and process data for their own
purposes
As an administrator one of the key activities in support of GDPR will be related to Data Subject Rights (DSR )
requests. These are formal requests from a Data Subject to a Data Controller (likely your organization) to act on
their personal data in your systems. GDPR gives rights to Data Subjects to obtain copies, request corrections,
restrict processing of the data, delete the data and to receive copies in an electronic format so it could be moved to
another Data Controller.
The following links point to detailed information to help you respond to DSR requests depending on the features
your organization is using.
Common Data Service Responding to Data Subject Rights (DSR) requests for
Common Data Service customer data
From the resulting query results when you drill down into an item you get a details page with the following type of
information.
The real good information comes from clicking on the More Information and drilling down into the real detail
page:
Audit data is retained for 90 days. You can do CDSV exports of the data allowing you to move it into Excel or
PowerBI for further analysis. You can find a complete walkthrough of using the audit information here
https://flow.microsoft.com/en-us/blog/security-and-compliance-center/
Microsoft PowerApps US Government
8/13/2019 • 11 minutes to read
In response to the unique and evolving requirements of the United States public sector, Microsoft has created
PowerApps US Government, which consists of several plans for US government organizations. This section
provides an overview of features that are specific to PowerApps US Government. It is recommended that you read
this supplementary section alongside the PowerApps documentation, which covers information about the general
PowerApps service description. For brevity, this service is commonly referred to as PowerApps Government
Community Cloud (GCC ).
The PowerApps US Government service description is designed to serve as an overlay to the general PowerApps
service description. It defines the unique commitments of this service and the differences from PowerApps
offerings that have been available to our customers since October 2016.
Customer eligibility
PowerApps US Government is available to (1) US federal, state, local, tribal, and territorial government entities and
(2) other entities that handle data that is subject to government regulations and requirements and where use of
PowerApps US Government is appropriate to meet these requirements, subject to validation of eligibility.
Validation of eligibility by Microsoft will include confirmation of handling data subject to International Traffic in
Arms Regulations (ITAR ), law enforcement data subject to the FBI's Criminal Justice Information Services (CJIS )
policy, or other government-regulated or controlled data. Validation might require sponsorship by a government
entity with specific requirements for the handling of data.
Entities with questions about eligibility for PowerApps US Government should consult their account team. Upon
renewal of a customer's contract for PowerApps US Government, revalidation of eligibility is required.
Social Security Number (SSN) Search Verification that the provided SSN is valid
Criminal History Check A seven (7) year criminal record check for felony and
misdemeanor offenses at the state, county, and local level and
at the federal level
Office of Foreign Assets Control List (OFAC) Validation against the Department of Treasury list of groups
with whom U.S. persons are not allowed to engage in trade or
financial transactions
Bureau of Industry and Security List (BIS) Validation against the Department of Commerce list of
individuals and entities barred from engaging in export
activities
Office of Defense Trade Controls Debarred Persons List (DDTC) Validation against the Department of State list of individuals
and entities barred from engaging in export activities related
to the defense industry
CJIS Background Screening State-adjudicated review of federal and state criminal history
by state CSA appointed authority within each state that has
signed up for the Microsoft CJIS IA program
1 Applies only to personnel with temporary or standing access to customer content hosted in PowerApps US
Government (GCC ).
https://web.powerapps.com https://gov.web.powerapps.us
COMMERCIAL VERSION URL US GOVERNMENT VERSION URL
https://create.powerapps.com https://gov.create.powerapps.us
https://admin.powerapps.com https://gov.admin.powerapps.us
https://flow.microsoft.com/connectors https://gov.flow.microsoft.us/connectors
Microsoft Flow administrators can use the Flow admin portal ( admin.flow.microsoft.com) to manage an
organization’s data policies and environments. Microsoft Flow admin content is available at Microsoft Flow
documentation.
See also
Reference: Use the various admin centers
Administer Power BI
3/12/2019 • 2 minutes to read
Curently, there are multiple admin centers you use to manage and monitor your environments and setting. This
topic provides guidance on the basic role of each admin center.
Power Platform Admin center The new unified administrative portal for Power Platform
https://admin.powerplatform.microsoft.com admins. Currently this portal can be used for Common Data
Service environment management, to submit Common Data
Service and Flow support tickets, and to view PowerApps and
Flow admin analytics.
Microsoft Flow Admin Portal This points to the same site as admin.powerapps.com.
https://admin.flow.microsoft.com
Business platform admin center This points to the same site as admin.powerapps.com. Over
https://admin.businessplatform.microsoft.com time, this will be migrated to and replaced by the Power
Platform Admin center.
Dynamics 365 Admin center The Dynamics 365 Admin Center, that can be leveraged to
https://port.crm.dynamics.com/G/manage/index.aspx perform certain Common Data Service environment
management like renaming, deleting, and resetting.
Dynamics 365 Instance Management This instance management portal is reached from
https://port.crm.dynamics.com/G/Instances/InstancePicker.as admin.powerapps.com when managing the Common Data
px Service database or from the Dynamics 365 Admin center.
Here you will see a list of all the Common Data Service
databases and can perform actions such as backup, as well as
other actions on a per instance basis.
Microsoft 365 admin center Here you manage users and their license assignment as well
https://admin.microsoft.com/adminportal as launch into many of the individual admin centers.
Security and Compliance Center In addition to the general compliance tasks, administrators
https://protection.office.com can come here to search the Audit log to see Flow audit
events.
Videos and PowerPoint presentations
7/9/2019 • 2 minutes to read