Power Platform Is Secure — Until Governance Disappears

Mirko PetersPodcasts1 hour ago16 Views


1
00:00:00,000 –> 00:00:02,960
Most organizations still ask the wrong question about Power Platform.

2
00:00:02,960 –> 00:00:06,320
Is this thing secure enough for enterprise-ordered heavy use?

3
00:00:06,320 –> 00:00:09,400
They assume the risk lives in Microsoft’s stack? It doesn’t.

4
00:00:09,400 –> 00:00:13,360
Here’s the blunt answer, yes, the Power Platform Security architecture is enterprise-grade.

5
00:00:13,360 –> 00:00:15,920
The weak link is almost never Microsoft’s security.

6
00:00:15,920 –> 00:00:17,320
The weak link is your governance.

7
00:00:17,320 –> 00:00:18,400
This isn’t theoretical.

8
00:00:18,400 –> 00:00:22,240
These failures are already showing up in audits, incidents, and post-mortems.

9
00:00:22,240 –> 00:00:25,480
If you’re responsible for enterprise-risk compliance or platform strategy,

10
00:00:25,480 –> 00:00:27,040
this conversation is for you.

11
00:00:27,040 –> 00:00:30,840
So in this episode, you’ll see why Power Platform is secure, how governance disappears

12
00:00:30,840 –> 00:00:35,080
in real tenants and what a defendable operating model actually looks like.

13
00:00:35,080 –> 00:00:36,480
Why this question exists?

14
00:00:36,480 –> 00:00:38,440
Enterprise anxiety around low-code.

15
00:00:38,440 –> 00:00:43,200
Most enterprises didn’t wake up one day and decide to run critical processes on a low-code platform.

16
00:00:43,200 –> 00:00:45,480
They arrived here through a very specific path.

17
00:00:45,480 –> 00:00:50,080
Years of backlogs, shadow spreadsheets, access databases under someone’s desk,

18
00:00:50,080 –> 00:00:54,400
and temporary macros that turned into business-critical systems.

19
00:00:54,400 –> 00:00:57,320
Power Platform just made that visible, fast, and tenant-wide.

20
00:00:57,320 –> 00:01:01,840
Now add the scale, Power Apps, Power Automate, Power BI, Co-Pilot Studio,

21
00:01:01,840 –> 00:01:07,760
all sitting in the same Microsoft 365 tenant as your email, your SharePoint, your Teams, your Entra ID,

22
00:01:07,760 –> 00:01:10,560
you’re not experimenting with a toy platform off to the side.

23
00:01:10,560 –> 00:01:14,240
You’re plugging a low-code engine straight into the center of your digital estate.

24
00:01:14,240 –> 00:01:15,840
That’s where the anxiety comes from.

25
00:01:15,840 –> 00:01:18,040
On one side, you have the marketing story.

26
00:01:18,040 –> 00:01:19,440
Anyone can build.

27
00:01:19,440 –> 00:01:20,760
And to be fair, that’s mostly true.

28
00:01:20,760 –> 00:01:26,400
With data-verse connectors and co-pilot, the friction to build something real is lower than it has ever been.

29
00:01:26,400 –> 00:01:28,520
On the other side, you have the audit story.

30
00:01:28,520 –> 00:01:29,640
Who owns this?

31
00:01:29,640 –> 00:01:30,840
Where does the data go?

32
00:01:30,840 –> 00:01:33,160
What happens if the person who built it leaves?

33
00:01:33,160 –> 00:01:34,680
Those are not Power Platform questions.

34
00:01:34,680 –> 00:01:36,240
Those are governance questions.

35
00:01:36,240 –> 00:01:39,320
But because the platform is visible, it becomes the scapegoat.

36
00:01:39,320 –> 00:01:42,480
Low-code feels out of control for three architectural reasons.

37
00:01:42,480 –> 00:01:43,560
First, speed.

38
00:01:43,560 –> 00:01:47,720
Traditional development forces you through demand management, design reviews, changeboards.

39
00:01:47,720 –> 00:01:49,320
Power Platform collapses that.

40
00:01:49,320 –> 00:01:53,120
A motivated analyst can go from idea to production adjacent in days.

41
00:01:53,120 –> 00:01:55,800
Your governance model probably still assumes months.

42
00:01:55,800 –> 00:01:57,480
Second, invisible change.

43
00:01:57,480 –> 00:02:01,400
Most enterprises have monitoring for servers, networks, maybe some APIs.

44
00:02:01,400 –> 00:02:03,280
They rarely have real monitoring for.

45
00:02:03,280 –> 00:02:06,760
We just added three more approval paths to this flow that touches payroll.

46
00:02:06,760 –> 00:02:10,160
Low-code change happens at the edges of your existing observability.

47
00:02:10,160 –> 00:02:13,440
Third, citizen development without citizen development governance.

48
00:02:13,440 –> 00:02:17,000
You empowered business users to build, but you didn’t give them an operating model.

49
00:02:17,000 –> 00:02:22,120
No environment strategy, no DLP baseline, no racey for app ownership, no life cycle rules.

50
00:02:22,120 –> 00:02:24,280
You gave them a Ferrari and left the keys in.

51
00:02:24,280 –> 00:02:27,000
So the CIO sees adoption spikes in the admin center.

52
00:02:27,000 –> 00:02:31,000
The key source sees connectors that can technically move data to Gmail and Dropbox.

53
00:02:31,000 –> 00:02:35,760
Compliance sees Power BI reports over HR and finance data built by people they’ve never met.

54
00:02:35,760 –> 00:02:37,480
Everyone asks the same question.

55
00:02:37,480 –> 00:02:39,560
Is Power Platform secure enough for us?

56
00:02:39,560 –> 00:02:41,520
From their perspective, it feels reasonable.

57
00:02:41,520 –> 00:02:43,760
Breach headlines involve cloud services all the time.

58
00:02:43,760 –> 00:02:44,800
The platform is visible.

59
00:02:44,800 –> 00:02:46,000
The controls are not.

60
00:02:46,000 –> 00:02:48,520
Architecturally though, that question is misdirected.

61
00:02:48,520 –> 00:02:49,920
Power Platform sits on Azure.

62
00:02:49,920 –> 00:02:51,200
Identity is enter ID.

63
00:02:51,200 –> 00:02:54,480
Data can live in data versus in SQL in SharePoint in fabric.

64
00:02:54,480 –> 00:02:59,040
The security primitives, authentication, authorization, encryption, conditional access,

65
00:02:59,040 –> 00:03:02,080
customer managed keys, DLP auditing already exists.

66
00:03:02,080 –> 00:03:06,520
The platform team at Microsoft has a full-time job making sure those primitives meet enterprise

67
00:03:06,520 –> 00:03:08,040
and regulatory standards.

68
00:03:08,040 –> 00:03:09,440
Your job is completely different.

69
00:03:09,440 –> 00:03:14,320
Your job is to decide who can build, where they can build, what data they are allowed to touch,

70
00:03:14,320 –> 00:03:18,960
how those changes move through DevTest prod and how you’ll notice when reality drifts away

71
00:03:18,960 –> 00:03:20,200
from your intent.

72
00:03:20,200 –> 00:03:24,080
That’s governance and that governance expresses itself through one thing, the control plane.

73
00:03:24,080 –> 00:03:29,040
The control plane is everything that turns we want this to be safe into actual configuration.

74
00:03:29,040 –> 00:03:33,680
Environments, DLP policies, security roles, conditional access rules, environment routing,

75
00:03:33,680 –> 00:03:36,200
managed environments, COE automation.

76
00:03:36,200 –> 00:03:39,240
When that control plane is coherent, Power Platform behaves predictably.

77
00:03:39,240 –> 00:03:42,800
When it’s not, you’re running a distributed decision engine with no clear design.

78
00:03:42,800 –> 00:03:44,280
This is the uncomfortable truth.

79
00:03:44,280 –> 00:03:48,880
The platform is already operating at enterprise scale, whether you acknowledge it or not.

80
00:03:48,880 –> 00:03:53,000
You might still think of Power Apps as that thing the HR team uses for a form.

81
00:03:53,000 –> 00:03:57,560
In reality, it’s a multi-tenant, low-code surface attached to your core identity provider.

82
00:03:57,560 –> 00:04:00,200
So when you ask, is Power Platform secure enough?

83
00:04:00,200 –> 00:04:04,280
You’re really asking, can we govern enterprise, low-code and AI at the speed our users are already

84
00:04:04,280 –> 00:04:05,280
moving?

85
00:04:05,280 –> 00:04:09,600
And right now for most organizations, the honest answer is not with the governance model

86
00:04:09,600 –> 00:04:11,440
you inherited from classic IT.

87
00:04:11,440 –> 00:04:15,080
That’s why we need to separate three concepts very clearly.

88
00:04:15,080 –> 00:04:20,160
Security, what Microsoft Secures, governance, how you decide the platform should be used.

89
00:04:20,160 –> 00:04:25,720
Control plane, where those decisions either become enforceable policy or slowly decay into chaos.

90
00:04:25,720 –> 00:04:28,680
To judge risk properly, you have to stop blurring those three together.

91
00:04:28,680 –> 00:04:32,480
Once you see that split, you can ask a better question, what does Microsoft actually secure

92
00:04:32,480 –> 00:04:36,360
for you and where does your governance start to fail in real tenants?

93
00:04:36,360 –> 00:04:41,160
Security versus governance versus control plane, the foundational, misunderstanding.

94
00:04:41,160 –> 00:04:45,640
Most organizations collapse three very different ideas into one vague feeling of comfort.

95
00:04:45,640 –> 00:04:48,240
And they say Microsoft is secure, so we’re fine.

96
00:04:48,240 –> 00:04:50,840
Or I don’t trust this platform, lock it down.

97
00:04:50,840 –> 00:04:52,960
Both positions are based on the same misunderstanding.

98
00:04:52,960 –> 00:04:56,680
They treat security, governance and the control plane as if they’re the same thing.

99
00:04:56,680 –> 00:04:59,400
They’re not, let’s define them in architectural terms.

100
00:04:59,400 –> 00:05:02,840
Security in this context is what Microsoft implements and operates.

101
00:05:02,840 –> 00:05:05,720
Power Platform is a SAS layer on Azure and EntraID.

102
00:05:05,720 –> 00:05:09,840
That stack gives you identity, authentication, authorization, primitives, encryption at

103
00:05:09,840 –> 00:05:14,160
rest and in transit, regional isolation, customer manage keys, logging and compliance

104
00:05:14,160 –> 00:05:15,160
certifications.

105
00:05:15,160 –> 00:05:17,200
That’s security.

106
00:05:17,200 –> 00:05:20,280
Governance is what you decide to do with that capability surface.

107
00:05:20,280 –> 00:05:24,840
It’s your intent, expressed as policy, who can build which data sources are allowed, what

108
00:05:24,840 –> 00:05:29,440
constitutes production, what risk levels are acceptable per business unit, how you treat

109
00:05:29,440 –> 00:05:32,560
citizen development, how long solutions are supported.

110
00:05:32,560 –> 00:05:35,240
Governance is your operating model and your rules of engagement.

111
00:05:35,240 –> 00:05:39,480
The control plane is everything that turns those rules into actual behavior.

112
00:05:39,480 –> 00:05:44,320
Governance, security groups, data verse roles, DLP policies, connect or classifications, tenant

113
00:05:44,320 –> 00:05:50,040
isolation, conditional access environment routing, managed environments, QE automation,

114
00:05:50,040 –> 00:05:52,800
audit and monitoring, all of that is control plane.

115
00:05:52,800 –> 00:05:56,480
It’s the distributed configuration layer that tells the platform how to behave for your

116
00:05:56,480 –> 00:05:57,480
tenant.

117
00:05:57,480 –> 00:05:59,520
Security is Microsoft’s job.

118
00:05:59,520 –> 00:06:00,520
Governance is your job.

119
00:06:00,520 –> 00:06:03,240
The control plane is where those jobs meet or fail to meet.

120
00:06:03,240 –> 00:06:07,080
When people say, “Wow, power platform is secure,” they’re usually pointing at the first

121
00:06:07,080 –> 00:06:08,080
layer.

122
00:06:08,080 –> 00:06:11,640
When they say, “Power platform is dangerous,” they’re usually reacting to the second and

123
00:06:11,640 –> 00:06:14,880
third layer as being absent in consistent or opaque.

124
00:06:14,880 –> 00:06:19,160
Conflating secure platform with well-governed usage produces two predictable failure modes.

125
00:06:19,160 –> 00:06:20,520
The first is blind trust.

126
00:06:20,520 –> 00:06:24,440
You see the compliance badge is the azure branding, the enter ID integration.

127
00:06:24,440 –> 00:06:28,560
You assume that because the underlying security model is robust, whatever your user’s

128
00:06:28,560 –> 00:06:30,920
build on top must inherit that robustness.

129
00:06:30,920 –> 00:06:33,840
You let the default environment run as a free for all.

130
00:06:33,840 –> 00:06:36,320
You never define a data loss prevention strategy.

131
00:06:36,320 –> 00:06:38,640
You never classify environments by data sensitivity.

132
00:06:38,640 –> 00:06:39,920
You never ask who owns what?

133
00:06:39,920 –> 00:06:42,200
You think you’re safe because Microsoft is secure.

134
00:06:42,200 –> 00:06:43,200
You’re not.

135
00:06:43,200 –> 00:06:46,400
You’ve just outsourced your assumptions to a control plane you never designed.

136
00:06:46,400 –> 00:06:48,320
The second failure mode is over lockdown.

137
00:06:48,320 –> 00:06:49,760
You’re nervous about low code.

138
00:06:49,760 –> 00:06:53,200
You treat every citizen developer as a potential insider threat.

139
00:06:53,200 –> 00:06:58,360
So you ban most connectors, you block environment creation, you push all development into a single,

140
00:06:58,360 –> 00:07:02,920
IT-owned environment, and you insist that every app go through the same heavyweight process

141
00:07:02,920 –> 00:07:04,600
as a custom net system.

142
00:07:04,600 –> 00:07:07,880
You think you’re reducing risk in reality, you’re generating shadow IT.

143
00:07:07,880 –> 00:07:11,760
The business still needs automation, so it goes back to spreadsheets, access, unsanctioned

144
00:07:11,760 –> 00:07:14,000
SaaS, and personal cloud storage.

145
00:07:14,000 –> 00:07:18,040
You’ve moved risk off the power platform service and into places that are much harder

146
00:07:18,040 –> 00:07:19,040
to see.

147
00:07:19,040 –> 00:07:23,000
In both cases, the underlying security posture of the platform hasn’t changed.

148
00:07:23,000 –> 00:07:27,360
What changed is how your governance intent or the lack of it was expressed in the control

149
00:07:27,360 –> 00:07:28,360
plane.

150
00:07:28,360 –> 00:07:31,400
Architecturally, power platform is not an app builder.

151
00:07:31,400 –> 00:07:36,520
It is a distributed decision engine that makes real-time authorization and data movement decisions

152
00:07:36,520 –> 00:07:39,520
based on the configuration of that control plane.

153
00:07:39,520 –> 00:07:44,680
Every DLP rule, every environment, every dataverse role, every conditional access policy is

154
00:07:44,680 –> 00:07:47,920
effectively a line of code in an invisible authorization compiler.

155
00:07:47,920 –> 00:07:51,840
When you add just one exception for a VIP, you’re not making a small change.

156
00:07:51,840 –> 00:07:54,440
You’re introducing a new branch into that compiler.

157
00:07:54,440 –> 00:07:58,240
When you copy an environment for quick testing and don’t fix the roles, you’re duplicating

158
00:07:58,240 –> 00:08:01,640
an authorization graph you already don’t fully understand.

159
00:08:01,640 –> 00:08:05,380
When you let environment creation run open, you’re allowing anyone to add new decision

160
00:08:05,380 –> 00:08:07,200
services you don’t monitor.

161
00:08:07,200 –> 00:08:10,560
Over time, those exceptions, copies, and ad hoc decisions accumulate.

162
00:08:10,560 –> 00:08:12,280
That’s architectural erosion.

163
00:08:12,280 –> 00:08:16,160
That’s how you move from a deterministic security model where you can confidently predict

164
00:08:16,160 –> 00:08:20,840
behavior to a probabilistic one where you’re hoping nothing surprising happens.

165
00:08:20,840 –> 00:08:23,000
This is the foundational misunderstanding.

166
00:08:23,000 –> 00:08:27,240
Power platform security and power platform governance are not the same thing, and neither

167
00:08:27,240 –> 00:08:30,000
of them is the same as the control plane.

168
00:08:30,000 –> 00:08:33,360
Security answers can this platform be operated safely at enterprise scale?

169
00:08:33,360 –> 00:08:35,400
Governance answers, how do we want to use it?

170
00:08:35,400 –> 00:08:39,000
The control plane answers what actually happens when someone in our tenant clicks run.

171
00:08:39,000 –> 00:08:42,880
So if you remember nothing else so far, Microsoft secures the platform.

172
00:08:42,880 –> 00:08:47,760
Governance secures your usage, and the control plane is where your intent either becomes policy

173
00:08:47,760 –> 00:08:49,200
or becomes chaos.

174
00:08:49,200 –> 00:08:53,680
Once you see that clearly, the next logical question isn’t, is power platform secure?

175
00:08:53,680 –> 00:08:56,000
It’s, what does Microsoft actually secure for us?

176
00:08:56,000 –> 00:08:59,320
And where does our governance start to disappear in real tenants?

177
00:08:59,320 –> 00:09:01,600
What Microsoft actually secures?

178
00:09:01,600 –> 00:09:03,680
Identity, data, compliance.

179
00:09:03,680 –> 00:09:07,240
So let’s answer the fair question, what does Microsoft actually secure for you in power

180
00:09:07,240 –> 00:09:08,240
platform?

181
00:09:08,240 –> 00:09:09,600
Start with identity and access.

182
00:09:09,600 –> 00:09:13,960
Every sign into power apps, power automate, power BI, co-pilot studio, all of that runs

183
00:09:13,960 –> 00:09:15,560
through Microsoft and 3ID.

184
00:09:15,560 –> 00:09:19,720
That means a single identity plane for humans and non-human identities.

185
00:09:19,720 –> 00:09:24,880
Users, service principles, managed identities, even AI agents as those mature.

186
00:09:24,880 –> 00:09:27,440
The platform itself doesn’t invent a new identity store.

187
00:09:27,440 –> 00:09:29,160
It consumes your existing one.

188
00:09:29,160 –> 00:09:34,200
So when you turn on multi-factor authentication, when you enforce conditional access policies

189
00:09:34,200 –> 00:09:39,760
for risky locations or unmanaged devices, when you require compliant machines for admins,

190
00:09:39,760 –> 00:09:43,160
those controls apply to the power platform service as well.

191
00:09:43,160 –> 00:09:45,240
You’re operating a single unified front door.

192
00:09:45,240 –> 00:09:49,320
On top of that, environment access is mediated through security groups and roles.

193
00:09:49,320 –> 00:09:52,000
A user can’t just appear in a restricted environment.

194
00:09:52,000 –> 00:09:56,080
They have to be granted a role in that environment or be in a group you chose.

195
00:09:56,080 –> 00:10:00,060
Dataverse then adds another layer, table level, row level and field level security via security

196
00:10:00,060 –> 00:10:03,320
roles and if you choose hierarchy security.

197
00:10:03,320 –> 00:10:05,280
Architecturally identity is not the weak point.

198
00:10:05,280 –> 00:10:08,860
As long as you’ve treated enter ID as an enterprise control plane and not as a glorified

199
00:10:08,860 –> 00:10:09,860
address book.

200
00:10:09,860 –> 00:10:12,040
Now the data plane.

201
00:10:12,040 –> 00:10:13,040
Dataverse.

202
00:10:13,040 –> 00:10:17,160
The relational data platform behind model-driven apps and many serious canvas apps runs

203
00:10:17,160 –> 00:10:18,960
as a managed service on Azure.

204
00:10:18,960 –> 00:10:20,640
Data is encrypted at rest and in transit.

205
00:10:20,640 –> 00:10:24,880
You can bring customer-managed keys in managed environments if your regulatory model demands

206
00:10:24,880 –> 00:10:25,880
it.

207
00:10:25,880 –> 00:10:27,000
There’s regional isolation.

208
00:10:27,000 –> 00:10:30,960
Your Europe data doesn’t quietly drift to the US because someone felt like it.

209
00:10:30,960 –> 00:10:32,640
Environment boundaries are real.

210
00:10:32,640 –> 00:10:36,160
A dataverse environment is a security and data boundary.

211
00:10:36,160 –> 00:10:39,520
Records don’t casually flow between environments unless you build something to do that.

212
00:10:39,520 –> 00:10:41,480
Back up and restore capabilities exist.

213
00:10:41,480 –> 00:10:44,640
There’s auditing at the table and field level if you enable it.

214
00:10:44,640 –> 00:10:48,640
The data platform side of power platform behaves like an enterprise service because that’s

215
00:10:48,640 –> 00:10:50,160
exactly what it is.

216
00:10:50,160 –> 00:10:53,640
Even when you’re not using dataverse where maybe you’re building over SQL, SharePoint,

217
00:10:53,640 –> 00:10:57,920
Fabric or external systems, power platform doesn’t bypass those security models.

218
00:10:57,920 –> 00:11:02,240
It connects with your identity, respects the underlying permissions and relies on the

219
00:11:02,240 –> 00:11:05,160
connectors and DLP policies to control data movement.

220
00:11:05,160 –> 00:11:07,480
That brings us to guardrails, data loss prevention.

221
00:11:07,480 –> 00:11:11,760
From the admin center you classify connectors into groups, business, non-business and blocked.

222
00:11:11,760 –> 00:11:15,240
In the newer model, allowed and blocked, those policies can be ten and wide or scope

223
00:11:15,240 –> 00:11:16,760
to specific environments.

224
00:11:16,760 –> 00:11:18,840
The rules are simple but powerful.

225
00:11:18,840 –> 00:11:22,800
Most connectors can’t be combined with non-business ones in the same app or flow and blocked

226
00:11:22,800 –> 00:11:24,560
connectors can’t be used at all.

227
00:11:24,560 –> 00:11:29,800
For example, you can allow SharePoint, Dataverse and Exchange in a finance prod policy and block

228
00:11:29,800 –> 00:11:32,120
things like Twitter, Dropbox and Personal One Drive.

229
00:11:32,120 –> 00:11:36,480
You can use tenant isolation to say, flows in this tenant cannot send data to tenants we

230
00:11:36,480 –> 00:11:37,480
don’t trust.

231
00:11:37,480 –> 00:11:42,400
You can apply more permissive policies in dev and far stricter ones in prod.

232
00:11:42,400 –> 00:11:45,080
Those DLP policies are not theoretical paper statements.

233
00:11:45,080 –> 00:11:49,160
They are enforced by the platform’s decision engine at design time and at run time.

234
00:11:49,160 –> 00:11:53,800
When a maker tries to build across a boundary, you declare invalid, the platform stops them.

235
00:11:53,800 –> 00:11:57,800
Finally, compliance.

236
00:11:57,800 –> 00:12:01,920
Power platform inherits Microsoft’s broader compliance stack.

237
00:12:01,920 –> 00:12:08,040
Certifications like ISO, SOC, GDPR alignment, HIPAA support, region-specific obligations.

238
00:12:08,040 –> 00:12:12,400
It integrates with Microsoft purview for auditing, so admin, maker and user actions around

239
00:12:12,400 –> 00:12:15,960
apps and flows can be locked and searched in the same compliance portal as your exchange

240
00:12:15,960 –> 00:12:17,880
and SharePoint events.

241
00:12:17,880 –> 00:12:22,560
Dataverse auditing lets you see who changed which field, when and from what to what.

242
00:12:22,560 –> 00:12:27,400
Power automate and power apps events can be surfaced through Microsoft 365 audit logs.

243
00:12:27,400 –> 00:12:32,280
With managed environments and the newer security hub, you also get a security score, a qualitative

244
00:12:32,280 –> 00:12:35,200
view of whether you’ve actually turned on the controls that exist.

245
00:12:35,200 –> 00:12:37,640
From a platform perspective, this matters.

246
00:12:37,640 –> 00:12:40,160
Identity is centralized and strongly authenticated.

247
00:12:40,160 –> 00:12:44,240
Data addressed and in transit is encrypted with enterprise options for key management.

248
00:12:44,240 –> 00:12:47,800
Guardrails like DLP and tenant isolation exist in our enforced.

249
00:12:47,800 –> 00:12:49,520
Compliance hooks and audit logs are there.

250
00:12:49,520 –> 00:12:53,920
If you’re looking for the easy story where a power platform is insecure, you won’t find

251
00:12:53,920 –> 00:12:55,880
it in the core architecture.

252
00:12:55,880 –> 00:12:58,480
Enterprise low-code platform security is not the weak link.

253
00:12:58,480 –> 00:13:03,120
The weak link is what you choose to do or not do with the control plane that sits on top

254
00:13:03,120 –> 00:13:04,120
of it.

255
00:13:04,120 –> 00:13:07,400
So if the foundation is this strong, the obvious question becomes, where do things actually

256
00:13:07,400 –> 00:13:08,800
break in production tenants?

257
00:13:08,800 –> 00:13:09,960
They don’t break in a zooer.

258
00:13:09,960 –> 00:13:14,640
They break when governance disappears on where security breaks when governance disappears.

259
00:13:14,640 –> 00:13:18,920
If the platform is this strong, why do real tenants still end up with data exfiltration,

260
00:13:18,920 –> 00:13:21,600
audit failures and apps nobody can support?

261
00:13:21,600 –> 00:13:24,640
Because security almost never fails at the cryptography layer.

262
00:13:24,640 –> 00:13:26,160
It fails at the governance layer.

263
00:13:26,160 –> 00:13:29,600
There are three structural failure points that show up in almost every enterprise power

264
00:13:29,600 –> 00:13:30,680
platform review.

265
00:13:30,680 –> 00:13:33,080
The first is the open default environment.

266
00:13:33,080 –> 00:13:35,440
By design, every tenant gets a default environment.

267
00:13:35,440 –> 00:13:40,480
If you’ve done nothing, every licensed user is effectively an environment maker there.

268
00:13:40,480 –> 00:13:44,720
That means anyone can build apps and flows, connect to whatever your DLP allows and share

269
00:13:44,720 –> 00:13:46,200
with anyone in the tenant.

270
00:13:46,200 –> 00:13:51,160
If you never repurpose that default environment, never constrained it to personal productivity,

271
00:13:51,160 –> 00:13:56,600
never put a tight DLP policy around it, never turned on, monitoring, you’ve basically created

272
00:13:56,600 –> 00:13:59,800
a global sandbox directly attached to your production data.

273
00:13:59,800 –> 00:14:01,160
People don’t do this maliciously.

274
00:14:01,160 –> 00:14:03,400
They just press create where the button appears.

275
00:14:03,400 –> 00:14:07,880
And from an architectural perspective, an ungoverned default environment is an entropy generator.

276
00:14:07,880 –> 00:14:11,600
It’s constantly producing new assets that don’t map to any operating model.

277
00:14:11,600 –> 00:14:14,920
The second failure point is free for all environment creation.

278
00:14:14,920 –> 00:14:19,240
If anyone or any broad admin group can create environments on demand, you get a different

279
00:14:19,240 –> 00:14:20,840
flavor of chaos.

280
00:14:20,840 –> 00:14:24,040
Project teams spin up a new environment just for this initiative.

281
00:14:24,040 –> 00:14:27,320
Consultants create environments for POCs and never clean them up.

282
00:14:27,320 –> 00:14:30,840
Regional teams create copies of production with slightly tweaked names.

283
00:14:30,840 –> 00:14:33,840
Each of those environments is a new control plane surface.

284
00:14:33,840 –> 00:14:38,440
Its own DLP scope, its own security roles, its own connectors, its own database.

285
00:14:38,440 –> 00:14:41,960
If you don’t have a platform team curating those, you end up with dozens or hundreds of

286
00:14:41,960 –> 00:14:45,640
environments whose purpose, owner and risk level are unclear.

287
00:14:45,640 –> 00:14:50,120
At that point, no amount of enter ID or AS256 saves you.

288
00:14:50,120 –> 00:14:52,080
You’re running a fleet you don’t understand.

289
00:14:52,080 –> 00:14:55,920
The third failure point is the absence of a coherent data loss prevention strategy.

290
00:14:55,920 –> 00:14:58,000
You technically have DLP policies.

291
00:14:58,000 –> 00:15:01,960
Some created test DLP one during a pilot two years ago.

292
00:15:01,960 –> 00:15:04,440
Another admin copied it and tweaked a connector.

293
00:15:04,440 –> 00:15:08,440
A consultant added an environment level policy for a specific project.

294
00:15:08,440 –> 00:15:12,900
Over time you’ve accumulated a stack of overlapping inconsistent policies whose intent no one

295
00:15:12,900 –> 00:15:13,900
can explain.

296
00:15:13,900 –> 00:15:15,400
In some environments Gmail is blocked.

297
00:15:15,400 –> 00:15:18,840
In others it’s quietly allowed because nobody added the policy there.

298
00:15:18,840 –> 00:15:21,640
In dev, HTTP connectors are wide open.

299
00:15:21,640 –> 00:15:24,600
Improved they’re blocked but nobody ever tested the migration path.

300
00:15:24,600 –> 00:15:28,920
The default environment sits under a tenant wide policy that looked reasonable before copilot

301
00:15:28,920 –> 00:15:30,480
started generating apps.

302
00:15:30,480 –> 00:15:33,200
This is where architectural erosion becomes visible.

303
00:15:33,200 –> 00:15:36,680
Every exception, bypass and temporary override becomes security dead.

304
00:15:36,680 –> 00:15:39,240
I’ll just add Outlook.com to business connectors for now.

305
00:15:39,240 –> 00:15:40,960
We’ll remove it after the demo.

306
00:15:40,960 –> 00:15:44,800
We’ll clone production into this uncopy environment so the vendor can test.

307
00:15:44,800 –> 00:15:46,360
We’ll delete it later.

308
00:15:46,360 –> 00:15:49,480
We’ll disable this DLP policy because it’s blocking an important flow.

309
00:15:49,480 –> 00:15:50,880
We’ll fix it next sprint.

310
00:15:50,880 –> 00:15:54,040
Those next sprints rarely arrive at the exceptions stay.

311
00:15:54,040 –> 00:15:55,400
New ones accumulate.

312
00:15:55,400 –> 00:15:58,600
Your control plane drifts further away from your governance intent.

313
00:15:58,600 –> 00:16:00,640
At small scale you can still reason about it.

314
00:16:00,640 –> 00:16:04,760
At enterprise scale, thousands of makers, tens of thousands of apps and flows across dozens

315
00:16:04,760 –> 00:16:07,800
of environments are no longer in a deterministic security model.

316
00:16:07,800 –> 00:16:09,520
You’re in probabilistic territory.

317
00:16:09,520 –> 00:16:13,240
You’ve moved from we know exactly what’s allowed to we think this combination is probably

318
00:16:13,240 –> 00:16:14,240
safe.

319
00:16:14,240 –> 00:16:15,760
That’s what I mean by conditional chaos.

320
00:16:15,760 –> 00:16:17,600
On paper you’re a zero-trust shop.

321
00:16:17,600 –> 00:16:18,880
You verify explicitly.

322
00:16:18,880 –> 00:16:20,240
You use least privilege.

323
00:16:20,240 –> 00:16:21,320
You assume breach.

324
00:16:21,320 –> 00:16:23,800
In practice, your conditional access rules.

325
00:16:23,800 –> 00:16:27,880
Your DLP policies, your environment roles and your special case environments have grown

326
00:16:27,880 –> 00:16:28,880
organically.

327
00:16:28,880 –> 00:16:34,760
Nobody has an end-to-end map of how a given identity, on a given device in a given location,

328
00:16:34,760 –> 00:16:37,400
interacting with a given app will actually be treated.

329
00:16:37,400 –> 00:16:41,920
At that point, blaming power platform security is convenient but inaccurate.

330
00:16:41,920 –> 00:16:46,200
Most of the risks you’ll see at scale, data exfiltration through connectors, shadow IT flows

331
00:16:46,200 –> 00:16:51,800
over regulated data, apps with no clear owner, business critical logic wired through a personal

332
00:16:51,800 –> 00:16:57,520
account are governance failures, masquerading as platform issues.

333
00:16:57,520 –> 00:17:01,000
Power platform shadow IT isn’t people sneaking in a new SaaS product.

334
00:17:01,000 –> 00:17:04,520
It’s people doing exactly what the platform allows in the absence of guardrails and once

335
00:17:04,520 –> 00:17:09,200
co-pilot and a genetic AI enter that already weak governance model, the risk doesn’t just

336
00:17:09,200 –> 00:17:10,200
increase linearly.

337
00:17:10,200 –> 00:17:14,200
It multiplies because now the platform can generate apps and flows faster than your existing

338
00:17:14,200 –> 00:17:16,520
manual controls can classify or review them.

339
00:17:16,520 –> 00:17:19,840
So to make this tangible, let’s stop talking in abstractions.

340
00:17:19,840 –> 00:17:22,560
Let’s walk through a set of real world patterns.

341
00:17:22,560 –> 00:17:26,360
Manufacturing, financial services, healthcare, retail and professional services.

342
00:17:26,360 –> 00:17:29,280
Different industries, different regulatory pressures, same underlying story.

343
00:17:29,280 –> 00:17:32,560
The platform was secure, governance disappeared in the control plane.

344
00:17:32,560 –> 00:17:36,800
Scenario one, global manufacturing, ERP data leaks through connectors.

345
00:17:36,800 –> 00:17:41,320
Take a global manufacturing company, centralized ERP running in a secure data center.

346
00:17:41,320 –> 00:17:45,320
Regional finance teams scattered across plans in Europe, Asia, North America, tight change

347
00:17:45,320 –> 00:17:47,040
control on the ERP itself.

348
00:17:47,040 –> 00:17:51,040
Audited, segregation of duties, all the classic controls, then someone discovers power

349
00:17:51,040 –> 00:17:52,040
automate.

350
00:17:52,040 –> 00:17:56,560
Original finance analyst is tired of downloading CSVs from ERP, cleaning them in Excel and

351
00:17:56,560 –> 00:17:58,800
emailing them around for reconciliations.

352
00:17:58,800 –> 00:18:03,600
They open power automate from outlook, see automated business process and start experimenting.

353
00:18:03,600 –> 00:18:06,000
The tenant already has a power platform, DLP policy.

354
00:18:06,000 –> 00:18:07,360
It was created during a pilot.

355
00:18:07,360 –> 00:18:11,560
It marks SAP, SQL, SharePoint and Exchange as business connectors.

356
00:18:11,560 –> 00:18:15,480
It leaves things like Dropbox, Gmail and HTTP in the default bucket.

357
00:18:15,480 –> 00:18:17,000
We revisited it after go-life.

358
00:18:17,000 –> 00:18:21,960
In the default environment, with that default policy, our analyst builds something simple,

359
00:18:21,960 –> 00:18:26,800
a scheduled flow that connects to ERP via a premium connector, pulls yesterday’s sales

360
00:18:26,800 –> 00:18:31,960
and inventory, writes the data to a SharePoint list and then emails a summary to a distribution

361
00:18:31,960 –> 00:18:32,960
list.

362
00:18:32,960 –> 00:18:35,520
So far, still inside the boundary, still mostly fine.

363
00:18:35,520 –> 00:18:38,520
Then a plant manager says, “I’d love to see this on my personal device.

364
00:18:38,520 –> 00:18:40,720
I don’t want to VPN into anything.”

365
00:18:40,720 –> 00:18:42,800
Someone suggests, “Just send it to my Gmail as well.

366
00:18:42,800 –> 00:18:44,640
I’ll forward it where it needs to go.”

367
00:18:44,640 –> 00:18:48,720
The analyst adds a second action to the flow, send an email via the outlook, come connector

368
00:18:48,720 –> 00:18:53,400
to whatever external addresses are needed, attaching the CSV output.

369
00:18:53,400 –> 00:18:56,280
From their perspective, this is a harmless convenience.

370
00:18:56,280 –> 00:18:58,880
From a DLP perspective, something important just happened.

371
00:18:58,880 –> 00:19:03,040
ERP data that used to live only in a tightly controlled SAP landscape is now flowing through

372
00:19:03,040 –> 00:19:08,760
power automate into SharePoint, into Exchange and out through a consumer email service.

373
00:19:08,760 –> 00:19:12,560
All because the original DLP policy never drew a hard boundary between enterprise systems

374
00:19:12,560 –> 00:19:13,760
and consumer services.

375
00:19:13,760 –> 00:19:15,320
Fast forward six months.

376
00:19:15,320 –> 00:19:19,680
The COE starter kit, if it exists, shows a connector inventory with both business and

377
00:19:19,680 –> 00:19:22,360
non-business connectors active in the default environment.

378
00:19:22,360 –> 00:19:26,800
There’s a DLP policy definition called ERP pilot that still has outlook, come classified

379
00:19:26,800 –> 00:19:27,800
as business.

380
00:19:27,800 –> 00:19:28,800
Nobody remembers why.

381
00:19:28,800 –> 00:19:33,000
The admin center has usage reports, but nobody’s correlating them with data classification.

382
00:19:33,000 –> 00:19:37,160
An internal audit kicks off, not because of power platform, but because of a broader GDPR

383
00:19:37,160 –> 00:19:38,160
review.

384
00:19:38,160 –> 00:19:39,160
Pause here.

385
00:19:39,160 –> 00:19:40,400
This is the part most audits fail on.

386
00:19:40,400 –> 00:19:41,560
They follow the data.

387
00:19:41,560 –> 00:19:45,960
They find SAP tables with custom information, they find the power automate flow that touches

388
00:19:45,960 –> 00:19:46,960
those tables.

389
00:19:46,960 –> 00:19:49,920
They see it pushing data into SharePoint lists with permissive access.

390
00:19:49,920 –> 00:19:55,800
They find email logs showing CSVs with customer IDs being sent to personal inboxes for convenience.

391
00:19:55,800 –> 00:19:59,360
At that moment, every control you built around your ERP is irrelevant.

392
00:19:59,360 –> 00:20:02,440
The effective boundary is now the weakest connector in the chain.

393
00:20:02,440 –> 00:20:05,520
When the auditors ask, where can this ERP data go?

394
00:20:05,520 –> 00:20:10,040
Your diagrams show firewalls, roll-based access and carefully controlled integrations.

395
00:20:10,040 –> 00:20:12,120
Your automate doesn’t appear anywhere on the slide.

396
00:20:12,120 –> 00:20:14,200
But in the tenant, the reality is different.

397
00:20:14,200 –> 00:20:19,840
The DLP policy never said data from ERP and data verse in this environment cannot be combined

398
00:20:19,840 –> 00:20:22,240
with consumer email or consumer storage.

399
00:20:22,240 –> 00:20:26,800
Nobody ran a DLP impact analysis when those connectors were moved into business for a one-off

400
00:20:26,800 –> 00:20:27,800
project.

401
00:20:27,800 –> 00:20:29,520
Nobody reviewed connector usage by data domain.

402
00:20:29,520 –> 00:20:30,760
This is not a hacker problem.

403
00:20:30,760 –> 00:20:32,200
This is a DLP design problem.

404
00:20:32,200 –> 00:20:35,200
If you cannot answer with evidence, where can this data go?

405
00:20:35,200 –> 00:20:38,680
Your power platform DLP policies have already failed.

406
00:20:38,680 –> 00:20:41,400
Regardless of how strong your underlying ERP security is.

407
00:20:41,400 –> 00:20:42,720
Notice what didn’t fail here.

408
00:20:42,720 –> 00:20:44,560
EntraID still required authentication.

409
00:20:44,560 –> 00:20:45,600
Encryption still worked.

410
00:20:45,600 –> 00:20:48,200
The connectors did exactly what they were designed to do.

411
00:20:48,200 –> 00:20:50,760
The platform honored the policies it was given.

412
00:20:50,760 –> 00:20:52,360
The failure was architectural.

413
00:20:52,360 –> 00:20:56,480
You treated DLP as a checkbox instead of as an expression of data governance.

414
00:20:56,480 –> 00:21:01,440
You allowed business and non-business connectors to coexist in the same environment where regulated

415
00:21:01,440 –> 00:21:03,600
ERP data was being processed.

416
00:21:03,600 –> 00:21:09,080
You never revisited the policy when power platform moved from pilot to production reality.

417
00:21:09,080 –> 00:21:13,640
Multiply that pattern across payroll exports, HR data, supplier pricing, engineering drawings,

418
00:21:13,640 –> 00:21:18,840
and you get the real shadow IT story, not rogue sass, but sanctioned automations quietly

419
00:21:18,840 –> 00:21:21,480
bypassing your original data flow assumptions.

420
00:21:21,480 –> 00:21:25,200
So the lesson from global manufacturing is simple but non-negotiable.

421
00:21:25,200 –> 00:21:29,200
If your DLP strategy doesn’t start from data classification and answer, where can

422
00:21:29,200 –> 00:21:32,040
this data go and where can it never go?

423
00:21:32,040 –> 00:21:35,440
You have already accepted data exfiltration as a probabilistic outcome.

424
00:21:35,440 –> 00:21:36,440
This was not a breach.

425
00:21:36,440 –> 00:21:37,520
This was a boundary failure.

426
00:21:37,520 –> 00:21:39,120
The platform was secure.

427
00:21:39,120 –> 00:21:41,240
Governance disappeared in the control plane.

428
00:21:41,240 –> 00:21:45,680
Scenario 2, financial services, audit fails on ownership and shadow IT.

429
00:21:45,680 –> 00:21:48,280
Now shift to a regulated financial services organization.

430
00:21:48,280 –> 00:21:53,080
They have been empowering the business with power apps and power automate for years.

431
00:21:53,080 –> 00:21:56,560
Internal comms, celebrated citizen development, licensing is generous.

432
00:21:56,560 –> 00:21:59,760
Business units can request environments with a one-page form.

433
00:21:59,760 –> 00:22:03,160
In paper, it looks like a successful digital transformation.

434
00:22:03,160 –> 00:22:04,720
What they never built was an ownership model.

435
00:22:04,720 –> 00:22:07,960
There is a center of excellence but it is mostly a reporting function.

436
00:22:07,960 –> 00:22:12,560
It runs the COE starter kit, sends out a quarterly dashboard and hosts an occasional

437
00:22:12,560 –> 00:22:14,200
maker community call.

438
00:22:14,200 –> 00:22:16,480
It does not actually own a governance operating model.

439
00:22:16,480 –> 00:22:18,200
By year three the numbers look impressive.

440
00:22:18,200 –> 00:22:20,680
The COE dashboards show thousands of apps and flows.

441
00:22:20,680 –> 00:22:21,680
Adoption is up.

442
00:22:21,680 –> 00:22:25,720
Every major business line has critical automations sitting on power platform.

443
00:22:25,720 –> 00:22:29,920
Some are IT-built, many are not, nobody can tell at a glance which is which.

444
00:22:29,920 –> 00:22:31,320
Then a regulatory audit arrives.

445
00:22:31,320 –> 00:22:33,080
The scope isn’t power platform.

446
00:22:33,080 –> 00:22:37,840
The scope is payment processing, customer onboarding, sanction screening, classic financial

447
00:22:37,840 –> 00:22:39,240
services topics.

448
00:22:39,240 –> 00:22:43,040
But because those processes now depend on low-code automation, power apps and power

449
00:22:43,040 –> 00:22:45,520
automate show up in the process maps.

450
00:22:45,520 –> 00:22:47,720
The auditors ask a simple question.

451
00:22:47,720 –> 00:22:51,960
Which of these automations are in scope and who is accountable for each of them?

452
00:22:51,960 –> 00:22:53,120
The enterprise scrambles.

453
00:22:53,120 –> 00:22:55,040
They open the COE inventory.

454
00:22:55,040 –> 00:22:59,120
They see for example 4000 plus cloud flows across all environments.

455
00:22:59,120 –> 00:23:02,120
Hundreds marked as runs frequently in production environments.

456
00:23:02,120 –> 00:23:07,520
A surprising number where the owner is a user account flagged as a lever in enter ID.

457
00:23:07,520 –> 00:23:11,920
Many apps with descriptions like onboarding V2 or payments helper with no business service

458
00:23:11,920 –> 00:23:12,920
mapping.

459
00:23:12,920 –> 00:23:14,240
They export the list to Excel.

460
00:23:14,240 –> 00:23:16,600
They start filtering by environment name.

461
00:23:16,600 –> 00:23:20,200
Proud payments by team, customer onboarding, risk KYC.

462
00:23:20,200 –> 00:23:21,960
That helps a little but not enough.

463
00:23:21,960 –> 00:23:23,760
Environment naming was never enforced.

464
00:23:23,760 –> 00:23:27,560
Some critical flows still live in a generic shared-proud environment created by a project

465
00:23:27,560 –> 00:23:28,560
years ago.

466
00:23:28,560 –> 00:23:30,640
Per view logs confirm usage.

467
00:23:30,640 –> 00:23:32,640
Flow’s tied to lever accounts are still running.

468
00:23:32,640 –> 00:23:36,120
Apps that look like prototypes are being opened hundreds of times a day.

469
00:23:36,120 –> 00:23:40,120
There is clear business dependency but no clear owner in any system of record.

470
00:23:40,120 –> 00:23:42,440
The auditors come back to their original question.

471
00:23:42,440 –> 00:23:46,760
For each automation that touches in scope processes who is the accountable business owner

472
00:23:46,760 –> 00:23:48,400
and what is the life cycle control?

473
00:23:48,400 –> 00:23:49,400
You don’t have an answer.

474
00:23:49,400 –> 00:23:53,040
You have an Excel export, a QE dashboard and a lot of tribal knowledge.

475
00:23:53,040 –> 00:23:55,840
For governance perspective three things went wrong here.

476
00:23:55,840 –> 00:23:58,840
First there was no power platform solution ownership model.

477
00:23:58,840 –> 00:23:59,840
Nobody made no owner.

478
00:23:59,840 –> 00:24:01,160
It’s a no app a rule.

479
00:24:01,160 –> 00:24:05,080
Nobody required that every production solution have a named business owner.

480
00:24:05,080 –> 00:24:08,880
A technical owner, a mapped business service or process.

481
00:24:08,880 –> 00:24:10,600
A documented life cycle.

482
00:24:10,600 –> 00:24:13,160
When it was last reviewed what happens if the owner leaves.

483
00:24:13,160 –> 00:24:15,840
Second, there was no life cycle management.

484
00:24:15,840 –> 00:24:20,360
Flow’s were created as pilots then quietly became production because they worked.

485
00:24:20,360 –> 00:24:21,840
There’s left the company.

486
00:24:21,840 –> 00:24:25,840
Their entra idea accounts were disabled but their apps and flows were reassigned to generic

487
00:24:25,840 –> 00:24:28,760
admin accounts without any business review.

488
00:24:28,760 –> 00:24:32,520
Dependency grew but nothing in the control plane reflected that criticality.

489
00:24:32,520 –> 00:24:34,600
Third, the COE was reporting not governing.

490
00:24:34,600 –> 00:24:38,080
It surfaced the existence of assets but didn’t drive decisions.

491
00:24:38,080 –> 00:24:42,680
No one had a standing process like every quarter we would identify often apps and flows

492
00:24:42,680 –> 00:24:46,560
in production environments and either assign owners or decommission them.

493
00:24:46,560 –> 00:24:48,800
The COE had telemetry, not authority.

494
00:24:48,800 –> 00:24:53,040
So during the audit phrases like shadow it start appearing in the notes.

495
00:24:53,040 –> 00:24:54,920
But this isn’t classic shadow IT.

496
00:24:54,920 –> 00:24:57,000
Rogue SaaS purchased on a credit card.

497
00:24:57,000 –> 00:25:01,080
These are sanctioned tools on a sanctioned platform running inside your tenant, built

498
00:25:01,080 –> 00:25:05,040
with your licenses over your data, under your entra idea.

499
00:25:05,040 –> 00:25:07,000
The only thing missing is ownership.

500
00:25:07,000 –> 00:25:12,080
From the auditors standpoint an often solution that moves money on board’s customers or touches

501
00:25:12,080 –> 00:25:13,920
KYC is not a hygiene issue.

502
00:25:13,920 –> 00:25:14,920
It’s a control failure.

503
00:25:14,920 –> 00:25:17,520
There is no accountable person to question.

504
00:25:17,520 –> 00:25:21,440
No documented change history that anyone trusts and no guarantee that the logic has ever

505
00:25:21,440 –> 00:25:23,040
been tested against current policy.

506
00:25:23,040 –> 00:25:24,680
This was not a shadow IT problem.

507
00:25:24,680 –> 00:25:26,360
This was a missing ownership problem.

508
00:25:26,360 –> 00:25:28,480
And it’s important to see how subtle the path was.

509
00:25:28,480 –> 00:25:33,240
At no point did someone say we choose to run regulated processes on unowned flows.

510
00:25:33,240 –> 00:25:35,760
What happened was the business needed automation.

511
00:25:35,760 –> 00:25:37,320
Power platform made it easy to build.

512
00:25:37,320 –> 00:25:39,480
The COE celebrated adoption.

513
00:25:39,480 –> 00:25:42,840
Nobody hardwired ownership and life cycle into the operating model.

514
00:25:42,840 –> 00:25:45,040
By the time audit arrives it’s too late to retrofit.

515
00:25:45,040 –> 00:25:49,280
You can clean up going forward but you can’t convincingly reconstruct years of ownership

516
00:25:49,280 –> 00:25:51,360
history for thousands of artifacts.

517
00:25:51,360 –> 00:25:53,560
So the lesson from financial services is this.

518
00:25:53,560 –> 00:25:58,120
If you cannot produce, on demand, a list of production apps and flows with named business

519
00:25:58,120 –> 00:26:00,960
owners and life cycle states, you don’t have a governance model.

520
00:26:00,960 –> 00:26:02,200
You have a user report.

521
00:26:02,200 –> 00:26:03,200
This was not shadow it.

522
00:26:03,200 –> 00:26:04,600
Now this was missing ownership.

523
00:26:04,600 –> 00:26:06,120
The platform was secure.

524
00:26:06,120 –> 00:26:09,280
Governance disappeared in the control plane or to put it more bluntly.

525
00:26:09,280 –> 00:26:13,400
If you already have a COE but it doesn’t enforce ownership and life cycle you don’t have governance.

526
00:26:13,400 –> 00:26:14,960
You have a meeting.

527
00:26:14,960 –> 00:26:18,200
In scenario three, healthcare, PHI in the wrong environment.

528
00:26:18,200 –> 00:26:21,680
Now take a healthcare provider operating under hyper equivalent regulation.

529
00:26:21,680 –> 00:26:24,240
They adopted power platform aggressively during a crisis.

530
00:26:24,240 –> 00:26:25,680
Clinics needed triage apps.

531
00:26:25,680 –> 00:26:27,040
Labs needed intake forms.

532
00:26:27,040 –> 00:26:29,560
Care teams needed lightweight tracking for follow ups.

533
00:26:29,560 –> 00:26:34,240
Traditional build cycles were too slow so power apps and power automate filled the gap.

534
00:26:34,240 –> 00:26:35,840
It did one thing right at the start.

535
00:26:35,840 –> 00:26:37,760
They created multiple environments.

536
00:26:37,760 –> 00:26:41,840
There was clinic apps, back office, research and a generic broadshed.

537
00:26:41,840 –> 00:26:45,600
They even created a PHI restricted environment because someone at least recognized that

538
00:26:45,600 –> 00:26:48,880
protected health information should live somewhere special.

539
00:26:48,880 –> 00:26:51,400
On paper that looks like an environment strategy.

540
00:26:51,400 –> 00:26:53,600
In reality it was just a list of names.

541
00:26:53,600 –> 00:26:55,640
The lesson here should land early.

542
00:26:55,640 –> 00:26:57,840
Environment names are not classification.

543
00:26:57,840 –> 00:27:02,920
If you don’t bind environments to concrete data rules you’ve just created labels, not controls.

544
00:27:02,920 –> 00:27:05,560
Nobody ever mapped those environments to data classification.

545
00:27:05,560 –> 00:27:09,000
Nobody wrote down PHI is only allowed in these environments.

546
00:27:09,000 –> 00:27:12,680
One PHI must never be in them, specific connectors are banned here.

547
00:27:12,680 –> 00:27:15,960
Every app here is automatically in regulatory scope.

548
00:27:15,960 –> 00:27:17,960
The names were suggestive, not authoritative.

549
00:27:17,960 –> 00:27:19,640
A clinic team needs a triage app.

550
00:27:19,640 –> 00:27:22,640
They work with a contractor who has built similar things before.

551
00:27:22,640 –> 00:27:26,000
The contractor is an experienced power app smaker, comfortable with dataverse.

552
00:27:26,000 –> 00:27:28,040
They ask for an environment to build in.

553
00:27:28,040 –> 00:27:31,000
Someone in IT says use clinic apps, that’s what the name suggests.

554
00:27:31,000 –> 00:27:33,560
In that environment, dataverse is provisioned.

555
00:27:33,560 –> 00:27:37,280
The contractor creates tables for patients, encounters, symptoms and notes.

556
00:27:37,280 –> 00:27:41,520
They configure a model driven app for staff and a canvas app for quick intake on tablets.

557
00:27:41,520 –> 00:27:44,800
It works, the clinics love it, so far still relatively contained.

558
00:27:44,800 –> 00:27:46,560
Then a new use case emerges.

559
00:27:46,560 –> 00:27:51,200
Tracking patients refer to specialists including diagnoses, medications and lab results.

560
00:27:51,200 –> 00:27:54,800
That dataset is clearly PHI, not just operational metadata.

561
00:27:54,800 –> 00:27:58,560
A security conscious architect suggests we should put that in PHI restricted.

562
00:27:58,560 –> 00:27:59,960
That’s why we created it.

563
00:27:59,960 –> 00:28:03,920
Under time pressure the contractor copies the existing dataverse tables and app configuration

564
00:28:03,920 –> 00:28:06,720
from clinic apps into PHI restricted.

565
00:28:06,720 –> 00:28:12,200
They export a solution imported into the PHI environment and then fix up the roles to match.

566
00:28:12,200 –> 00:28:14,560
Here is where the architectural failure happens.

567
00:28:14,560 –> 00:28:19,680
Instead of designing roles from first principles for PHI restricted, they copy the security

568
00:28:19,680 –> 00:28:21,520
roles from clinic apps.

569
00:28:21,520 –> 00:28:25,840
Those roles were designed for a broad set of clinic staff, reception, nurses, doctors and

570
00:28:25,840 –> 00:28:27,360
some back office coordinators.

571
00:28:27,360 –> 00:28:32,160
They granted table level read access to patient and encounter records because in the non-PHI

572
00:28:32,160 –> 00:28:34,320
triage context that was acceptable.

573
00:28:34,320 –> 00:28:38,800
In PHI restricted, that same set of roles now effectively grants large groups of staff access

574
00:28:38,800 –> 00:28:42,880
to diagnosis codes, medication histories and lab values they should never see.

575
00:28:42,880 –> 00:28:46,480
From their perspective nothing seems wrong, users log in with the same accounts.

576
00:28:46,480 –> 00:28:48,640
The app looks similar, they can do their job.

577
00:28:48,640 –> 00:28:49,640
Performance is fine.

578
00:28:49,640 –> 00:28:51,720
Auditing if enabled shows expected activity.

579
00:28:51,720 –> 00:28:55,560
The only hint of a problem appears months later when an internal privacy team performs

580
00:28:55,560 –> 00:28:56,560
a routine check.

581
00:28:56,560 –> 00:28:59,440
They pull an environment inventory, they see PHI restricted.

582
00:28:59,440 –> 00:29:02,960
Good, they see tables with names that clearly contain PHI.

583
00:29:02,960 –> 00:29:06,240
But then they look at the dataverse security roles and their assignments.

584
00:29:06,240 –> 00:29:09,920
They find a generic clinic user role with read access to PHI tables.

585
00:29:09,920 –> 00:29:13,600
That role assigned to large security groups covering wide swaths of staff.

586
00:29:13,600 –> 00:29:17,920
No differentiation between care teams or specialties or minimum necessary access.

587
00:29:17,920 –> 00:29:20,400
No documentation linking roles to drop functions.

588
00:29:20,400 –> 00:29:25,200
They compare that to the role model in the underlying EHR system, which is tightly segmented

589
00:29:25,200 –> 00:29:26,680
by specialty and location.

590
00:29:26,680 –> 00:29:28,480
The gap is obvious.

591
00:29:28,480 –> 00:29:32,000
If you remember one thing from this healthcare example, remember this.

592
00:29:32,000 –> 00:29:36,400
Having a role model from a non-PHI environment into a PHI environment is not reuse.

593
00:29:36,400 –> 00:29:39,560
It’s a compliance violation waiting to be discovered.

594
00:29:39,560 –> 00:29:44,680
Functionally PHI in the power platform environment is far more broadly visible than PHI in the primary

595
00:29:44,680 –> 00:29:45,680
clinical system.

596
00:29:45,680 –> 00:29:49,720
Not because anyone overrode encryption or broke authentication, but because they copied

597
00:29:49,720 –> 00:29:55,840
a convenience oriented role model from a non-PHI context into a PHI context without redesign,

598
00:29:55,840 –> 00:29:56,840
auditors dig deeper.

599
00:29:56,840 –> 00:29:59,040
They ask for a field level security matrix.

600
00:29:59,040 –> 00:30:00,040
It doesn’t exist.

601
00:30:00,040 –> 00:30:01,720
Field level security was never turned on.

602
00:30:01,720 –> 00:30:06,360
Social security numbers addresses diagnosis descriptions all treated as regular columns.

603
00:30:06,360 –> 00:30:10,400
They ask for a record of who approved this access design for PHI restricted.

604
00:30:10,400 –> 00:30:11,400
There is no record.

605
00:30:11,400 –> 00:30:15,000
There was a project plan, some emails and a deployment ticket that said promote to PHI

606
00:30:15,000 –> 00:30:16,000
restricted.

607
00:30:16,000 –> 00:30:20,360
Nobody with formal privacy accountability signed off on the dataverse security configuration.

608
00:30:20,360 –> 00:30:22,800
From a regulatory standpoint, this is not an edge case.

609
00:30:22,800 –> 00:30:24,680
It’s a systematic failure.

610
00:30:24,680 –> 00:30:27,280
Environment strategy without data classification is not neutral.

611
00:30:27,280 –> 00:30:28,280
It’s a compliance trap.

612
00:30:28,280 –> 00:30:32,600
You created a PHI environment but you never bound it to a stricter security model.

613
00:30:32,600 –> 00:30:35,680
You allowed roles to be copy-pasted from non-PHI spaces.

614
00:30:35,680 –> 00:30:38,720
You never mandated field level security for sensitive attributes.

615
00:30:38,720 –> 00:30:42,640
You never defined which person has existed in that environment and how least privilege

616
00:30:42,640 –> 00:30:43,840
would be enforced.

617
00:30:43,840 –> 00:30:45,960
So you end up in the worst possible position.

618
00:30:45,960 –> 00:30:50,320
You can’t honestly claim ignorance because the environment is literally called PHI restricted,

619
00:30:50,320 –> 00:30:54,240
but you also can’t demonstrate that you applied a proportional security design.

620
00:30:54,240 –> 00:30:55,680
This was not an encryption problem.

621
00:30:55,680 –> 00:30:56,920
This was a role design problem.

622
00:30:56,920 –> 00:30:58,080
The platform was secure.

623
00:30:58,080 –> 00:31:02,760
Governance disappeared in the control plane and again, the path was entirely understandable.

624
00:31:02,760 –> 00:31:06,880
Time pressure, reuse of existing patterns, lack of a platform team with authority over

625
00:31:06,880 –> 00:31:11,840
environment design and a deeply human instinct to copy something that already works instead

626
00:31:11,840 –> 00:31:14,040
of designing from scratch.

627
00:31:14,040 –> 00:31:16,200
The lesson from healthcare is straightforward.

628
00:31:16,200 –> 00:31:20,360
If your environment strategy is based on team names instead of data classification,

629
00:31:20,360 –> 00:31:21,800
you haven’t reduced risk.

630
00:31:21,800 –> 00:31:24,360
You’ve just hidden it behind friendly labels.

631
00:31:24,360 –> 00:31:28,920
Mario 4, retail, business critical app dies with its creator.

632
00:31:28,920 –> 00:31:30,160
Now move into retail.

633
00:31:30,160 –> 00:31:34,800
A large retailer with thousands of stores has been modernizing store operations.

634
00:31:34,800 –> 00:31:38,640
Task management, shrink reporting, inventory exceptions, maintenance tickets are all the

635
00:31:38,640 –> 00:31:43,320
small workflows that used to live in binders and email threads are slowly moving onto power

636
00:31:43,320 –> 00:31:45,400
apps and power automate.

637
00:31:45,400 –> 00:31:48,240
One store manager is particularly good with technology.

638
00:31:48,240 –> 00:31:50,720
They start as a classic citizen developer.

639
00:31:50,720 –> 00:31:55,280
Just a simple checklist app, then a basic incident logging tool, then a more sophisticated solution

640
00:31:55,280 –> 00:31:59,680
that wires together inventory data, staffing and maintenance.

641
00:31:59,680 –> 00:32:03,000
Over a couple of years, that side project quietly becomes business critical.

642
00:32:03,000 –> 00:32:05,280
Here’s how it happens.

643
00:32:05,280 –> 00:32:08,040
The original app tracks store incidents.

644
00:32:08,040 –> 00:32:13,040
Spills, breakages, equipment issues, over time it grows features, integration with a shared

645
00:32:13,040 –> 00:32:17,360
excel file for tracking costs, a power automate flow that notifies maintenance when freezer

646
00:32:17,360 –> 00:32:19,600
temperatures cross a threshold.

647
00:32:19,600 –> 00:32:23,520
Another flow that sends summaries to regional managers every Monday, a canvas app embedded

648
00:32:23,520 –> 00:32:25,680
in teams that staff use on handhelds.

649
00:32:25,680 –> 00:32:30,120
The app lives in what was originally a department environment called Ops Tools.

650
00:32:30,120 –> 00:32:32,400
Nobody ever reclassified it as production.

651
00:32:32,400 –> 00:32:37,560
Nobody updated the environment strategy when this solution became central to store operations.

652
00:32:37,560 –> 00:32:38,560
Ownership is informal.

653
00:32:38,560 –> 00:32:40,160
The creator is the store manager.

654
00:32:40,160 –> 00:32:43,760
They are the environment admin, the app owner, the person everyone pings when something

655
00:32:43,760 –> 00:32:44,760
looks odd.

656
00:32:44,760 –> 00:32:48,360
It is dimly aware of the solution but happy to see the stores innovating.

657
00:32:48,360 –> 00:32:52,240
There is no race, there is no ticket queue, there is no documented support model, then the

658
00:32:52,240 –> 00:32:53,240
creator leaves.

659
00:32:53,240 –> 00:32:57,480
Maybe they get promoted to a different business unit, maybe they move to a competitor, maybe

660
00:32:57,480 –> 00:33:02,200
they take a sabbatical, their intraid account is disabled as part of the standard HR off-boarding

661
00:33:02,200 –> 00:33:03,200
process.

662
00:33:03,200 –> 00:33:04,880
In intraid, that’s the end of the story.

663
00:33:04,880 –> 00:33:07,680
In power platform, it’s the start of a slow motion incident.

664
00:33:07,680 –> 00:33:09,920
Initially, nothing obvious breaks.

665
00:33:09,920 –> 00:33:13,280
The app still opens because users have direct share permissions.

666
00:33:13,280 –> 00:33:17,640
Some flows keep running because ownership was quietly reassigned to a generic admin account

667
00:33:17,640 –> 00:33:19,560
when the user was deprovisioned.

668
00:33:19,560 –> 00:33:21,680
From the store’s perspective, life goes on.

669
00:33:21,680 –> 00:33:23,320
But entropy is already in motion.

670
00:33:23,320 –> 00:33:25,880
A schema change happens in the underlying data source.

671
00:33:25,880 –> 00:33:29,720
A column is added to the Excel sheet or a new field appears in dataverse because someone

672
00:33:29,720 –> 00:33:32,000
extended the model for a related project.

673
00:33:32,000 –> 00:33:34,000
The app wasn’t built with that change in mind.

674
00:33:34,000 –> 00:33:35,600
A formula breaks in one screen.

675
00:33:35,600 –> 00:33:38,360
Staff start seeing errors when they submit certain types of incidents.

676
00:33:38,360 –> 00:33:40,320
They open tickets with the central service desk.

677
00:33:40,320 –> 00:33:42,520
The service desk looks in their ITSM system.

678
00:33:42,520 –> 00:33:44,400
There is no CI record for this app.

679
00:33:44,400 –> 00:33:45,720
No support team.

680
00:33:45,720 –> 00:33:47,160
No documented owner.

681
00:33:47,160 –> 00:33:52,080
The ticket bounces between applications via store operations and infrastructure.

682
00:33:52,080 –> 00:33:53,400
Nobody can answer a simple question.

683
00:33:53,400 –> 00:33:56,000
Who is responsible for fixing this power app?

684
00:33:56,000 –> 00:33:59,880
In parallel, one of the flows that sends weekly summaries starts failing.

685
00:33:59,880 –> 00:34:03,600
The failure shows up in power, automated as a run history full of red exclamation marks.

686
00:34:03,600 –> 00:34:05,200
The notification email stop.

687
00:34:05,200 –> 00:34:08,480
Regional managers assume the stores are just having a quiet week.

688
00:34:08,480 –> 00:34:13,040
After a month, someone notices that incident volumes look suspiciously low, they escalate.

689
00:34:13,040 –> 00:34:15,440
It finally goes into the power platform admin center.

690
00:34:15,440 –> 00:34:16,440
They find the app.

691
00:34:16,440 –> 00:34:17,440
They can see usage patterns.

692
00:34:17,440 –> 00:34:19,120
There are heavy in certain regions.

693
00:34:19,120 –> 00:34:20,960
Daily usage across hundreds of users.

694
00:34:20,960 –> 00:34:25,320
They see that the current owner is a generic admin account with no human tied to it.

695
00:34:25,320 –> 00:34:29,600
They see related flows, some suspended due to errors, some still running.

696
00:34:29,600 –> 00:34:32,960
They ask the COE team who built this and where is the documentation there.

697
00:34:32,960 –> 00:34:37,040
The COE team can tell them that the original creator’s UPN was bound to the app.

698
00:34:37,040 –> 00:34:40,200
They can show when an ownership was transferred to the admin account.

699
00:34:40,200 –> 00:34:42,080
They can export the dependency graph.

700
00:34:42,080 –> 00:34:45,600
What they can’t do is tell them why the app was designed the way it was, what business

701
00:34:45,600 –> 00:34:48,400
rules it encodes or what the acceptable behavior is.

702
00:34:48,400 –> 00:34:51,240
From the business perspective, this is a production outage.

703
00:34:51,240 –> 00:34:53,280
Store staff revert to manual reporting.

704
00:34:53,280 –> 00:34:54,880
Spread sheets reappear.

705
00:34:54,880 –> 00:34:56,280
Incidents go unlogged.

706
00:34:56,280 –> 00:34:57,280
Maintenance is slower.

707
00:34:57,280 –> 00:35:01,160
There is no official severity one incident in your classic IT systems, but the impact is

708
00:35:01,160 –> 00:35:02,160
real.

709
00:35:02,160 –> 00:35:06,440
From a governance perspective, this is the inevitable outcome of one design choice.

710
00:35:06,440 –> 00:35:10,320
You allow the business critical app to exist in production without a clear ownership and

711
00:35:10,320 –> 00:35:11,640
life cycle model.

712
00:35:11,640 –> 00:35:15,360
There was no rule that said no owner is no app.

713
00:35:15,360 –> 00:35:18,960
There was no requirement that any app with certain usage or impact be onboarded into your

714
00:35:18,960 –> 00:35:20,400
standard support model.

715
00:35:20,400 –> 00:35:25,320
There was no life cycle policy that said if the owner is a lever, the app must be reviewed

716
00:35:25,320 –> 00:35:26,400
or decommissioned.

717
00:35:26,400 –> 00:35:28,360
This was not a platform reliability problem.

718
00:35:28,360 –> 00:35:30,440
This was a life cycle governance problem.

719
00:35:30,440 –> 00:35:34,280
The uncomfortable part is that the platform behaved exactly as designed.

720
00:35:34,280 –> 00:35:36,200
Store apps didn’t randomly delete anything.

721
00:35:36,200 –> 00:35:38,960
Power automate didn’t spontaneously corrupt your logic.

722
00:35:38,960 –> 00:35:43,120
The admin center even had enough telemetry to warn you if someone had been looking.

723
00:35:43,120 –> 00:35:47,880
Heavy usage tied to a small number of owners, flows failing repeatedly orfant assets.

724
00:35:47,880 –> 00:35:49,160
Governance chose not to act.

725
00:35:49,160 –> 00:35:51,600
So the lesson from retail is blunt.

726
00:35:51,600 –> 00:35:55,000
If an app is important enough that you’d open a severity one incident when it breaks,

727
00:35:55,000 –> 00:35:59,440
it is important enough to have a documented owner, a support model and a life cycle.

728
00:35:59,440 –> 00:36:02,960
Pause on this because it’s the only rule that consistently survives incidents.

729
00:36:02,960 –> 00:36:04,680
No owner, X no app.

730
00:36:04,680 –> 00:36:06,600
No owner, X no app is not optional.

731
00:36:06,600 –> 00:36:10,960
It is your only realistic business continuity policy for citizen build solutions.

732
00:36:10,960 –> 00:36:13,040
This was not a platform reliability problem.

733
00:36:13,040 –> 00:36:14,560
The platform was secure.

734
00:36:14,560 –> 00:36:16,560
Governance disappeared in the control plane.

735
00:36:16,560 –> 00:36:18,680
Scenario 5, professional services.

736
00:36:18,680 –> 00:36:20,880
Copilot quietly multiplies risk.

737
00:36:20,880 –> 00:36:22,920
Now let’s look at a professional services firm.

738
00:36:22,920 –> 00:36:24,240
Legal consulting tax?

739
00:36:24,240 –> 00:36:25,320
Pick your poison.

740
00:36:25,320 –> 00:36:26,640
The common pattern is the same.

741
00:36:26,640 –> 00:36:31,040
Expensive humans, time and materials billing, and a lot of very sensitive documents.

742
00:36:31,040 –> 00:36:33,760
Co-pilot’s ownership is under pressure to do something with AI.

743
00:36:33,760 –> 00:36:35,960
They see Microsoft copilot everywhere.

744
00:36:35,960 –> 00:36:39,680
Slide decks promise productivity gains, so they make the predictable move.

745
00:36:39,680 –> 00:36:44,640
Turn on copilot capabilities in power platform to increase efficiency for knowledge workers.

746
00:36:44,640 –> 00:36:45,720
There is just one problem.

747
00:36:45,720 –> 00:36:48,920
They do this before they can even govern human build apps properly.

748
00:36:48,920 –> 00:36:52,720
In the tenant, there is already a mix of power apps and power automate flows.

749
00:36:52,720 –> 00:36:54,200
Matter intake forms.

750
00:36:54,200 –> 00:36:56,720
Conflict check automations, document review trackers.

751
00:36:56,720 –> 00:36:58,640
Simple time entry helpers tied into billing.

752
00:36:58,640 –> 00:36:59,880
Ownership is patchy.

753
00:36:59,880 –> 00:37:04,560
Some live in IT owned environments, others in team spaces, many in a generic apps prod environment

754
00:37:04,560 –> 00:37:05,960
created during an early pilot.

755
00:37:05,960 –> 00:37:08,760
The COE has inventory but not much classification.

756
00:37:08,760 –> 00:37:11,800
DLP policies exist but they were written with classic connectors in mind.

757
00:37:11,800 –> 00:37:16,120
SharePoint, Exchange, SQL, a handful of line of business APIs.

758
00:37:16,120 –> 00:37:20,800
When copilot studio and copilot features in power apps and power automate light up, the

759
00:37:20,800 –> 00:37:22,720
makers don’t get a new governance story.

760
00:37:22,720 –> 00:37:24,240
They just get a new button.

761
00:37:24,240 –> 00:37:25,600
Describe what you want to build.

762
00:37:25,600 –> 00:37:30,680
A senior associate types create an app that tracks matters with fields for client jurisdiction,

763
00:37:30,680 –> 00:37:34,040
practice area, lead partner and current status.

764
00:37:34,040 –> 00:37:36,920
Add a screen that lists open matters by deadline.

765
00:37:36,920 –> 00:37:39,920
Copilot scaffolds a dataverse table, some screens a couple of views.

766
00:37:39,920 –> 00:37:42,680
It’s not perfect but it’s good enough to iterate on.

767
00:37:42,680 –> 00:37:46,040
They tweak it, wire in some flows for notifications and publish.

768
00:37:46,040 –> 00:37:49,880
In a day they’ve shipped what would have taken weeks to get through traditional IT.

769
00:37:49,880 –> 00:37:52,080
Repeat that pattern across dozens of teams.

770
00:37:52,080 –> 00:37:57,320
HR builds a feedback tracker, tax builds a workflow for extension requests, risk builds a conflicts

771
00:37:57,320 –> 00:37:58,320
review helper.

772
00:37:58,320 –> 00:38:02,560
All of them use copilot to accelerate schema design, formulas and expressions.

773
00:38:02,560 –> 00:38:04,880
Architecturally something quiet and important changes.

774
00:38:04,880 –> 00:38:09,000
You no longer have a need division between IT build apps and business build apps.

775
00:38:09,000 –> 00:38:13,840
You have a fast growing set of AI assisted assets whose intent is only partially visible

776
00:38:13,840 –> 00:38:15,240
in human minds.

777
00:38:15,240 –> 00:38:18,000
The people who built them didn’t write every line.

778
00:38:18,000 –> 00:38:20,040
They accepted and tweaked suggestions.

779
00:38:20,040 –> 00:38:21,920
Now look at this from the governance side.

780
00:38:21,920 –> 00:38:23,480
The admin center inventory grows.

781
00:38:23,480 –> 00:38:25,640
You see new apps, new flows, new connections.

782
00:38:25,640 –> 00:38:27,680
Many of them were created via copilot.

783
00:38:27,680 –> 00:38:31,960
But there is no mandatory tagging that says AI generated versus human authored.

784
00:38:31,960 –> 00:38:35,960
There is no required owner metadata beyond the basic maker identity.

785
00:38:35,960 –> 00:38:40,160
There is no prompt logging that says these were the natural language instructions that shaped

786
00:38:40,160 –> 00:38:41,240
this asset.

787
00:38:41,240 –> 00:38:43,240
The CUE dashboards show adoption going up.

788
00:38:43,240 –> 00:38:44,440
There is internal excitement.

789
00:38:44,440 –> 00:38:48,840
Leaders see demos of copilot surfacing key clauses from contracts stored in SharePoint

790
00:38:48,840 –> 00:38:51,120
or summarizing status from dataverse tables.

791
00:38:51,120 –> 00:38:52,400
It looks like innovation.

792
00:38:52,400 –> 00:38:54,280
Then risk and compliance start asking questions.

793
00:38:54,280 –> 00:38:57,280
They pull a list of apps and flows that touch client data.

794
00:38:57,280 –> 00:39:01,360
They want to know which of these were built with copilot, what prompts were used.

795
00:39:01,360 –> 00:39:05,480
Did anyone ask copilot to summarize or transform client documents that contain privileged or

796
00:39:05,480 –> 00:39:06,760
regulated information?

797
00:39:06,760 –> 00:39:09,280
Where are those prompts and intermediate output stored?

798
00:39:09,280 –> 00:39:10,760
You don’t have answers.

799
00:39:10,760 –> 00:39:14,920
Copilot usage logs exist at a platform level, but you never wired them into your governance

800
00:39:14,920 –> 00:39:15,920
story.

801
00:39:15,920 –> 00:39:19,480
There is no standard that says every AI assisted asset must be registered with the platform

802
00:39:19,480 –> 00:39:23,320
team, tagged with its risk level and linked to a business owner.

803
00:39:23,320 –> 00:39:27,920
There is no AI specific DLP model that says copilot cannot read from these repositories

804
00:39:27,920 –> 00:39:29,120
or write to those.

805
00:39:29,120 –> 00:39:31,480
So you end up with the worst of both worlds.

806
00:39:31,480 –> 00:39:35,600
On the one hand, you have all the classic low-code risks, unclear ownership, weak environment

807
00:39:35,600 –> 00:39:38,000
strategy, inconsistent DLP.

808
00:39:38,000 –> 00:39:41,800
On the other hand, you’ve just attached an acceleration engine to that weak governance

809
00:39:41,800 –> 00:39:42,800
model.

810
00:39:42,800 –> 00:39:43,800
Copilot is not misbehaving.

811
00:39:43,800 –> 00:39:46,760
It’s doing exactly what it was asked to do.

812
00:39:46,760 –> 00:39:50,440
It’s a flow that copies documents from this library to that one.

813
00:39:50,440 –> 00:39:53,640
Suggest columns based on this description of a client matter system.

814
00:39:53,640 –> 00:39:57,280
Write an expression to filter records where status is active and deadline is in the next

815
00:39:57,280 –> 00:39:58,680
14 days.

816
00:39:58,680 –> 00:40:03,080
The trouble is that nobody is systematically reviewing what it produced, where it connected,

817
00:40:03,080 –> 00:40:05,280
or how it changed the shape of data movement.

818
00:40:05,280 –> 00:40:09,320
An internal investigation eventually finds a copilot generated flow that listens to a

819
00:40:09,320 –> 00:40:13,480
SharePoint library where draft contracts are stored sends some of those contracts to

820
00:40:13,480 –> 00:40:15,880
a shared mailbox for a review group.

821
00:40:15,880 –> 00:40:19,280
Logs those summaries in a dataverse table called contract summaries.

822
00:40:19,280 –> 00:40:20,600
The review mailbox is fine.

823
00:40:20,600 –> 00:40:24,560
The dataverse table lives in an environment with Slack DLP rules and broad membership.

824
00:40:24,560 –> 00:40:29,160
Junior staff who should never see the substance of certain deals can now browse summaries.

825
00:40:29,160 –> 00:40:31,920
Again, nothing here breached the core security model.

826
00:40:31,920 –> 00:40:33,920
Entra ID authenticated everyone.

827
00:40:33,920 –> 00:40:35,680
SharePoint permissions were respected.

828
00:40:35,680 –> 00:40:37,920
Dataverse dutifully stored what it was told.

829
00:40:37,920 –> 00:40:42,760
DLP never complained because from its perspective, everything stayed inside business connectors.

830
00:40:42,760 –> 00:40:44,560
This was not an AI safety failure.

831
00:40:44,560 –> 00:40:47,520
This was a governance failure that copilot multiplied.

832
00:40:47,520 –> 00:40:49,160
And that’s the pattern to pay attention to.

833
00:40:49,160 –> 00:40:52,960
If you cannot govern human build apps and flows today, if you don’t have environment,

834
00:40:52,960 –> 00:40:57,760
strategy, DLP guardrails, ownership, life cycle and metrics, you are not ready to govern

835
00:40:57,760 –> 00:40:59,520
AI generated ones.

836
00:40:59,520 –> 00:41:02,520
Copilot and agente AI are accelerants.

837
00:41:02,520 –> 00:41:07,040
For whatever governance posture you already have, good or bad, most copilot failures will

838
00:41:07,040 –> 00:41:08,640
not look like AI failures.

839
00:41:08,640 –> 00:41:11,840
They will look like ordinary governance failures, just faster.

840
00:41:11,840 –> 00:41:14,880
So the lesson from professional services is simple and uncomfortable.

841
00:41:14,880 –> 00:41:19,600
If your low-code governance framework cannot handle humans, it will not handle agents.

842
00:41:19,600 –> 00:41:22,680
Governance is not a PDF, defining a real operating model.

843
00:41:22,680 –> 00:41:25,120
By this point, the pattern should be obvious.

844
00:41:25,120 –> 00:41:29,720
Manufacturing leaked data because DLP was a one-time configuration, not a living system.

845
00:41:29,720 –> 00:41:33,200
Financial services failed audit because ownership was a slide, not a practice.

846
00:41:33,200 –> 00:41:37,480
Healthcare exposed PHI because environment names pretended to be classification.

847
00:41:37,480 –> 00:41:40,960
Retail broke because life cycle was implicit, not enforced.

848
00:41:40,960 –> 00:41:44,920
Social services multiplied risk because copilot landed on top of all of that.

849
00:41:44,920 –> 00:41:47,560
All of those are symptoms of the same root cause.

850
00:41:47,560 –> 00:41:52,280
You don’t have a governance operating model, you have governance documents.

851
00:41:52,280 –> 00:41:55,960
Architecturally, governance has to behave like an operating system, not a PDF.

852
00:41:55,960 –> 00:41:57,960
An operating system does three things.

853
00:41:57,960 –> 00:42:03,840
It defines decision rights, it implements feedback loops, it has enforcement mechanisms.

854
00:42:03,840 –> 00:42:06,320
Decision rights answer, who decides?

855
00:42:06,320 –> 00:42:09,920
At every key boundary, who decides which environments are allowed to exist, who decides

856
00:42:09,920 –> 00:42:14,000
what DLP patterns are acceptable for finance versus HR versus R&D?

857
00:42:14,000 –> 00:42:17,720
Who decides when something is production and must meet stricter criteria?

858
00:42:17,720 –> 00:42:21,400
Who decides which connectors are allowed into a regulated environment?

859
00:42:21,400 –> 00:42:25,640
If the answer to all of those is a committee or it depends, you don’t have decision rights,

860
00:42:25,640 –> 00:42:29,920
you have diffusion of responsibility, feedback loops answer, how do we know reality still

861
00:42:29,920 –> 00:42:31,240
matches intent?

862
00:42:31,240 –> 00:42:35,360
That means you’re not just setting policies once, you’re measuring adherence.

863
00:42:35,360 –> 00:42:37,240
You have metrics for orphaned apps and flows.

864
00:42:37,240 –> 00:42:39,040
You watch DLP violations over time.

865
00:42:39,040 –> 00:42:42,120
You track environment growth relative to actual usage.

866
00:42:42,120 –> 00:42:45,360
You look at the ratio of citizen build assets to incidents.

867
00:42:45,360 –> 00:42:47,760
When thresholds are crossed, something happens.

868
00:42:47,760 –> 00:42:52,120
Enforcement mechanisms answer what actually changes when the system drifts.

869
00:42:52,120 –> 00:42:53,560
Not in theory in practice.

870
00:42:53,560 –> 00:42:57,240
If often flows exceed 2%, who triggers remediation?

871
00:42:57,240 –> 00:43:01,360
If a non-approved connector appears in a production environment who has the authority

872
00:43:01,360 –> 00:43:03,720
to block it and force a review.

873
00:43:03,720 –> 00:43:07,600
If an app crosses a usage threshold that makes it business critical, who can insist

874
00:43:07,600 –> 00:43:10,040
it be onboarded into A-LAM and support?

875
00:43:10,040 –> 00:43:13,640
If you can’t answer those questions with concrete names and actions, you don’t have an

876
00:43:13,640 –> 00:43:14,880
operating model.

877
00:43:14,880 –> 00:43:16,360
You have governance theatre.

878
00:43:16,360 –> 00:43:20,760
This is where a lot of organisations misunderstand the role of a power platform centre of excellence.

879
00:43:20,760 –> 00:43:22,720
The QE starter kit is a set of tools.

880
00:43:22,720 –> 00:43:24,520
It is not by itself an operating model.

881
00:43:24,520 –> 00:43:28,960
You can have beautiful dashboards, usage reports and maker statistics and still have no

882
00:43:28,960 –> 00:43:30,200
real control.

883
00:43:30,200 –> 00:43:34,640
If you already have a COE but it doesn’t look like an operating system, with decision rights,

884
00:43:34,640 –> 00:43:37,560
feedback loops and enforcement, you don’t have a governance model.

885
00:43:37,560 –> 00:43:38,560
You have a meeting.

886
00:43:38,560 –> 00:43:41,640
So what does a real power platform governance operating model look like?

887
00:43:41,640 –> 00:43:43,200
First, it is platform team led.

888
00:43:43,200 –> 00:43:45,440
You stand up a platform team whose mandate is clear.

889
00:43:45,440 –> 00:43:47,440
Own standards and guardrails, not every app.

890
00:43:47,440 –> 00:43:48,640
They’re not a dev factory.

891
00:43:48,640 –> 00:43:51,360
They don’t become a bottleneck for every citizen build form.

892
00:43:51,360 –> 00:43:54,320
Their job is to design and operate the control plane.

893
00:43:54,320 –> 00:43:59,120
Environments, DLP, identity patterns, ALM pipelines, monitoring and metrics.

894
00:43:59,120 –> 00:44:01,520
Second, it organizes policy along three axes.

895
00:44:01,520 –> 00:44:04,760
Scale, how many makers and assets are we talking about?

896
00:44:04,760 –> 00:44:07,440
Sensitivity, what class of data is involved?

897
00:44:07,440 –> 00:44:12,600
Digital internal, confidential regulated, criticality, what is the impact if this app or flow fails?

898
00:44:12,600 –> 00:44:16,960
Annoyance, local disruption, enterprise wide outage, regulatory breach.

899
00:44:16,960 –> 00:44:19,400
Every solution lives somewhere on those three axes.

900
00:44:19,400 –> 00:44:24,480
A personal productivity flow in the default environment is low sensitivity, low criticality,

901
00:44:24,480 –> 00:44:25,480
small scale.

902
00:44:25,480 –> 00:44:31,000
A payments approval app in finance broad is high sensitivity, high criticality and potentially

903
00:44:31,000 –> 00:44:32,000
large scale.

904
00:44:32,000 –> 00:44:34,080
Your operating model doesn’t treat those the same.

905
00:44:34,080 –> 00:44:36,080
It defines policy tiers.

906
00:44:36,080 –> 00:44:37,360
Low tier.

907
00:44:37,360 –> 00:44:41,920
Permissive environments with strict DLP around external connectors, limited sharing, lightweight

908
00:44:41,920 –> 00:44:42,920
ownership.

909
00:44:42,920 –> 00:44:48,400
Medium tier, departmental solutions within forced ALM, stronger DLP, clear rakey, high tier,

910
00:44:48,400 –> 00:44:53,200
enterprise or regulated solutions with dedicated environments, locked down connectors, mandatory

911
00:44:53,200 –> 00:44:55,560
life cycle processes and formal sign off.

912
00:44:55,560 –> 00:44:57,520
Third, the operating model runs every day.

913
00:44:57,520 –> 00:45:01,560
It has routines, day to day monitoring of flows, failing in production, weekly reviews

914
00:45:01,560 –> 00:45:05,200
of new production tagged apps crossing usage thresholds.

915
00:45:05,200 –> 00:45:10,440
Currently checks on often assets and DLP violations, quarterly reviews with security and compliance

916
00:45:10,440 –> 00:45:13,160
on regulated environments and AI agents.

917
00:45:13,160 –> 00:45:16,680
The point is simple, governance is not what’s written down, governance is what runs.

918
00:45:16,680 –> 00:45:20,080
Once you think of it as an operating system, you can start to design it intentionally.

919
00:45:20,080 –> 00:45:25,600
With a platform team charter, a clear rakey, an environment strategy that maps to data classification

920
00:45:25,600 –> 00:45:31,360
and a time bound plan, day, day 30, day 90, to get from chaos to something you can defend

921
00:45:31,360 –> 00:45:33,560
in front of its seesaw.

922
00:45:33,560 –> 00:45:38,840
Medium team led operating model, charter, rakey, environments, day 30, 90.

923
00:45:38,840 –> 00:45:40,080
So let’s make this concrete.

924
00:45:40,080 –> 00:45:44,040
If governance is an operating system, the platform team is the kernel.

925
00:45:44,040 –> 00:45:48,480
Everything else is user land, the platform team charter is simple and non-negotiable.

926
00:45:48,480 –> 00:45:50,160
They own the platform, not every app.

927
00:45:50,160 –> 00:45:51,920
They own standards, patterns and guardrails.

928
00:45:51,920 –> 00:45:55,440
They do not become a ticket queue for please build my form.

929
00:45:55,440 –> 00:45:59,400
Architecturally their responsibilities fall into four buckets, first control plane design.

930
00:45:59,400 –> 00:46:03,120
They define the environment strategy, which environments exist, what they’re called,

931
00:46:03,120 –> 00:46:07,560
which security groups map to each one, what data classifications are allowed where,

932
00:46:07,560 –> 00:46:10,440
which DLP policies apply, which regions are used.

933
00:46:10,440 –> 00:46:14,520
They own the baseline conditional access patterns for power platform surfaces.

934
00:46:14,520 –> 00:46:19,040
They decide what managed environment means in your tenant, second patterns in ALM.

935
00:46:19,040 –> 00:46:20,880
They provide reference architectures.

936
00:46:20,880 –> 00:46:24,960
If you’re building a departmental approval app, here’s the template, here’s the pipeline,

937
00:46:24,960 –> 00:46:27,920
here’s how you move from dev to test to prod.

938
00:46:27,920 –> 00:46:33,360
They standardize on a small set of ALM patterns, native pipelines, Azure DevOps or GitHub,

939
00:46:33,360 –> 00:46:35,160
and make those the default parts to production.

940
00:46:35,160 –> 00:46:39,000
They don’t handcraft every solution, but they define how solutions should behave.

941
00:46:39,000 –> 00:46:40,920
Third, monitoring and metrics.

942
00:46:40,920 –> 00:46:42,360
They own the dashboards.

943
00:46:42,360 –> 00:46:48,440
CoeInventory, DLP Impact Analysis, Environment Health, Flow Failure Rates, often asset percentages,

944
00:46:48,440 –> 00:46:50,600
adoption versus incident ratios.

945
00:46:50,600 –> 00:46:52,440
They set thresholds and wire alerts.

946
00:46:52,440 –> 00:46:55,400
They are the first ones to see when governance starts to drift.

947
00:46:55,400 –> 00:46:57,400
Fourth, enablement and escalation.

948
00:46:57,400 –> 00:47:01,520
They run the maker on boarding experience, the documentation of guard rails, the internal

949
00:47:01,520 –> 00:47:03,040
power platform hub.

950
00:47:03,040 –> 00:47:07,440
They provide guidance sessions, pattern reviews for higher risk solutions, and they act as

951
00:47:07,440 –> 00:47:11,520
the escalation point when something crosses a risk threshold and needs to be pulled into

952
00:47:11,520 –> 00:47:13,040
a stricter regime.

953
00:47:13,040 –> 00:47:16,480
To make that work, you need a clear rarity, business owns data and outcomes.

954
00:47:16,480 –> 00:47:21,040
The platform team owns the platform and patterns, security and compliance own control objectives,

955
00:47:21,040 –> 00:47:24,480
IT operations own support for infrastructure and core services.

956
00:47:24,480 –> 00:47:26,480
So for a given app.

957
00:47:26,480 –> 00:47:29,280
IT is responsible for defining what it does and why it matters.

958
00:47:29,280 –> 00:47:31,520
Business is accountable for the risk of using it.

959
00:47:31,520 –> 00:47:35,560
Platform team is consulted on architecture, environment and DLP fit.

960
00:47:35,560 –> 00:47:38,680
Security and compliance are consulted on regulated scenarios.

961
00:47:38,680 –> 00:47:41,760
IT jobs is informed about support, impact and dependencies.

962
00:47:41,760 –> 00:47:46,200
If your current model makes IT accountable for every low-code asset, you’ve already lost.

963
00:47:46,200 –> 00:47:49,560
You will either block everything or silently accept risk you don’t own.

964
00:47:49,560 –> 00:47:50,560
Now, environments.

965
00:47:50,560 –> 00:47:54,920
You need a minimum viable environment, tearing that aligns to data sensitivity and criticality,

966
00:47:54,920 –> 00:47:55,920
not org chart.

967
00:47:55,920 –> 00:48:00,120
At the bottom, a lockdown default environment scope to personal productivity.

968
00:48:00,120 –> 00:48:01,440
Tied DLP.

969
00:48:01,440 –> 00:48:02,840
No premium connectors.

970
00:48:02,840 –> 00:48:05,120
No business critical data.

971
00:48:05,120 –> 00:48:08,240
Think tell me when my manager emails me, not run payroll.

972
00:48:08,240 –> 00:48:12,720
Then non-regulated dev test prod tiers for departmental and enterprise apps.

973
00:48:12,720 –> 00:48:14,280
Names that actually mean something.

974
00:48:14,280 –> 00:48:18,280
Depth dev, depth test, depth prod, enterprise prod.

975
00:48:18,280 –> 00:48:22,120
Each with its own DLP policy, security groups and ALM pipelines.

976
00:48:22,120 –> 00:48:23,160
Production is invitation only.

977
00:48:23,160 –> 00:48:25,360
You don’t accidentally land there.

978
00:48:25,360 –> 00:48:28,440
Alongside that, restricted or regulated environments.

979
00:48:28,440 –> 00:48:32,080
Finance reg, PHI restricted, client sensitive.

980
00:48:32,080 –> 00:48:34,880
These are mapped explicitly to data classifications.

981
00:48:34,880 –> 00:48:36,520
Only certain connectors are allowed.

982
00:48:36,520 –> 00:48:38,120
Only certain roles exist.

983
00:48:38,120 –> 00:48:41,680
Every asset there is, by definition, in scope for audit.

984
00:48:41,680 –> 00:48:43,120
Environment creation is not a free for all.

985
00:48:43,120 –> 00:48:47,440
It’s a controlled operation run by the platform team, ideally automated with requests and approvals

986
00:48:47,440 –> 00:48:50,480
that capture purpose owner and expect a data class.

987
00:48:50,480 –> 00:48:51,680
That’s the steady state.

988
00:48:51,680 –> 00:48:53,320
How do you get there from where you are?

989
00:48:53,320 –> 00:48:55,560
You use a day, day 30, day 90 plan.

990
00:48:55,560 –> 00:48:56,560
Day is the freeze.

991
00:48:56,560 –> 00:48:57,560
You don’t fix everything.

992
00:48:57,560 –> 00:48:58,560
You stop it getting worse.

993
00:48:58,560 –> 00:49:02,480
You freeze ad hoc environment creation and switch it to admin only.

994
00:49:02,480 –> 00:49:06,560
You define at least roughly which existing environments are prod, which are dev test and

995
00:49:06,560 –> 00:49:08,120
which are unknown.

996
00:49:08,120 –> 00:49:12,360
You deploy a baseline tenant-wide DLP policy that blocks the worst consumer connectors in

997
00:49:12,360 –> 00:49:14,080
all but the default environment.

998
00:49:14,080 –> 00:49:15,840
You turn on audit logging where it’s off.

999
00:49:15,840 –> 00:49:19,080
You identify the top end production looking environments by usage.

1000
00:49:19,080 –> 00:49:20,480
The goal for day is simple.

1001
00:49:20,480 –> 00:49:21,720
Reduce the rate of new entropy.

1002
00:49:21,720 –> 00:49:22,880
Day 30 is structure.

1003
00:49:22,880 –> 00:49:24,880
You stand up or formalize the platform team.

1004
00:49:24,880 –> 00:49:29,440
You publish a first pass environment strategy and map existing environments into it.

1005
00:49:29,440 –> 00:49:34,120
You define and socialize the right C and the rule no owner is no app in prod.

1006
00:49:34,120 –> 00:49:38,720
You deploy at least one standard ALM pattern and apply it to net new high-criticality solutions.

1007
00:49:38,720 –> 00:49:41,160
You get the COE or equivalent telemetry running.

1008
00:49:41,160 –> 00:49:44,760
If it isn’t already, you don’t have all the answers by day 30 but you’ve drawn the map.

1009
00:49:44,760 –> 00:49:46,560
Day 90 is enforcement.

1010
00:49:46,560 –> 00:49:50,000
You start enforcing lifecycle management for production environments.

1011
00:49:50,000 –> 00:49:52,480
Review often assets, decommission or reassign.

1012
00:49:52,480 –> 00:49:56,960
You apply DLP policies per environment tier instead of one giant inconsistent blob.

1013
00:49:56,960 –> 00:50:01,200
You publish metrics, often flow percentage DLP violations environment growth.

1014
00:50:01,200 –> 00:50:02,920
You wire alerts to real people.

1015
00:50:02,920 –> 00:50:08,120
You also make your first firm decision on AI governance, which environments can use co-pilot.

1016
00:50:08,120 –> 00:50:12,520
What tagging, logging and review are mandatory for AI assisted assets.

1017
00:50:12,520 –> 00:50:15,520
How prompts are treated from a privacy perspective.

1018
00:50:15,520 –> 00:50:17,440
By day 90 you’re not done.

1019
00:50:17,440 –> 00:50:21,400
But you’ve moved from accidental behavior to an operating model.

1020
00:50:21,400 –> 00:50:23,760
You can stand in front of a CISO and defend.

1021
00:50:23,760 –> 00:50:26,360
And the rule that underpins all of it stays simple.

1022
00:50:26,360 –> 00:50:30,720
If the platform matters enough to worry about its security, it matters enough to have a platform

1023
00:50:30,720 –> 00:50:33,880
team running a real operating model.

1024
00:50:33,880 –> 00:50:37,400
Metrics that matter, turning governance into a measurable system.

1025
00:50:37,400 –> 00:50:39,440
At this point there’s a predictable objection.

1026
00:50:39,440 –> 00:50:43,800
Okay, platform team, environments, DLP, ownership, day 3090.

1027
00:50:43,800 –> 00:50:46,200
How do we know if any of this is actually working?

1028
00:50:46,200 –> 00:50:49,400
If you can’t answer that with numbers, you’re not running governance.

1029
00:50:49,400 –> 00:50:50,760
You’re running theatre.

1030
00:50:50,760 –> 00:50:53,400
Metrics without metrics is just well phrased intent.

1031
00:50:53,400 –> 00:50:57,160
So what does it mean to treat power platform governance as a measurable system?

1032
00:50:57,160 –> 00:50:59,880
If you remember one thing from this section, make it this.

1033
00:50:59,880 –> 00:51:01,520
Metrics only matter if they drive action.

1034
00:51:01,520 –> 00:51:03,120
It starts with one principle.

1035
00:51:03,120 –> 00:51:06,400
You cannot steer what you do not measure and you should not measure what you’re not prepared

1036
00:51:06,400 –> 00:51:07,400
to act on.

1037
00:51:07,400 –> 00:51:11,040
So the first job of the platform team is not to build pretty a dashboards.

1038
00:51:11,040 –> 00:51:15,280
It’s to define a small brutal set of metrics that connect directly to control.

1039
00:51:15,280 –> 00:51:16,520
Think of three categories.

1040
00:51:16,520 –> 00:51:18,640
Hygiene.risk.scale.

1041
00:51:18,640 –> 00:51:21,280
Hygiene metrics tell you whether the basics are under control.

1042
00:51:21,280 –> 00:51:23,760
The most important one is often assets.

1043
00:51:23,760 –> 00:51:26,920
Apps and flows in production environments with no valid business owner.

1044
00:51:26,920 –> 00:51:30,880
You measure it as a percentage of total production assets and you set a hard threshold.

1045
00:51:30,880 –> 00:51:35,960
For example, if more than 2% of production flows or apps are often remediation is mandatory.

1046
00:51:35,960 –> 00:51:38,680
Mandatory means three things actually happen.

1047
00:51:38,680 –> 00:51:40,600
Platform team initiates remediation.

1048
00:51:40,600 –> 00:51:44,480
They generate the list, open tickets and drive the process.

1049
00:51:44,480 –> 00:51:45,880
Business owner resolves.

1050
00:51:45,880 –> 00:51:50,920
They either accept ownership, nominate a new owner or approve decommissioning.

1051
00:51:50,920 –> 00:51:51,920
Security validates.

1052
00:51:51,920 –> 00:51:55,840
They confirm that anything decommissioned or reassigned doesn’t leave residual access or

1053
00:51:55,840 –> 00:51:56,840
data behind.

1054
00:51:56,840 –> 00:51:57,840
That chain matters.

1055
00:51:57,840 –> 00:52:02,560
Metrics without a clear who moves first, who closes, who checks, degrade into noise.

1056
00:52:02,560 –> 00:52:04,920
The second hygiene metric is DLP violations.

1057
00:52:04,920 –> 00:52:08,720
How many flows or apps attempt to use blocked connector combinations and how quickly are

1058
00:52:08,720 –> 00:52:09,720
those violations resolved?

1059
00:52:09,720 –> 00:52:11,200
You don’t just count violations.

1060
00:52:11,200 –> 00:52:12,480
You put an SLA on them.

1061
00:52:12,480 –> 00:52:15,680
For example, critical DLP violations in production.

1062
00:52:15,680 –> 00:52:20,960
Anything involving regulated data or high-risk connectors must be triaged within 4 hours

1063
00:52:20,960 –> 00:52:24,400
and either remediated or formally accepted within 24.

1064
00:52:24,400 –> 00:52:27,440
Again, with ownership, platform team detects and classifies.

1065
00:52:27,440 –> 00:52:31,000
Business owner decides whether the attempted pattern is legitimate.

1066
00:52:31,000 –> 00:52:34,440
Security approves or rejects the pattern and updates policy if needed.

1067
00:52:34,440 –> 00:52:35,440
Now risk metrics.

1068
00:52:35,440 –> 00:52:38,960
Here you care less about raw counts and more about ratios and trends.

1069
00:52:38,960 –> 00:52:42,120
One useful metric is adoption versus incident ratio.

1070
00:52:42,120 –> 00:52:46,160
For a given time period, how many net new production apps and flows went live and how many governance

1071
00:52:46,160 –> 00:52:47,800
incidents occurred?

1072
00:52:47,800 –> 00:52:51,640
Incidents meaning unauthorized data movement access escalation audit findings tied to power

1073
00:52:51,640 –> 00:52:54,640
platform or material outages from low-code assets.

1074
00:52:54,640 –> 00:53:00,200
If your ratio is say 200 new production solutions and one minor incident per quarter, that’s

1075
00:53:00,200 –> 00:53:01,200
one story.

1076
00:53:01,200 –> 00:53:04,760
If it’s 50 solutions and five significant incidents, that’s another.

1077
00:53:04,760 –> 00:53:09,440
You’re measuring not just how much you build but how safely you’re operating at that speed.

1078
00:53:09,440 –> 00:53:11,920
Another risk metric is environment growth rate.

1079
00:53:11,920 –> 00:53:17,160
How many environments do you have by tier, personal departmental enterprise regulated and how fast

1080
00:53:17,160 –> 00:53:18,640
is that number changing?

1081
00:53:18,640 –> 00:53:22,360
You might set a guardrail like net growth in production and regulated environments should

1082
00:53:22,360 –> 00:53:25,200
not exceed 10% per quarter without review.

1083
00:53:25,200 –> 00:53:30,040
Above that, the platform team and security sit down and ask, are we seeing environment proliferation

1084
00:53:30,040 –> 00:53:31,960
as a proxy for missing patterns?

1085
00:53:31,960 –> 00:53:34,720
Again, the metric is only useful if it triggers action.

1086
00:53:34,720 –> 00:53:38,920
A growth spike might mean you need new standardized environment types or that a particular

1087
00:53:38,920 –> 00:53:42,560
business unit is treating environments as disposable sandboxes.

1088
00:53:42,560 –> 00:53:44,560
Finally, scale metrics.

1089
00:53:44,560 –> 00:53:48,680
You want to understand where citizen development is actually happening and whether it’s distributed

1090
00:53:48,680 –> 00:53:49,680
in the same way.

1091
00:53:49,680 –> 00:53:54,280
The COE dashboards can show you makers by business unit, asset counts by environment and usage

1092
00:53:54,280 –> 00:53:55,280
by app.

1093
00:53:55,280 –> 00:53:58,720
You can convert that into something actionable, percentage of business units with at least

1094
00:53:58,720 –> 00:54:03,200
one active maker, top 10 environments by usage and their own equality.

1095
00:54:03,200 –> 00:54:04,960
Distribution of makers versus apps.

1096
00:54:04,960 –> 00:54:09,360
Do you have a healthy maker community or a handful of heroes carrying everything?

1097
00:54:09,360 –> 00:54:12,920
You combine those with your hygiene and risk metrics to decide where to invest in ablment

1098
00:54:12,920 –> 00:54:14,680
versus where to tighten controls.

1099
00:54:14,680 –> 00:54:17,240
All of this is easily built with existing tools.

1100
00:54:17,240 –> 00:54:20,440
The COE starter kit already collects most of the raw data.

1101
00:54:20,440 –> 00:54:24,680
You can build power BI reports that show inventory by environment, risk heat maps across

1102
00:54:24,680 –> 00:54:29,120
sensitivity, owner quality and usage and trend lines over time.

1103
00:54:29,120 –> 00:54:30,520
The trick is restrained.

1104
00:54:30,520 –> 00:54:31,960
You do not need 40 metrics.

1105
00:54:31,960 –> 00:54:36,160
You need a short list that an executive can understand on one slide and that your platform

1106
00:54:36,160 –> 00:54:37,840
team can drive every week.

1107
00:54:37,840 –> 00:54:43,440
For example, a minimal governance scorecard might be “offent production assets” – 1, 2%,

1108
00:54:43,440 –> 00:54:45,560
target, 2%.

1109
00:54:45,560 –> 00:54:50,440
Critical DLP violations resolved within 24 hours – 96% target, 100%.

1110
00:54:50,440 –> 00:54:55,560
Net production regulated environment growth – 7% target, intuous and 10% – adoption versus

1111
00:54:55,560 –> 00:55:00,160
incident ratio – 150.1, target, 1, 101.

1112
00:55:00,160 –> 00:55:04,920
Business units with active makers – 80%, target, and 70%.

1113
00:55:04,920 –> 00:55:08,880
Each of those has a named owner and a defined next step when it drifts.

1114
00:55:08,880 –> 00:55:13,720
When the offent percentage crosses 2%, platform opens remediation, business resolves, security

1115
00:55:13,720 –> 00:55:14,720
validates.

1116
00:55:14,720 –> 00:55:19,680
When DLP-SLA drops, platform reviews the patterns, business justifies or retires, security

1117
00:55:19,680 –> 00:55:21,880
titans or just policy.

1118
00:55:21,880 –> 00:55:26,720
When environment growth spikes platform freezes new creation in that tier until they understand

1119
00:55:26,720 –> 00:55:27,720
the driver.

1120
00:55:27,720 –> 00:55:30,280
This means to turn governance into a measurable system.

1121
00:55:30,280 –> 00:55:33,760
You’re no longer arguing about whether you feel in control of power platform.

1122
00:55:33,760 –> 00:55:37,960
You can point to a small set of numbers, that track hygiene, risk and scale, and to the

1123
00:55:37,960 –> 00:55:41,160
routines that move those numbers in the right direction.

1124
00:55:41,160 –> 00:55:44,520
And once you have that, you can finally have the same conversation about zero trust in

1125
00:55:44,520 –> 00:55:48,400
low-code because you’re no longer guessing how the system behaves, you’re measuring

1126
00:55:48,400 –> 00:55:49,720
how it drifts.

1127
00:55:49,720 –> 00:55:53,000
Zero trust meets low-code, designing for conditional chaos.

1128
00:55:53,000 –> 00:55:56,160
Zero trust gets thrown around so much it’s almost background noise.

1129
00:55:56,160 –> 00:55:57,160
Verify explicitly.

1130
00:55:57,160 –> 00:55:58,440
Use least privilege.

1131
00:55:58,440 –> 00:55:59,920
Assume breach.

1132
00:55:59,920 –> 00:56:00,920
Pause here.

1133
00:56:00,920 –> 00:56:04,880
This is where most zero trust slideware falls apart when it hits a low-code platform.

1134
00:56:04,880 –> 00:56:09,880
The problem is that most zero trust conversations are about network edges and classic applications,

1135
00:56:09,880 –> 00:56:14,640
not about a distributed citizen-driven, low-code platform that can change shape every day.

1136
00:56:14,640 –> 00:56:15,800
Power platform is exactly that.

1137
00:56:15,800 –> 00:56:20,360
A distributed decision engine that keeps evolving, which means if you don’t design for zero

1138
00:56:20,360 –> 00:56:21,960
trust here, you don’t have it anywhere.

1139
00:56:21,960 –> 00:56:25,680
So let’s translate those three principles into the reality of apps, flows, environments

1140
00:56:25,680 –> 00:56:26,960
and connectors.

1141
00:56:26,960 –> 00:56:29,680
And into the conditional chaos we talked about earlier.

1142
00:56:29,680 –> 00:56:32,760
Start with verify explicitly.

1143
00:56:32,760 –> 00:56:35,160
In the power platform world, that means two things.

1144
00:56:35,160 –> 00:56:36,960
Entra conditional access and environment routing.

1145
00:56:36,960 –> 00:56:40,880
And you’re not just deciding whether a user can sign in, you’re deciding from where, on

1146
00:56:40,880 –> 00:56:44,720
what, into which environment and with what blast radius.

1147
00:56:44,720 –> 00:56:46,480
So you establish clear patterns.

1148
00:56:46,480 –> 00:56:50,400
Personal productivity lives in the default or personal dev environments behind stricter

1149
00:56:50,400 –> 00:56:53,680
DLP and with no access to regulated data.

1150
00:56:53,680 –> 00:56:58,440
And enterprise apps live in named dev test, prod environments, each backed by

1151
00:56:58,440 –> 00:56:59,800
andro security groups.

1152
00:56:59,800 –> 00:57:03,800
Regulated workloads live only in restricted environments where access requires compliant

1153
00:57:03,800 –> 00:57:07,920
devices, strong MFA and maybe even network location controls.

1154
00:57:07,920 –> 00:57:11,440
Environment routing and groups turn that into a deterministic pattern instead of an honor

1155
00:57:11,440 –> 00:57:12,440
system.

1156
00:57:12,440 –> 00:57:15,280
When a maker shows up, they don’t land in the global sandbox.

1157
00:57:15,280 –> 00:57:17,520
They land where their persona says they belong.

1158
00:57:17,520 –> 00:57:20,000
Then use least privilege.

1159
00:57:20,000 –> 00:57:24,320
In low code, least privilege is less about individual tables and more about patterns.

1160
00:57:24,320 –> 00:57:28,960
You avoid maker as owner of everything designs where the same human account owns the

1161
00:57:28,960 –> 00:57:33,280
dataverse environment, the apps, the flows, the custom connectors and the azure bits.

1162
00:57:33,280 –> 00:57:36,880
You push ownership to service principles and managed identities where appropriate.

1163
00:57:36,880 –> 00:57:41,000
You design dataverse roles per persona instead of everyone gets basic user plus a few

1164
00:57:41,000 –> 00:57:42,120
random grounds.

1165
00:57:42,120 –> 00:57:45,120
You also implement least privilege at the connector level.

1166
00:57:45,120 –> 00:57:48,720
That means standard DLP sets like a core business set.

1167
00:57:48,720 –> 00:57:52,520
Serververse, SharePoint, Exchange, First Party, Line of Business APIs.

1168
00:57:52,520 –> 00:57:54,000
A collaboration set.

1169
00:57:54,000 –> 00:57:57,480
Teams, planner, certain external SaaS apps that have been risk assessed.

1170
00:57:57,480 –> 00:58:01,520
A high-risk set, consumer email, personal storage, generic HDDP.

1171
00:58:01,520 –> 00:58:04,640
You don’t let a single app or flow span all three sets.

1172
00:58:04,640 –> 00:58:09,000
If a solution truly needs to bridge them, it becomes an exception with explicit review.

1173
00:58:09,000 –> 00:58:10,000
Not a default.

1174
00:58:10,000 –> 00:58:11,480
Now the uncomfortable one.

1175
00:58:11,480 –> 00:58:12,480
Assume breach.

1176
00:58:12,480 –> 00:58:14,160
Assume a connector is compromised.

1177
00:58:14,160 –> 00:58:16,120
Assume a maker account is fished.

1178
00:58:16,120 –> 00:58:17,600
Assume flow is misconfigured.

1179
00:58:17,600 –> 00:58:18,600
What happens?

1180
00:58:18,600 –> 00:58:20,600
Zero trust-aware power platform design.

1181
00:58:20,600 –> 00:58:22,680
DLP is not just a compliance box.

1182
00:58:22,680 –> 00:58:24,360
It’s your containment boundary.

1183
00:58:24,360 –> 00:58:28,920
If a compromised maker account can only build in a departmental dev environment with no

1184
00:58:28,920 –> 00:58:32,840
access to finance or PHI connectors, your blast radius is small.

1185
00:58:32,840 –> 00:58:36,200
If the only place that talks to external SaaS is a dedicated integration environment with

1186
00:58:36,200 –> 00:58:40,080
tightly-scoped service principles, you’ve limited exfiltration paths.

1187
00:58:40,080 –> 00:58:42,720
Audit logging and monitoring become your forensic backbone.

1188
00:58:42,720 –> 00:58:46,840
You make sure every regulated environment has dataverse auditing turned on for key tables

1189
00:58:46,840 –> 00:58:48,000
and fields.

1190
00:58:48,000 –> 00:58:52,080
You root power apps and power automate events into purview or your CM.

1191
00:58:52,080 –> 00:58:56,120
You use the COE telemetry not just for adoption metrics but for anomaly detection.

1192
00:58:56,120 –> 00:58:58,080
Sudden spikes in connector usage.

1193
00:58:58,080 –> 00:59:01,720
Flow is calling unusual endpoints, new environments with strange naming.

1194
00:59:01,720 –> 00:59:04,200
And here’s where conditional chaos comes back.

1195
00:59:04,200 –> 00:59:08,080
Zero trust collapses if your patents are opaque, bespoke and constantly changing.

1196
00:59:08,080 –> 00:59:11,800
Too many one-off conditional access rules, too many custom security roles, too many special

1197
00:59:11,800 –> 00:59:15,640
environments, and you’ve built a system no human can reason about.

1198
00:59:15,640 –> 00:59:18,640
So the real zero trust move in low code is simplification.

1199
00:59:18,640 –> 00:59:20,240
Fewer clearer environment types.

1200
00:59:20,240 –> 00:59:22,240
Fewer standardized DLP sets.

1201
00:59:22,240 –> 00:59:24,720
Fewer well-defined role bundles and make up personas.

1202
00:59:24,720 –> 00:59:27,120
You trade some flexibility for predictability.

1203
00:59:27,120 –> 00:59:31,680
That might mean you say no to yet another special environment and instead refine an existing

1204
00:59:31,680 –> 00:59:32,680
pattern.

1205
00:59:32,680 –> 00:59:36,240
It might mean you collapse a sprawl of subtly different roles into three or four well-designed

1206
00:59:36,240 –> 00:59:37,240
ones.

1207
00:59:37,240 –> 00:59:41,320
It might mean you route all regulated workloads through a small number of heavily instrumented

1208
00:59:41,320 –> 00:59:45,160
managed environments instead of sprinkling sensitivity everywhere.

1209
00:59:45,160 –> 00:59:48,040
This is designed philosophy, not configuration trivia.

1210
00:59:48,040 –> 00:59:51,120
You’re not trying to memorize every toggle in the admin center.

1211
00:59:51,120 –> 00:59:54,560
You’re trying to enforce a small number of architectural truths.

1212
00:59:54,560 –> 00:59:57,320
Identities are verified and segmented by persona.

1213
00:59:57,320 –> 00:59:59,480
Data parts are controlled by environment and DLP.

1214
00:59:59,480 –> 01:00:02,200
Blast radius is limited by design, not by luck.

1215
01:00:02,200 –> 01:00:06,200
Behavior is observable enough that when, not if something odd happens, you can see it

1216
01:00:06,200 –> 01:00:07,440
and respond.

1217
01:00:07,440 –> 01:00:11,320
Once you understand that, adding co-pilot and AI into the mix stops being magic and

1218
01:00:11,320 –> 01:00:15,640
starts being just another category of identity and data flow you have to constrain.

1219
01:00:15,640 –> 01:00:20,640
And that’s the point you need to reach before you start treating AI as just more productivity

1220
01:00:20,640 –> 01:00:23,040
on top of conditional chaos.

1221
01:00:23,040 –> 01:00:25,760
Co-pilot AI and the next wave of governance pressure.

1222
01:00:25,760 –> 01:00:29,280
Everything we’ve talked about so far was already true before AI showed up in Power Platform.

1223
01:00:29,280 –> 01:00:31,240
Co-pilot doesn’t change the laws of this system.

1224
01:00:31,240 –> 01:00:34,400
It just removes the friction that was slowing those laws down.

1225
01:00:34,400 –> 01:00:37,640
So you have to start with a simple, slightly brutal assumption.

1226
01:00:37,640 –> 01:00:39,760
Whatever your governance posture is today.

1227
01:00:39,760 –> 01:00:42,400
Data-based and agentic AI will accelerate it.

1228
01:00:42,400 –> 01:00:46,960
If your control plane is clear, measured and enforced, co-pilot accelerates value.

1229
01:00:46,960 –> 01:00:51,440
If your control plane is opaque, ad hoc and full of entropy generators, co-pilot accelerates

1230
01:00:51,440 –> 01:00:56,480
failure, architecturally co-pilot adds three new pressures, first, asset creation speed.

1231
01:00:56,480 –> 01:01:00,960
Makers no longer have to understand every nuance of power effects or dataverse schema design.

1232
01:01:00,960 –> 01:01:05,040
They can say, “Build me a case management app with these fields and co-pilot scaffold something

1233
01:01:05,040 –> 01:01:10,120
workable.” They can say, “Generator flow that notifies me when X happens and the platform

1234
01:01:10,120 –> 01:01:14,600
fills in the steps.” That means the rate at which new apps and flows appear in your tenant

1235
01:01:14,600 –> 01:01:17,400
increases even if the number of human makers doesn’t.

1236
01:01:17,400 –> 01:01:21,520
The traditional signals you relied on, who’s in the maker community, who’s requesting

1237
01:01:21,520 –> 01:01:26,320
environments, become lagging indicators, second, opaque intent.

1238
01:01:26,320 –> 01:01:30,680
With human build solutions, however messy you can at least ask the maker what they intended.

1239
01:01:30,680 –> 01:01:34,800
With AI assisted solutions, the intent is split across a human prompt and an AI models

1240
01:01:34,800 –> 01:01:35,800
interpretation.

1241
01:01:35,800 –> 01:01:39,720
If you don’t log prompts, if you don’t tag AI generated assets, if you don’t capture

1242
01:01:39,720 –> 01:01:44,240
which co-pilots were used where, you lose the ability to reason about why a given app or

1243
01:01:44,240 –> 01:01:46,600
flow exists and what it was meant to do.

1244
01:01:46,600 –> 01:01:48,480
Third, blended authorship.

1245
01:01:48,480 –> 01:01:53,680
In most enterprises you will not have pure AI solutions or pure human solutions.

1246
01:01:53,680 –> 01:01:54,680
You will have hybrids.

1247
01:01:54,680 –> 01:01:57,200
A human starts something, co-pilot suggests formulas.

1248
01:01:57,200 –> 01:01:58,600
The human tweaks them.

1249
01:01:58,600 –> 01:02:00,880
Another co-pilot refactors a flow later.

1250
01:02:00,880 –> 01:02:03,960
Over time the boundary between human and AI authorship blurs.

1251
01:02:03,960 –> 01:02:07,560
That’s why treating AI as a novelty feature is dangerous.

1252
01:02:07,560 –> 01:02:11,800
Governance has to treat AI as a new category of identity and behavior in the system.

1253
01:02:11,800 –> 01:02:15,080
So what does a sane co-pilot governance stance look like?

1254
01:02:15,080 –> 01:02:16,360
First, default restrict.

1255
01:02:16,360 –> 01:02:18,000
Don’t default allow.

1256
01:02:18,000 –> 01:02:21,920
Co-pilot capabilities in power apps, power automate and co-pilot studio should be enabled

1257
01:02:21,920 –> 01:02:24,960
first in a small set of well understood environments.

1258
01:02:24,960 –> 01:02:28,960
Ideally non-regulated, dev test tiers with good telemetry.

1259
01:02:28,960 –> 01:02:33,080
You do not start by sprinkling AI across every environment where you already struggle to

1260
01:02:33,080 –> 01:02:34,080
see what’s happening.

1261
01:02:34,080 –> 01:02:36,480
Second, mandatory tagging and logging.

1262
01:02:36,480 –> 01:02:39,160
Every AI assisted asset needs to declare itself.

1263
01:02:39,160 –> 01:02:43,160
That can be as simple as a solution level flag or a naming convention that’s enforced by

1264
01:02:43,160 –> 01:02:45,680
the platform team, but it must exist.

1265
01:02:45,680 –> 01:02:49,440
You should be able to answer from the admin center or your COE dashboards, which apps,

1266
01:02:49,440 –> 01:02:53,280
flows and agents were created or significantly modified with co-pilot.

1267
01:02:53,280 –> 01:02:54,800
In which environments do they live?

1268
01:02:54,800 –> 01:02:56,600
Who is the accountable business owner for each?

1269
01:02:56,600 –> 01:02:59,560
On top of that, prompt logging becomes part of your forensic toolkit.

1270
01:02:59,560 –> 01:03:02,000
No, you don’t need to hold every prompt forever.

1271
01:03:02,000 –> 01:03:06,280
And for regulated workloads, you do need an audit trail that shows what kinds of instructions

1272
01:03:06,280 –> 01:03:09,080
were given to AI when building or operating a solution.

1273
01:03:09,080 –> 01:03:10,840
That’s not about spying on makers.

1274
01:03:10,840 –> 01:03:14,400
It’s about being able to explain behavior after the fact.

1275
01:03:14,400 –> 01:03:18,240
Third, AI-specific DLP and connector rules.

1276
01:03:18,240 –> 01:03:22,520
Co-pilot is just another client of your data, but it’s a client that can connect things

1277
01:03:22,520 –> 01:03:24,120
humans wouldn’t think to connect.

1278
01:03:24,120 –> 01:03:28,080
You need to be explicit about where AI can read from and where it can write to.

1279
01:03:28,080 –> 01:03:31,880
For example, co-pilot can read from internal knowledge bases, approved

1280
01:03:31,880 –> 01:03:35,720
SharePoint sites and data verse tables tagged as internal.

1281
01:03:35,720 –> 01:03:40,200
Co-pilot cannot read directly from PHI or high sensitivity financial data without going

1282
01:03:40,200 –> 01:03:43,640
through a controlled agent in a restricted environment.

1283
01:03:43,640 –> 01:03:48,280
Co-pilot cannot write to external mailboxes, consumer storage or public facing lists

1284
01:03:48,280 –> 01:03:50,080
without a human in the loop review.

1285
01:03:50,080 –> 01:03:51,400
Those aren’t product checkboxes.

1286
01:03:51,400 –> 01:03:53,800
They’re DLP patterns and environment choices.

1287
01:03:53,800 –> 01:03:56,480
Finally, treat AI agents as non-human identities.

1288
01:03:56,480 –> 01:04:00,880
From an Entra and Power Platform perspective, an agent is just another principle-making

1289
01:04:00,880 –> 01:04:02,720
decisions and calling APIs.

1290
01:04:02,720 –> 01:04:07,080
So you give it the same rigor you would a service principle, least privilege access, clear

1291
01:04:07,080 –> 01:04:11,760
scoping to specific environments and data classes, auditable activity trails, explicit

1292
01:04:11,760 –> 01:04:14,400
life cycle, how it’s created, reviewed, retired.

1293
01:04:14,400 –> 01:04:18,120
If you’re not doing that, you’re effectively giving root access to an opaque piece of logic

1294
01:04:18,120 –> 01:04:21,840
that can act faster than any human and hide inside normal traffic.

1295
01:04:21,840 –> 01:04:25,040
And keep this sentence in mind when the AI hype gets loud.

1296
01:04:25,040 –> 01:04:27,760
Most co-pilot failures will not look like AI failures.

1297
01:04:27,760 –> 01:04:30,760
They will look like ordinary governance failures or just faster.

1298
01:04:30,760 –> 01:04:35,840
The wrong environment, the wrong connectors, no owner, no life cycle, no metrics.

1299
01:04:35,840 –> 01:04:38,880
Co-pilot just gets you to the failure state in days instead of months.

1300
01:04:38,880 –> 01:04:43,200
So if your low-code governance framework cannot handle humans, it will not handle agents.

1301
01:04:43,200 –> 01:04:48,040
Fix the framework first, then let AI amplify something you’re willing to scale.

1302
01:04:48,040 –> 01:04:49,720
The blunt answer and the real risk.

1303
01:04:49,720 –> 01:04:51,040
So here’s the blunt answer.

1304
01:04:51,040 –> 01:04:54,480
Yes, Microsoft Power Platform is secure enough for serious enterprise use.

1305
01:04:54,480 –> 01:04:57,400
The real risk lives in your governance, not in the platform.

1306
01:04:57,400 –> 01:04:59,160
The Power Platform doesn’t create risk.

1307
01:04:59,160 –> 01:05:02,360
It reveals whether your enterprise is governable at speed.

1308
01:05:02,360 –> 01:05:07,120
If you want that answer to be yes, treat Power Platform as a product with a platform team,

1309
01:05:07,120 –> 01:05:11,600
implement a 90-day governance plan, wire in metrics, and stop enabling co-pilot in production

1310
01:05:11,600 –> 01:05:14,320
without clear environments, DLP, ownership and review.





Source link

0 Votes: 0 Upvotes, 0 Downvotes (0 Points)

Leave a reply

Join Us
  • X Network2.1K
  • LinkedIn3.8k
  • Bluesky0.5K
Support The Site
Events
December 2025
MTWTFSS
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31     
« Nov   Jan »
Follow
Search
Popular Now
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...

Discover more from 365 Community Online

Subscribe now to keep reading and get access to the full archive.

Continue reading