Service Principals - Create

将现有的 AAD 服务主体具体化为 ADO 帐户。

注意:创建的服务主体在帐户中不处于活动状态。

必须先将服务主体添加到帐户,然后才能将服务主体添加到 ADO 组或分配资产。

请求正文必须是 GraphServicePrincipalCreationContext 的派生类型:

  • GraphServicePrincipalOriginIdCreationContext - 使用 OriginID 作为对 AAD 支持的提供程序中的现有服务主体的引用创建新的服务主体。

如果要添加的服务主体对应于之前删除的服务主体,则将还原该服务主体。

(可选)可以将新创建的服务主体添加为现有 ADO 组的成员和/或指定服务主体的自定义存储密钥。

POST https://vssps.dev.azure.com/{organization}/_apis/graph/serviceprincipals?api-version=7.1-preview.1
POST https://vssps.dev.azure.com/{organization}/_apis/graph/serviceprincipals?groupDescriptors={groupDescriptors}&api-version=7.1-preview.1

URI 参数

名称 必需 类型 说明
organization
path True

string

Azure DevOps 组织的名称。

api-version
query True

string

要使用的 API 版本。 这应设置为“7.1-preview.1”才能使用此版本的 API。

groupDescriptors
query

string

array (string)

希望图形服务主体联接的组的描述符的逗号分隔列表

请求正文

名称 类型 说明
storageKey

string

可选:如果提供,我们将将此标识符用于创建的服务主体的存储密钥

响应

名称 类型 说明
200 OK

GraphServicePrincipal

成功的操作

安全性

oauth2

Type: oauth2
Flow: accessCode
Authorization URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Scopes

名称 说明
vso.graph_manage 授予读取用户、组、范围和组成员身份信息以及添加用户、组和管理组成员身份的能力

示例

Sample Request

POST https://vssps.dev.azure.com/{organization}/_apis/graph/serviceprincipals?api-version=7.1-preview.1

{
  "originId": "053b9e43-b344-4d53-897f-fe5d9c016625"
}

Sample Response

{
  "subjectKind": "servicePrincipal",
  "applicationId": "7adff1a5-9d3f-407d-8b79-4dd547d472b1",
  "directoryAlias": "053b9e43-b344-4d53-897f-fe5d9c016625",
  "domain": "62e2ee3f-dbd4-48d8-9b85-4a3776783e13",
  "principalName": "053b9e43-b344-4d53-897f-fe5d9c016625",
  "mailAddress": null,
  "origin": "aad",
  "originId": "053b9e43-b344-4d53-897f-fe5d9c016625",
  "displayName": "ServicePrincipalDisplayName",
  "_links": {
    "self": {
      "href": "https://vssps.dev.azure.com/Fabrikam/_apis/Graph/ServicePrincipals/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
    },
    "memberships": {
      "href": "https://vssps.dev.azure.com/Fabrikam/_apis/Graph/Memberships/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
    },
    "membershipState": {
      "href": "https://vssps.dev.azure.com/Fabrikam/_apis/Graph/MembershipStates/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
    },
    "storageKey": {
      "href": "https://vssps.dev.azure.com/Fabrikam/_apis/Graph/StorageKeys/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
    },
    "avatar": {
      "href": "https://dev.azure.com/Fabrikam/_apis/GraphProfile/MemberAvatars/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
    }
  },
  "url": "https://vssps.dev.azure.com/Fabrikam/_apis/Graph/ServicePrincipals/aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3",
  "descriptor": "aadsp.ZTM1NTU0YzUtMjg2MC03MWFkLWIzYjAtNzkzNWViMDg1Njg3"
}

定义

名称 说明
GraphServicePrincipal
GraphServicePrincipalCreationContext

请勿尝试使用此类型创建新的服务主体。 请改用其中一个子类。 此类型不包含足够的字段来创建新的服务主体。

ReferenceLinks

表示 REST 引用链接集合的类。

GraphServicePrincipal

名称 类型 说明
_links

ReferenceLinks

此字段包含零个或多个有关图形主题的有趣链接。 可以调用这些链接来获取有关此图主题的其他关系或更详细的信息。

applicationId

string

descriptor

string

描述符是在系统运行时引用图形主题的主要方法。 此字段将唯一标识帐户和组织中的同一图形主题。

directoryAlias

string

后备目录中用户通常唯一的短名称。 对于 AAD 用户,这对应于邮件昵称,通常但不一定类似于 @ 符号前的用户邮件地址部分。 对于 GitHub 用户,这对应于 GitHub 用户句柄。

displayName

string

这是图形主题的非唯一显示名称。 若要更改此字段,必须在源提供程序中更改其值。

domain

string

这表示图形成员的源容器的名称。 (对于 MSA,这是“Windows Live ID”,对于 AD,为域的名称,对于 AAD,为目录的 tenantID,对于 VSTS 组,范围 Id 等)

isDeletedInOrigin

boolean

如果为 true,则标识提供者中的组已被删除

legacyDescriptor

string

[仅限内部使用]如果需要使用标识描述符访问旧版 IMS,则可以使用旧版描述符。

mailAddress

string

给定图形成员的记录的电子邮件地址。 这可能不同于主体名称。

metaType

string

源中用户的元类型,例如“member”、“guest”等。有关一组可能的值,请参阅 UserMetaType。

origin

string

源标识符的源提供程序的类型 (例如:AD、AAD、MSA)

originId

string

源系统中的唯一标识符。 通常为 sid、对象 ID 或 Guid。 链接和取消链接操作可能会导致用户的此值发生更改,因为该用户不受其他提供程序的支持,并且新提供程序中具有不同的唯一 ID。

principalName

string

这是源提供程序中此图形成员的 PrincipalName。 源提供程序可能会随时间推移更改此字段,并且 VSTS 不能保证在图形成员的生命周期内是不可变的。

subjectKind

string

此字段标识图形主题 (类型,例如:组、作用域、用户) 。

url

string

此 URL 是指向此图主题的源资源的完整路由。

GraphServicePrincipalCreationContext

请勿尝试使用此类型创建新的服务主体。 请改用其中一个子类。 此类型不包含足够的字段来创建新的服务主体。

名称 类型 说明
storageKey

string

可选:如果提供,我们将将此标识符用于创建的服务主体的存储密钥

表示 REST 引用链接集合的类。

名称 类型 说明
links

object

链接的只读视图。 由于引用链接是只读的,因此我们只想将其公开为只读。