EntraID MCP 服务器是一款基于 Python 的实用工具,借助 Microsoft Graph API 对 Azure AD 和 Microsoft Entra 身份验证环境展开深度剖析。它提供了丰富多样的功能,涵盖目录访问、组管理、策略读取、角色管理以及用户密码重置等,助力用户高效管理身份验证环境。
创建一个 .env
文件,并添加以下内容:
TENANT_ID=your_tenant_id
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
在终端中运行以下命令以启动服务器:
python -m server
创建一个 .env
文件,并添加以下内容:
TENANT_ID=your_tenant_id
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
在终端中运行以下命令以启动服务器:
python -m server
from user_management import UserManagementTool
tool = UserManagementTool()
users = tool.list_all_users()
print(users)
from user_management import reset_password
result = reset_user_password_direct(user_id="12345", require_change=True, generate_password=True)
print(result)
from audit_logs import get_audit_logs
logs = get_user_audit_logs(user_id="67890", days=30)
print(logs)
from user_management import UserManagementTool
tool = UserManagementTool()
users = tool.list_all_users()
print(users)
from user_management import reset_password
result = reset_user_password_direct(user_id="12345", require_change=True, generate_password=True)
print(result)
from audit_logs import get_audit_logs
logs = get_user_audit_logs(user_id="67890", days=30)
print(logs)
以下列出所有必需的 Microsoft Graph 权限及其作用:
API/权限 | 类型 | 描述 |
---|---|---|
AuditLog.Read.All | 应用程序 | 读取所有审核日志数据 |
AuthenticationContext.Read.All | 应用程序 | 读取所有身份验证上下文信息 |
DeviceManagementManagedDevices.Read.All | 应用程序 | 读取 Microsoft Intune 设备 |
Directory.Read.All | 应用程序 | 读取目录数据 |
Group.Read.All | 应用程序 | 读取所有组 |
GroupMember.Read.All | 应用程序 | 读取所有组成员关系 |
Policy.Read.All | 应用程序 | 读取组织的所有策略 |
RoleManagement.Read.Directory | 应用程序 | 读取目录中的基于角色的访问控制设置 |
User.Read.All | 应用程序 | 读取所有用户的完整配置文件 |
User-PasswordProfile.ReadWrite.All | 应用程序 | 最小权限原则,用于更新密码配置 |
UserAuthenticationMethod.Read.All | 应用程序 | 读取所有用户的身份验证方法 |
若要添加新功能模块,请按照以下步骤操作:
tools/
文件夹下创建新的 Python 类。@mcp.tool()
装饰器注册新的工具。server.py
中导入并注册新工具。.env
和其他敏感文件不会被纳入版本控制系统。MIT License