Udostępnij za pośrednictwem


Service Principals - Create

Materializuj istniejącą jednostkę usługi AAD na koncie ADO.

UWAGA: Utworzone jednostki usługi nie są aktywne na koncie.

Dodanie jednostki usługi do konta jest wymagane przed dodaniem jednostki usługi do grup ADO lub przypisania zasobu.

Treść żądania musi być typem pochodnym klasy GraphServicePrincipalCreationContext:

  • GraphServicePrincipalOriginIdCreationContext — utwórz nową jednostkę usługi przy użyciu identyfikatora OriginID jako odwołania do istniejącej jednostki usługi od dostawcy wspieranego przez usługę AAD.

Jeśli jednostka usługi, która ma zostać dodana, odpowiada jednostce usługi, która została wcześniej usunięta, zostanie przywrócona ta jednostka usługi.

Opcjonalnie możesz dodać nowo utworzoną jednostkę usługi jako członka istniejącej grupy ADO i/lub określić niestandardowy klucz magazynu dla jednostki usługi.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
organization
path True

string

Nazwa organizacji usługi Azure DevOps.

api-version
query True

string

Wersja interfejsu API do użycia. Ta wartość powinna być ustawiona na wartość "7.1-preview.1", aby używać tej wersji interfejsu API.

groupDescriptors
query

string

array (string)

Rozdzielona przecinkami lista deskryptorów grup, które mają zostać dołączone do jednostki usługi programu Graph

Treść żądania

Nazwa Typ Opis
storageKey

string

Opcjonalnie: Jeśli zostanie podany, użyjemy tego identyfikatora dla klucza magazynu utworzonej jednostki usługi

Odpowiedzi

Nazwa Typ Opis
200 OK

GraphServicePrincipal

operacja zakończona powodzeniem

Zabezpieczenia

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

Nazwa Opis
vso.graph_manage Daje możliwość odczytywania informacji o użytkowniku, grupie, zakresie i członkostwie w grupie oraz dodawaniu użytkowników, grup i zarządzaniu członkostwem w grupach

Przykłady

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"
}

Definicje

Nazwa Opis
GraphServicePrincipal
GraphServicePrincipalCreationContext

Nie próbuj używać tego typu do utworzenia nowej jednostki usługi. Zamiast tego użyj jednej z podklas. Ten typ nie zawiera wystarczających pól do utworzenia nowej jednostki usługi.

ReferenceLinks

Klasa reprezentująca kolekcję linków referencyjnych REST.

GraphServicePrincipal

Nazwa Typ Opis
_links

ReferenceLinks

To pole zawiera zero lub więcej interesujących linków dotyczących tematu grafu. Te linki mogą być wywoływane w celu uzyskania dodatkowych relacji lub bardziej szczegółowych informacji na temat tego tematu grafu.

applicationId

string

descriptor

string

Deskryptor jest podstawowym sposobem odwoływanie się do tematu grafu podczas działania systemu. To pole będzie jednoznacznie identyfikować ten sam temat grafu zarówno w ramach kont, jak i organizacji.

directoryAlias

string

Krótka, zazwyczaj unikatowa nazwa użytkownika w katalogu zapasowym. W przypadku użytkowników usługi AAD odpowiada to pseudonimowi poczty, który jest często, ale niekoniecznie podobny do części adresu e-mail użytkownika przed znakiem @. W przypadku użytkowników usługi GitHub odpowiada to dojściu użytkownika usługi GitHub.

displayName

string

Jest to nieu unikatowa nazwa wyświetlana podmiotu grafu. Aby zmienić to pole, należy zmienić jego wartość u dostawcy źródłowego.

domain

string

Reprezentuje to nazwę kontenera pochodzenia dla elementu członkowskiego grafu. (W przypadku konta MSA jest to "Windows Live ID", dla usługi AD nazwa domeny, dla usługi AAD identyfikator dzierżawy katalogu, dla grup usługi VSTS identyfikator ScopeId itp.)

isDeletedInOrigin

boolean

W przypadku wartości true grupa została usunięta u dostawcy tożsamości

legacyDescriptor

string

[Tylko użycie wewnętrzne] Starszy deskryptor znajduje się tutaj, jeśli musisz uzyskać dostęp do starej wersji usługi IMS przy użyciu deskryptora tożsamości.

mailAddress

string

Adres e-mail rekordu dla danego elementu członkowskiego grafu. Może to być inne niż główna nazwa.

metaType

string

Meta typ użytkownika w miejscu pochodzenia, taki jak "członek", "gość" itp. Aby uzyskać zestaw możliwych wartości, zobacz UserMetaType.

origin

string

Typ dostawcy źródła dla identyfikatora źródła (np.: AD, AAD, MSA)

originId

string

Unikatowy identyfikator z systemu pochodzenia. Zazwyczaj identyfikator sid, identyfikator obiektu lub identyfikator GUID. Operacje łączenia i odłączania mogą spowodować zmianę tej wartości dla użytkownika, ponieważ użytkownik nie jest wspierany przez innego dostawcę i ma inny unikatowy identyfikator w nowym dostawcy.

principalName

string

Jest to principalName tego elementu członkowskiego grafu od dostawcy źródłowego. Dostawca źródłowy może zmienić to pole w czasie i nie ma gwarancji, że będzie niezmienny przez okres życia elementu członkowskiego grafu przez usługę VSTS.

subjectKind

string

To pole identyfikuje typ tematu grafu (np. Grupa, Zakres, Użytkownik).

url

string

Ten adres URL jest pełną trasą do zasobu źródłowego tego tematu grafu.

GraphServicePrincipalCreationContext

Nie próbuj używać tego typu do utworzenia nowej jednostki usługi. Zamiast tego użyj jednej z podklas. Ten typ nie zawiera wystarczających pól do utworzenia nowej jednostki usługi.

Nazwa Typ Opis
storageKey

string

Opcjonalnie: Jeśli zostanie podany, użyjemy tego identyfikatora dla klucza magazynu utworzonej jednostki usługi

Klasa reprezentująca kolekcję linków referencyjnych REST.

Nazwa Typ Opis
links

object

Widok linków w trybie tylko do odczytu. Ponieważ linki odwołania są tylko do odczytu, chcemy uwidocznić je tylko jako tylko do odczytu.