servicePrincipal 资源类型

命名空间:microsoft.graph

表示目录中的一个应用程序实例。 继承自 directoryObject

该资源支持通过提供 delta 函数使用增量查询跟踪增量添加、删除和更新。 此资源是允许传入其他属性的开放类型。

Methods

方法 返回类型 说明
List servicePrincipals servicePrincipal 集合 检索 servicePrincipal 对象列表。
创建 servicePrincipal servicePrincipal 创建一个新的 servicePrincipal 对象。
Get servicePrincipal servicePrincipal 读取 servicePrincipal 对象的属性和关系。
更新 servicePrincipal servicePrincipal 更新 servicePrincipal 对象。
删除 servicePrincipal 删除 servicePrincipal 对象。
列出已删除的 servicePrincipal directoryObject 集合 检索最近删除的 servicePrincipal 对象的列表。
获取已删除的 servicePrincipal directoryObject 检索最近删除的 servicePrincipal 对象的属性。
永久删除 servicePrincipal 永久删除 servicePrincipal 对象。
还原已删除的 servicePrincipal directoryObject 还原最近删除的 servicePrincipal 对象。
List createdObjects directoryObject 集合 获取 createdObject 对象集合。
List ownedObjects directoryObject 集合 获取 ownedObject 对象集合。
获取 delta servicePrincipal 集合 获取服务主体的增量更改。
应用角色分配
列出 appRoleAssignments appRoleAssignment 集合 获取已分配到此服务主体的应用角色。
添加 appRoleAssignment appRoleAssignment 向此服务主体分配一个应用角色。
删除 appRoleAssignment 从此服务主体中删除一个应用角色分配。
列出 appRoleAssignedTo appRoleAssignment 集合 获取用户、组和服务主体为此服务主体分配的应用角色。
添加 appRoleAssignedTo appRoleAssignment 向用户、组或服务主体分配此服务主体的应用角色。
移除 appRoleAssignedTo 从用户、组或服务主体中移除此服务主体的应用角色分配。
证书和密码
添加密码 passwordCredential 将强密码或机密添加到 servicePrincipal。
添加 tokenSigningCertificate selfSignedCertificate 将自签名证书添加到服务主体。 主要用于从 Azure AD 库配置基于 SAML 的 SSO 应用程序。
删除密码 passwordCredential 从 servicePrincipal 中删除密码或机密。
加号键 keyCredential 向 servicePrincipal 添加密钥凭据。
删除键 从 servicePrincipal 中移除密钥凭据。
委派权限分类
列出委派权限分类 delegatedPermissionClassification 集合 获取此服务主体公开的委派权限的权限分类。
添加委派权限分类 delegatedPermissionClassification 添加此服务主体公开的委派权限的权限分类。
删除委派权限分类 删除此服务主体公开的委派权限的权限分类。
委派权限授予
List oauth2PermissionGrants oAuth2PermissionGrant 集合 获取授权此服务主体代表已登录用户访问 API 的委派权限授予。
Membership
List memberOf directoryObject 集合 从 memberOf 导航属性中获取此服务主体是其直接成员的组。
列出 transitive memberOf directoryObject 集合 列出此服务主体所属的组。 此操作是可传递的,并包括此服务主体以嵌套方式所属的组。
checkMemberGroups String 集合 检查指定组列表中的成员身份。
checkMemberObjects String 集合 检查组、目录角色或管理单元对象指定列表中的成员身份。
getMemberGroups String 集合 获取此服务主体所属的组列表。
getMemberObjects String collection 获取此服务主体所属的组、管理单元和目录角色的列表。
Owners
List owners directoryObject 集合 获取所有者对象集合。
添加所有者 directoryObject 通过发布到所有者集合创建新的所有者。
Remove owner 从 serviceprincipal 中移除所有者。
策略
分配 claimsMappingPolicy claimsMappingPolicy 集合 向此对象分配 claimsMappingPolicy。
列出 claimsMappingPolicies claimsMappingPolicy 集合 为此对象分配的 claimsMappingPolicies。
删除 claimsMappingPolicy claimsMappingPolicy 集合 从此对象中移除 claimsMappingPolicy。
分配 homeRealmDiscoveryPolicy homeRealmDiscoveryPolicy 集合 向此对象分配 homeRealmDiscoveryPolicy。
列出 homeRealmDiscoveryPolicy homeRealmDiscoveryPolicy 集合 为此对象分配的 homeRealmDiscoveryPolicies。
删除 homeRealmDiscoveryPolicy homeRealmDiscoveryPolicy 集合 从此对象中删除 homeRealmDiscoveryPolicy。
分配 tokenIssuancePolicy tokenIssuancePolicy 集合 分配 tokenIssuancePolicy 至此对象。
列出 tokenIssuancePolicies tokenIssuancePolicy 集合 获取已分配至此对象的所有 tokenIssuancePolicies。
删除 tokenIssuancePolicy tokenIssuancePolicy 集合 从此对象中删除 tokenIssuancePolicy。
分配 tokenLifetimePolicy tokenLifetimePolicy 集合 向此对象分配 tokenLifetimePolicy。
列出 tokenLifetimePolicies tokenLifetimePolicy 集合 获取已分配至此对象的所有 tokenLifetimePolicies。
删除 tokenLifetimePolicy tokenLifetimePolicy 集合 从此对象中删除 tokenLifetimePolicy。

属性

重要

仅当使用设置为 eventual$countConsistencyLevel 标头时,才支持 $filter$search 查询参数的特定用法。 有关详细信息,请参阅 Azure AD 目录对象的高级查询功能

属性 类型 说明
accountEnabled Boolean 如果启用了服务主体帐户,则true;否则,false。支持$filtereqnenotin)。
addIns addIn 集合 定义使用服务可用于调用特定上下文中的应用的自定义行为。 例如,呈现文件流的应用程序可能会为其“FileHandler”功能设置 addIns 属性。 这将使 Microsoft 365 之类的服务在用户正在处理的文档上下文中调用应用程序。
alternativeNames 字符串集合 用于按订阅检索服务主体,标识的托管标识的资源组和完整资源 ID。支持$filtereqnotgelestartsWith)。
应用说明 String 相关应用程序公开的说明。
appDisplayName String 关联应用程序公开的显示名称。
appId String 关联应用程序的唯一标识符(其 appId 属性)。支持 $filtereqnenotinstartsWith)。
applicationTemplateId String 从中创建 servicePrincipal 的 applicationTemplate 的唯一标识符。只读。支持 $filtereqneNOTstartsWith)。
appOwnerOrganizationId Guid 包含注册应用程序的租户 ID。 这仅适用于应用程序支持的服务主体。 支持 $filtereqneNOTgele)。
appRoleAssignmentRequired Boolean 指定是否需要向用户或其他服务主体授予此服务主体的应用角色分配,然后用户才能登录或应用可以获取令牌。默认值为 false。不可为 null。

支持 $filtereqneNOT)。
appRoles appRole 集合 该服务主体代表的应用程序公开的角色。 有关详细信息,请参阅 应用程序实体上的 appRoles 属性定义。 不可为 null。
deletedDateTime DateTimeOffset 删除服务主体的日期和时间。只读。
说明 字符串 免费文本字段,提供面向内部最终用户的服务主体说明。 "MyApps " 等最终用户门户将在此字段中显示应用程序说明。 最大允许大小为 1024 个字符。 支持 $filtereqnenotgelestartsWith)和 $search
disabledByMicrosoftStatus String 指定 Microsoft 是否已禁用已注册的应用程序。可能的值为:null(默认值)、NotDisabledDisabledDueToViolationOfServicesAgreement(原因可能包括可疑、滥用或恶意活动或违反 Microsoft 服务协议)。

支持 $filtereqnenot)。
displayName String 服务主体的显示名称。 支持 $filter (eqnenotgeleinstartsWithnull 值上的 eq)、$search$orderBy
homepage String 应用程序的主页或登录页面。
id String 服务主体的唯一标识符。继承自 directoryObject。关键。不可为 null。只读。支持 $filtereqnenotin)。
info informationalUrl 所获取应用程序的基本配置文件信息,如应用的市场营销、支持、服务条款和隐私声明 URL。 服务条款和隐私声明通过用户同意体验展示给用户。 有关详细信息,请参阅如何:为已注册的 Azure AD 应用添加服务条款和隐私声明

支持 $filtereqnenotgelenull 值上的 eq)。
keyCredentials keyCredential 集合 与服务主体关联的密钥凭据的集合。不可为 null。支持 $filtereqnotgele)。
loginUrl String 指定服务提供商将用户重定向到 Azure AD 进行身份验证的 URL。 Azure AD 使用 URL 从 Microsoft 365 或Azure AD My Apps 启动应用程序。 该选项为空时,Azure AD 将对使用“基于 SAML 的单一登录”配置的应用程序执行 IdP 启动的登录。 用户从 Microsoft 365、Azure AD My Apps 或Azure AD SSO URL 启动应用程序。
logoutUrl String 指定 Microsoft 授权服务使用 OpenId Connect 正向通道反向通道或 SAML 注销协议注销用户时所使用的 URL。
notes String 免费文本字段,用于捕获有关服务主体的信息,通常用于操作。最大允许大小为 1024 个字符。
notificationEmailAddresses 字符串集合 指定在活动证书临近到期日期时,Azure AD 在其中发送通知的电子邮件地址列表。 这仅适用于用于签署为 Azure AD 库应用程序发行的 SAML 令牌的证书。
oauth2PermissionScopes permissionScope 集合 应用程序公开的委派权限。 有关详细信息,请参阅 应用程序实体上的 api 属性的 oauth2PermissionScopes 属性。 不可为 null。
passwordCredentials passwordCredential 集合 与应用程序关联的密码凭据集合。不可为 Null。
preferredSingleSignOnMode string 指定为此应用程序配置的单一登录模式。 Azure AD 使用首选单一登录模式从 Microsoft 365 或Azure AD My Apps 启动应用程序。 支持的值是:passwordsamlnotSupportedoidc
replyUrls String 集合 向其发送用户令牌以使用关联应用程序登录的 URL,或者为关联应用程序向其发送 OAuth 2.0 authorization 代码和访问令牌的重定向 URL。不可为 NULL。
resourceSpecificApplicationPermissions resourceSpecificPermission 集合 此应用程序公开的特定于资源的应用程序权限。 目前,仅 Teams 应用使用 Microsoft Graph 访问特定聊天和团队 支持特定于资源的权限。 只读。
samlSingleSignOnSettings samlSingleSignOnSettings 有关 saml 单一登录的设置的集合。
servicePrincipalNames 字符串集合 包含从关联的 应用程序中复制的 identifiersUris 列表。 可以将其他值添加到混合应用程序。 这些值可用于标识此应用程序在 Azure AD 中公开的权限。 例如,
  • 客户端应用可以指定基于此属性的值的资源 URI(即“aud”声明中返回的 URI),以获取访问令牌。

多值属性上的筛选器表达式需要 any 运算符。不可为 NULL。

支持 $filtereqnotgelestartsWith)。
servicePrincipalType String 标识服务主体代表应用程序、托管标识还是旧版应用程序。 这是由 Azure AD 内部设置的。 servicePrincipalType 属性可以设置为三个不同的值:
  • 应用程序 - 表示应用程序或服务的服务主体。 appId 属性标识相关联的应用程序注册,并匹配 应用程序(可能来自不同租户)的 appId。 如果缺少关联的应用注册,将不会为服务主体颁发令牌。
  • ManagedIdentity - 一个服务主体,代表 托管标识。 可授予表示托管标识的服务主体的访问权限和权限,但不能直接更新或修改。
  • 旧版 - 表示在应用注册前或通过旧体验创建的应用程序的服务主体。 旧服务主体可以具有凭据、服务主体名称、答复 URL 以及其他由授权用户编辑但没有相关应用注册的属性。 值 appId 未将服务主体与应用注册关联。 服务主体只能在创建它的租户中使用。
  • SocialIdp - 供内部使用。
signInAudience String 指定当前应用程序支持的 Microsoft 帐户。只读。

支持的值为:
  • AzureADMyOrg:在我的组织的 Azure AD 租户(即单租户)中拥有 Microsoft 工作或学校帐户的用户
  • AzureADMultipleOrgs:在任何组织的 Azure AD 租户(多租户)中拥有 Microsoft 工作或学校帐户的用户。
  • AzureADandPersonalMicrosoftAccount:拥有个人 Microsoft 帐户或任意组织的 Azure AD 租户中的工作或学校帐户的用户。
  • PersonalMicrosoftAccount:仅限拥有个人 Microsoft 帐户的用户。
tags String collection 可用于对服务主体进行分类和识别的自定义字符串。不可为空。

支持 $filtereqnotgelestartsWith)。
tokenEncryptionKeyId String 指定 keyCredentials 集合中的公共密钥的 keyId。 配置后,Azure AD 为此应用程序发布使用此属性指定的密钥加密的令牌。 接收加密令牌的应用程序代码必须先使用匹配的私钥来解密该令牌,然后才能将该令牌用于登录用户。
verifiedPublisher verifiedPublisher 指定该服务主体代表的应用程序的已验证发布者。

关系

关系 类型 说明
appRoleAssignedTo appRoleAssignment 此应用或服务的应用角色分配,已授予用户、组和其他服务主体。支持 $expand
appRoleAssignments appRoleAssignment 集合 另一个应用或服务的应用角色分配,授予此服务主体。支持 $expand
claimsMappingPolicies claimsMappingPolicy 集合 分配给此服务主体的 claimsMappingPolicies。支持 $expand
createdObjects directoryObject collection 由此服务主体创建的目录对象。只读。可为空。
homeRealmDiscoveryPolicies homeRealmDiscoveryPolicy 集合 为此服务主体分配的 homeRealmDiscoveryPolicies。支持 $expand
memberOf directoryObject 集合 此服务主体所属的角色。HTTP 方法:GET 只读。空。支持 $expand
oauth2PermissionGrants oAuth2PermissionGrant 集合 委派权限授予设置此服务主体以代表已登录用户访问 API 的权限。只读。可为空。
ownedObjects directoryObject 集合 属于此服务主体的目录对象。只读。可为空。支持 $expand
owners directoryObject 集合 servicePrincipal 所述的目录对象。 所有者是一组允许修改此对象的非管理员用户或 servicePrincipal。 只读。 可为 NULL。 支持 $expand
tokenIssuancePolicies tokenIssuancePolicy 集合 为此服务主体分配的 tokenIssuancePolicies。
tokenLifetimePolicies tokenLifetimePolicy 集合 为此服务主体分配的 tokenLifetimePolicies。

JSON 表示形式

下面是资源的 JSON 表示形式。

{
  "accountEnabled": true,
  "addIns": [{"@odata.type": "microsoft.graph.addIn"}],
  "alternativeNames": ["String"] ,
  "appDisplayName": "String",
  "appId": "String",
  "appOwnerOrganizationId": "Guid",
  "appRoleAssignmentRequired": true,
  "appRoles": [{"@odata.type": "microsoft.graph.appRole"}],
  "disabledByMicrosoftStatus": "String",
  "displayName": "String",
  "homepage": "String",
  "id": "String (identifier)",
  "info": {"@odata.type": "microsoft.graph.informationalUrl"},
  "keyCredentials": [{"@odata.type": "microsoft.graph.keyCredential"}],
  "logoutUrl": "String",
  "notes": "String",
  "oauth2PermissionScopes": [{"@odata.type": "microsoft.graph.permissionScope"}],
  "passwordCredentials": [{"@odata.type": "microsoft.graph.passwordCredential"}],
  "replyUrls": ["String"],
  "resourceSpecificApplicationPermissions": [{"@odata.type": "microsoft.graph.resourceSpecificPermission"}],
  "servicePrincipalNames": ["String"],
  "servicePrincipalType": "String",
  "tags": ["String"],
  "tokenEncryptionKeyId": "String",
  "verifiedPublisher": {"@odata.type": "microsoft.graph.verifiedPublisher"}
}