<?xml version="1.0" encoding="UTF-8" ?> <?xml-stylesheet type="text/xsl" href="rss.xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel> <title>Ketan Kamble</title><description>Microsoft Modern Workspace, in the open — Intune, Entra, Graph, and how it actually works underneath the portal.</description><link>https://ketankamble.com/</link><atom:link href="https://ketankamble.com/feed_rss_created.xml" rel="self" type="application/rss+xml" /> <managingEditor>Ketan Kamble</managingEditor><docs>https://github.com/KetanKamble3894/zero-access-agent</docs><language>en</language> <pubDate>Wed, 29 Jul 2026 21:03:45 -0000</pubDate> <lastBuildDate>Wed, 29 Jul 2026 21:03:45 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.19.0</generator> <image> <url>None</url> <title>Ketan Kamble</title> <link>https://ketankamble.com/</link> </image> <item> <title>How Intune actually decides a device is compliant</title> <category>Defender / Security</category> <category>Entra ID</category> <category>How it works</category> <category>Intune</category> <description>&lt;h1&gt;How Intune actually decides a device is compliant&lt;/h1&gt; &lt;p&gt;When you switch on a compliance policy, the portal eventually shows a green check. But what happens &lt;em&gt;between&lt;/em&gt; &#34;device enrolled&#34; and &#34;Conditional Access lets it in&#34;? The answer isn&#39;t a live query — it&#39;s a check-in loop, an expiry clock, and a handoff to Entra ID.&lt;/p&gt;</description> <link>https://ketankamble.com/blog/how-intune-actually-decides-a-device-is-compliant/</link> <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate> <source url="https://ketankamble.com/feed_rss_created.xml">Ketan Kamble</source><guid isPermaLink="true">https://ketankamble.com/blog/how-intune-actually-decides-a-device-is-compliant/</guid> </item> <item> <title>An endpoint report from read-only snapshots</title> <category>How-to</category> <category>Intune</category> <category>Power BI</category> <description>&lt;h1&gt;An endpoint report from read-only snapshots&lt;/h1&gt; &lt;p&gt;You don&#39;t need a live tenant connection to build a useful Power BI report. Point it at a sanitized CSV a read-only job already wrote, and the whole report stays containable — here&#39;s the wiring, end to end.&lt;/p&gt;</description> <link>https://ketankamble.com/blog/an-endpoint-report-from-read-only-snapshots/</link> <pubDate>Fri, 24 Jul 2026 00:00:00 +0000</pubDate> <source url="https://ketankamble.com/feed_rss_created.xml">Ketan Kamble</source><guid isPermaLink="true">https://ketankamble.com/blog/an-endpoint-report-from-read-only-snapshots/</guid> </item> <item> <title>The Graph call behind the portal click</title> <category>Behind the portal</category> <category>Intune</category> <category>Microsoft Graph</category> <description>&lt;h1&gt;The Graph call behind the portal click&lt;/h1&gt; &lt;p&gt;Every click in the Intune and Entra portals fires a Microsoft Graph call underneath — and once you can see it, the portal stops being magic. This series decodes what the portal actually sends, and which permission each call needs.&lt;/p&gt;</description> <link>https://ketankamble.com/blog/the-graph-call-behind-the-portal-click/</link> <pubDate>Wed, 22 Jul 2026 00:00:00 +0000</pubDate> <source url="https://ketankamble.com/feed_rss_created.xml">Ketan Kamble</source><guid isPermaLink="true">https://ketankamble.com/blog/the-graph-call-behind-the-portal-click/</guid> </item> <item> <title>The Sites.Selected 403 that started it all</title> <category>Entra ID</category> <category>Microsoft Graph</category> <category>Zero-Access</category> <description>&lt;h1&gt;The Sites.Selected 403 that started it all&lt;/h1&gt; &lt;p&gt;It began with a permission error that wouldn&#39;t quit. Sites.Selected looked right, the role assignment looked right — and Graph still returned 403. Chasing &lt;em&gt;why&lt;/em&gt; led somewhere better than a fix: an architecture where the AI never touches a live system at all.&lt;/p&gt;</description> <link>https://ketankamble.com/blog/the-sitesselected-403-that-started-it-all/</link> <pubDate>Mon, 20 Jul 2026 00:00:00 +0000</pubDate> <source url="https://ketankamble.com/feed_rss_created.xml">Ketan Kamble</source><guid isPermaLink="true">https://ketankamble.com/blog/the-sitesselected-403-that-started-it-all/</guid> </item> </channel> </rss>