Azure-Samples / Azure-Samples/MipSDK-File-Cpp-Basic

Would a Python MIP File SDK sample ("MipSDK-File-Python-Basic") be of interest?

Open
#16 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
5
Forks
11
PR merge metrics
No merged PRs in 30d

Description

Hi,

I've been working with this sample (and the C++ MIP File SDK directly) to build a small decrypt-verification tool, and noticed that across the `Azure-Samples` org there are C++, .NET/C#, and Java samples for the MIP File/Policy/Protection APIs, but no Python one:

- MipSDK-File-Cpp-Basic (this repo)
- MipSDK-Policy-Cpp-Sample
- mipsdk-protectionapi-cpp-sample-basic
- MipSDK-File-Dotnet(-Quickstart/-Onbehalfof/-ServicePrincipalAuth)
- MipSDK-Protection-Dotnet-Quickstart
- MipSDK-Policy-Dotnet-Quickstart
- MipSDK-File-Java-Basic

Since the MIP SDK itself only ships C++/.NET/Java bindings (no native Python), anyone wanting to call it from Python today has to hand-roll their own thin wrapper around the C++ SDK (auth delegate, profile/engine/handler setup, etc.) — there's nothing to reference. I ended up writing one myself (client-credentials auth delegate + file handler wrapper, following the same patterns as this repo's `action.cpp`) to test decrypting a protected file.

Would the team be interested in a community-contributed "MipSDK-File-Python-Basic" sample (e.g. a small C++ extension module or a CLI wrapper following this repo's structure, adapted for client-credentials/app-only auth as well as the interactive flow already shown here)? Happy to put together a PR if there's interest, or if there's already a reason Python bindings aren't offered (beyond just demand), I'd be curious to hear it.

Thanks!

Contributor guide

Open the contributing guide

Research direction

Start by reading action.cpp and the existing C++ sample structure, then compare the listed C++, .NET/C#, and Java MIP File/Policy/Protection samples. The issue proposes either a C++ extension module or CLI wrapper, with client-credentials and interactive authentication; done would require a settled approach and a complete Python-oriented sample.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.