Add documentation for Managed Identity v2 Hackathon#885
Add documentation for Managed Identity v2 Hackathon#885
Conversation
Document the results and outcomes of the Managed Identity v2 Multi-Language Implementation Hackathon, highlighting the achievements and deliverables.
There was a problem hiding this comment.
Pull request overview
This PR adds a comprehensive documentation file under spikes/prototype/ describing the results and deliverables of a Managed Identity v2 Multi-Language Implementation Hackathon. The document covers the creation of PowerShell and Python implementations of MSI v2 with mTLS Proof-of-Possession token support, with the Python package published on PyPI as msal-msiv2==1.35.0rc3.
Changes:
- Adds a 458-line Markdown document (
2026_MS_SecurityHackathon_MSIV2.md) documenting the hackathon objectives, deliverables, architecture diagrams, security properties, testing results, and learnings. - Documents both PowerShell (in the dotnet MSAL repo) and Python implementations, including API examples, pipeline integration details, and comparison tables.
- Includes Mermaid diagrams for the MSI v2 flow and end-to-end sequence.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| ## Impact & Results | ||
|
|
||
| - **~2,250 lines** of production-ready Python code generated across **8 files** |
There was a problem hiding this comment.
Inconsistent line count: line 95 says "≈2,420 lines added" (which matches the per-file totals in the table: 1,595+182+46+175+56+321+45 = 2,420), but this line says "~2,250 lines." Please reconcile these two figures to avoid confusion.
| - **~2,250 lines** of production-ready Python code generated across **8 files** | |
| - **≈2,420 lines** of production-ready Python code generated across **8 files** |
| **8 New Files (≈2,420 lines added)** | ||
|
|
||
| | File | Lines | Purpose | | ||
| |------|------:|---------| | ||
| | `msal/msi_v2.py` | 1,595 | End-to-end Windows MSI v2 flow: NCrypt → CSR → IMDS → mTLS | | ||
| | `msal/msi_v2_attestation.py` | 182 | ctypes bindings to AttestationClientLib.dll for KeyGuard attestation | | ||
| | `msal/managed_identity.py` | 46 | Core integration + `MsiV2Error` exception | | ||
| | `sample/msi_v2_sample.py` | 175 | Full E2E sample with logging and endpoint calls | | ||
| | `run_msi_v2_once.py` | 56 | Minimal one-shot MSI v2 example | | ||
| | `tests/test_msi_v2.py` | 321 | Unit tests (thumbprint, binding, gating behavior) | | ||
| | `msi-v2-sample.spec` | 45 | PyInstaller spec for standalone executable | | ||
| | `msal/__init__.py` | — | Exports `MsiV2Error` | |
There was a problem hiding this comment.
The table header says "8 New Files" but msal/managed_identity.py already exists in this repository (689 lines). Similarly, msal/__init__.py also already exists. The 46 lines listed likely refer to lines added or modified, not a new file. Consider clarifying the header (e.g., "8 Files Added or Modified") and updating the "Lines" column description to indicate whether these are total lines or lines changed.
Document the results and outcomes of the Managed Identity v2 Multi-Language Implementation Hackathon, highlighting the achievements and deliverables.