M7. MCP authorization (OAuth code flow)
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- azure, csharp
- Ambito
- authentication, authorization, cli, security
Direzione di ricerca
Inizia da docs/mcp.md e docs/agentic-roadmap.md, in particolare dall'elemento M7 della roadmap, quindi traccia il trasporto HTTP e il percorso esistente delle credenziali Entra/RBAC. Il lavoro è completato quando le richieste remote non autenticate vengono rifiutate, l'autorizzazione tramite bearer token funziona, l'identità raggiunge le credenziali Cosmos/ARM, l'assenza di autenticazione su localhost rimane controllata da un flag e il threat model e la documentazione vengono aggiornati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Why
Today the MCP server relies solely on origin-header validation and localhost binding — safe for a single-user local machine, but there is no authorization layer. Any remote, hosted, or shared agent deployment (team agent, CI runner, cloud-hosted assistant) currently has no supported way to authenticate a caller. The MCP spec defines an OAuth 2.1 authorization-code flow for exactly this; adopting it unlocks hosted/agentic scenarios without falling back to master keys.
This is the natural companion to confirmation/elicitation (item M3): authorization answers "who is allowed to call," M3 answers "what may they do."
Proposed behavior
- Implement the MCP authorization-code flow for the HTTP transport: advertise the authorization server, validate bearer tokens on each request, and map the authenticated identity onto the shell's existing Entra/RBAC connection so tool calls run with least-privilege, per-caller credentials rather than a shared session.
- Keep localhost/no-auth as an explicit opt-in for the current single-user experience.
Acceptance criteria
- Unauthenticated remote requests are rejected.
- A client can complete the authorization-code flow and call tools with a bearer token.
- Identity flows to the Cosmos/ARM credential.
- Localhost no-auth mode preserved behind a flag.
- Threat model +
docs/mcp.mdupdated.
Filed from the Agentic & Automation Roadmap (docs/agentic-roadmap.md), item M7, Wave 2. Priority P1.
- Lingua principale
- C#
- Stelle
- 3
- Fork
- 7
- Merge medio
- 1g 7h
- PR unite (30g)
- 19
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Azure/CosmosDBShell
-
Valid vector, ranking, and DISTINCT queries fail when reading unsupported continuation tokens Apertabug P1
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
Azure/CosmosDBShell#219 ·
-
bug P0
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
Azure/CosmosDBShell#218 ·
-
automation P1
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
Azure/CosmosDBShell#178 · 1 commento ·
-
automation P1
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
Azure/CosmosDBShell#175 · 1 commento ·
-
agentic enhancement P0
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
Azure/CosmosDBShell#153 · 1 commento ·
Tutte le issue di Azure/CosmosDBShell
Issue simili
-
untriaged
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
dotnet/dotnet-api-docs#13095 ·
-
area-deployment area-integrations triage:bot-seen
Difficoltà 2/5 Mezza giornata Idoneità per principianti 86/100
-
type/automation type/tech-debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
newrelic/newrelic-dotnet-agent#3850 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
LuckyPennySoftware/AutoMapper#4660 ·