Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Securing MCP Servers: Role-Based Tool Access with OAuth 2.0 and Azure Entra ID

Автор: Code & Cloud

Загружено: 2026-01-25

Просмотров: 45

Описание:

Learn how to add enterprise-grade security to your Model Context Protocol (MCP) servers in this step-by-step tutorial. We'll implement OAuth 2.0 authentication and role-based authorization to control access to specific tools, allowing you to have both public and secure tools within the same server.

🔒 What You'll Learn:

How to secure MCP server tools using Azure Entra ID (formerly Azure AD).

The difference between public tools and secure, role-protected tools.

How to set up two App Registrations in Entra ID: a server app and a client app.

How to define custom app roles for authorization.

How to configure your .NET MCP server with JWT Bearer authentication and authorization policies.

How to generate and validate OAuth 2.0 access tokens (using v2.0 endpoints).

How to test everything in Postman—connecting with and without a token to see tools appear or hide dynamically.

🛠️ Technologies Used:

MCP Server for .NET (MCP.Server)

ASP.NET Core

Microsoft Authentication Library (JWT Bearer)

Azure Entra ID / Microsoft Identity Platform

Postman (for API testing)

⏱️ Timestamps:
0:00 - Introduction & Demo Overview
2:15 - Creating the Server App Registration in Azure Entra ID
4:30 - Defining App Roles for Security
5:45 - Creating the Client App Registration
7:10 - Setting API Permissions & Granting Consent
8:30 - Creating the .NET MCP Server Project
10:15 - Building Public Tools
12:00 - Building a Secure Tool with the [Authorize] Attribute
14:45 - Configuring Authentication (JWT Bearer) in Program.cs
18:20 - Configuring Authorization Policies for Role-Based Access
20:10 - Setting Up OAuth 2.0 in Postman
23:40 - Getting Tenant ID, Client ID, Client Secret, and Scopes
26:50 - Generating the Access Token
28:30 - Inspecting the Token & Final Server Configuration
30:00 - LIVE DEMO: Connecting to the Server (With/Without Token)
32:45 - Recap and Real-World Use Cases (Free vs. Paid Tools)

📖 Key Concepts Covered:

OAuth 2.0 Client Credentials Flow

JWT (JSON Web Token) Structure and Validation

Role-Based Access Control (RBAC)

MCP Server Authorization Filters

Manifest settings for requestedAccessTokenVersion

💼 Practical Use Case:
This setup is perfect for SaaS platforms or organizations that want to offer a public MCP server with a mix of free tools and premium, secured tools accessible only to customers with valid credentials.

❓ Having Issues?
Make sure you've:

Set "requestedAccessTokenVersion": 2 in your server app's manifest.

Used the v2.0 token endpoint (/v2.0/) in Postman.

Correctly formatted your scope: api://{SERVER_APP_CLIENT_ID}/.default

Added the AddAuthorizationFilter() method when building your MCP server.

Securing MCP Servers: Role-Based Tool Access with OAuth 2.0 and Azure Entra ID

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

MCP Client OAuth проще, чем вы думаете

MCP Client OAuth проще, чем вы думаете

From Adaptive Card to AI: Connecting Copilot Studio Forms to Azure AI Foundry

From Adaptive Card to AI: Connecting Copilot Studio Forms to Azure AI Foundry

MCP Servers in C#: The Crash Course

MCP Servers in C#: The Crash Course

Azure's Foundry UI Just Got a MAJOR Upgrade! 🚀 (New Design Revealed) | First Look, Ignite 2025

Azure's Foundry UI Just Got a MAJOR Upgrade! 🚀 (New Design Revealed) | First Look, Ignite 2025

Claude за 20 минут: Полный курс для новичков

Claude за 20 минут: Полный курс для новичков

Бывший рекрутер Google объясняет, почему «ложь» помогает получить работу.

Бывший рекрутер Google объясняет, почему «ложь» помогает получить работу.

Сисадмины больше не нужны? Gemini настраивает Linux сервер и устанавливает cтек N8N. ЭТО ЗАКОННО?

Сисадмины больше не нужны? Gemini настраивает Linux сервер и устанавливает cтек N8N. ЭТО ЗАКОННО?

How to Connect Copilot Studio to Azure Functions & AI Agents

How to Connect Copilot Studio to Azure Functions & AI Agents

На меня напали… Розыгрыш в спортзале «Анатолий» пошел не так… | Притворился уборщиком

На меня напали… Розыгрыш в спортзале «Анатолий» пошел не так… | Притворился уборщиком

Высокомерный полицейский остановил чернокожего агента ФБР и пожалел об этом

Высокомерный полицейский остановил чернокожего агента ФБР и пожалел об этом

Most Ridiculous Worker Mistakes Caught on Camera

Most Ridiculous Worker Mistakes Caught on Camera

Просто вставьте старые батарейки в дрель, и это нужно в каждом доме, но никто этого не делает!

Просто вставьте старые батарейки в дрель, и это нужно в каждом доме, но никто этого не делает!

Azure Files + Entra ID Kerberos: Full Setup Guide (Hybrid & Cloud-Only Access)

Azure Files + Entra ID Kerberos: Full Setup Guide (Hybrid & Cloud-Only Access)

Удивительное изобретение 65-летнего плотника поразило инженеров! Самодельные инструменты для деревоо

Удивительное изобретение 65-летнего плотника поразило инженеров! Самодельные инструменты для деревоо

Для Чего РЕАЛЬНО Нужен был ГОРБ Boeing 747?

Для Чего РЕАЛЬНО Нужен был ГОРБ Boeing 747?

Я обучил ИИ на своих файлах: Локальный RAG без цензуры (n8n + Qdrant)

Я обучил ИИ на своих файлах: Локальный RAG без цензуры (n8n + Qdrant)

Не используй DNS провайдера! Защищённые DOT, DOH DNS + VPN + Keenetic

Не используй DNS провайдера! Защищённые DOT, DOH DNS + VPN + Keenetic

Roadmap Вайбкодера 2026 - с Нуля до Релиза

Roadmap Вайбкодера 2026 - с Нуля до Релиза

Kubernetes — Простым Языком на Понятном Примере

Kubernetes — Простым Языком на Понятном Примере

Как защитить свой .NET API с помощью Microsoft Entra ID и Angular MSAL!

Как защитить свой .NET API с помощью Microsoft Entra ID и Angular MSAL!

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: infodtube@gmail.com