You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过MS Graph API获取基于SAML的单点登录配置

获取Azure AD应用SAML单点登录配置的MS Graph API方案

你可以通过Microsoft Graph API的以下端点获取已配置SAML单点登录的Azure AD应用相关配置,以下是具体方案和C#实现示例:

可用API端点

  • 企业应用(Service Principal):使用GET /servicePrincipals/{id},通过$select参数指定samlSingleSignOnSettings和federationConfiguration字段,即可获取SAML单点登录的核心配置(如元数据URL、断言消费URL、联邦元数据等)。
  • 应用注册(Application):若需获取应用注册层面的SAML配置,可调用GET /applications/{id},同样通过$select=federationConfiguration提取相关信息。

C#实现示例(使用Microsoft Graph SDK)

首先安装Graph SDK相关NuGet包:

Install-Package Microsoft.Graph
Install-Package Azure.Identity

然后编写代码:

using Microsoft.Graph;
using Azure.Identity;

// 配置身份验证参数
var clientId = "你的客户端ID";
var tenantId = "你的租户ID";
var clientSecret = "你的客户端密钥";
var targetServicePrincipalId = "目标应用的Service Principal ID";

// 初始化Graph客户端
var scopes = new[] { "https://graph.microsoft.com/.default" };
var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var graphClient = new GraphServiceClient(credential, scopes);

// 获取Service Principal的SAML配置
var servicePrincipal = await graphClient.ServicePrincipals[targetServicePrincipalId]
    .Request()
    .Select("samlSingleSignOnSettings,federationConfiguration")
    .GetAsync();

// 读取SAML单点登录核心配置
if (servicePrincipal.SamlSingleSignOnSettings != null)
{
    string metadataUrl = servicePrincipal.SamlSingleSignOnSettings.MetadataUrl;
    string assertionConsumerUrl = servicePrincipal.SamlSingleSignOnSettings.AssertionConsumerUrl;
    string logoutUrl = servicePrincipal.SamlSingleSignOnSettings.LogoutUrl;
    // 根据业务需求处理这些配置项
}

// 读取联邦配置(包含完整SAML元数据)
foreach (var config in servicePrincipal.FederationConfiguration)
{
    string samlMetadata = config.Metadata;
    string issuerUri = config.IssuerUri;
    // 解析元数据或使用issuer信息
}

权限要求

调用上述API需要确保你的客户端应用拥有以下权限之一(需管理员同意):

  • Application.Read.All:只读访问所有应用和服务主体
  • Application.ReadWrite.All:读写访问所有应用和服务主体

内容的提问来源于stack exchange,提问作者Anh Le

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:27:35