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 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
organization
|
path | True |
string |
Azure DevOps 組織的名稱。 |
api-version
|
query | True |
string |
要使用的 API 版本。 這應該設定為 '7.1-preview.1' 以使用此版本的 API。 |
group
|
query |
string array (string) |
您想要圖表服務主體加入之群組的逗號分隔描述項清單 |
要求本文
名稱 | 類型 | Description |
---|---|---|
storageKey |
string |
選擇性:如果提供,我們會將此識別碼用於所建立服務主體的儲存體金鑰 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
成功作業 |
安全性
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
名稱 | Description |
---|---|
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"
}
定義
名稱 | Description |
---|---|
Graph |
|
Graph |
請勿嘗試使用此類型來建立新的服務主體。 請改用其中一個子類別。 此類型不包含足夠的欄位來建立新的服務主體。 |
Reference |
表示 REST 參考連結集合的類別。 |
GraphServicePrincipal
名稱 | 類型 | Description |
---|---|---|
_links |
此欄位包含圖表主旨的相關零或更多有趣連結。 您可以叫用這些連結來取得其他關聯性,或取得此圖表主體的詳細資訊。 |
|
applicationId |
string |
|
descriptor |
string |
描述項是在系統執行時參考圖形主旨的主要方式。 此欄位可唯一識別帳戶和組織之間的相同圖表主旨。 |
directoryAlias |
string |
簡短且通常是支援目錄中使用者的唯一名稱。 對於 AAD 使用者,這會對應至郵件昵稱,這通常與使用者的郵寄地址部分類似 @sign 之前。 針對 GitHub 使用者,這會對應至 GitHub 使用者控制碼。 |
displayName |
string |
這是圖形主體的非唯一顯示名稱。 若要變更此欄位,您必須變更來源提供者中的值。 |
domain |
string |
這代表圖形成員的來源容器名稱。 (對於 MSA 而言,這是「Windows Live ID」,針對 AD 的名稱、針對目錄的 tenantID、VSTS 群組 ScopeId 等) |
isDeletedInOrigin |
boolean |
當為 true 時,已在識別提供者中刪除群組 |
legacyDescriptor |
string |
[僅限內部使用]若要使用身分識別描述元來存取舊版 IMS,則舊版描述元位於此處。 |
mailAddress |
string |
指定圖表成員的記錄電子郵件地址。 這可能與主體名稱不同。 |
metaType |
string |
來源中使用者的中繼類型,例如 「member」、「guest」 等。如需一組可能的值,請參閱 UserMetaType。 |
origin |
string |
來源識別碼的來源提供者類型 (例如:AD、AAD、MSA) |
originId |
string |
來源系統的唯一識別碼。 通常是 sid、物件識別碼或 Guid。 連結和取消連結作業可能會導致使用者的這個值變更,因為使用者不是由不同的提供者支援,而且在新提供者中具有不同的唯一識別碼。 |
principalName |
string |
這是來源提供者中這個圖形成員的 PrincipalName。 來源提供者可能會隨著時間變更此欄位,且不保證 VSTS 在圖形成員的存留期間不可變。 |
subjectKind |
string |
此欄位會識別圖形主旨的類型 (例如:群組、範圍、使用者) 。 |
url |
string |
此 URL 是此圖形主體來源資源的完整路由。 |
GraphServicePrincipalCreationContext
請勿嘗試使用此類型來建立新的服務主體。 請改用其中一個子類別。 此類型不包含足夠的欄位來建立新的服務主體。
名稱 | 類型 | Description |
---|---|---|
storageKey |
string |
選擇性:如果提供,我們會將此識別碼用於所建立服務主體的儲存體金鑰 |
ReferenceLinks
表示 REST 參考連結集合的類別。
名稱 | 類型 | Description |
---|---|---|
links |
object |
連結的唯讀檢視。 因為參考連結是唯讀的,所以我們只想要將它們公開為唯讀。 |