User Entitlements - Add
Bir kullanıcı ekleyin, lisans ve uzantılar atayın ve bir hesaptaki proje grubunun üyesi yapın.
POST https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?api-version=7.1-preview.4
URI Parametreleri
Name | İçinde | Gerekli | Tür | Description |
---|---|---|---|---|
organization
|
path | True |
string |
Azure DevOps kuruluşunun adı. |
api-version
|
query | True |
string |
Kullanılacak API'nin sürümü. Bu, api'nin bu sürümünü kullanmak için '7.1-preview.4' olarak ayarlanmalıdır. |
İstek Gövdesi
Name | Tür | Description |
---|---|---|
accessLevel |
Üyenin bir lisansla belirtilen erişim düzeyi. |
|
dateCreated |
string |
[Salt okunur] Üyenin koleksiyona eklendiği tarih. |
groupAssignments |
[Salt okunur] Bu üyenin ait olduğu GroupEntitlements. |
|
id |
string |
GraphMember ile ilişkili Kimliğin kimliğiyle eşleşen benzersiz tanımlayıcı. |
lastAccessedDate |
string |
[Salt okunur] Üyenin koleksiyona en son erişmiş olduğu tarih. |
projectEntitlements |
Bir proje ile üyenin o projedeki etkin izinleri arasındaki ilişki. |
|
user |
Kullanıcı başvurusu. |
Yanıtlar
Name | Tür | Description |
---|---|---|
200 OK |
başarılı işlem |
Güvenlik
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
Name | Description |
---|---|
vso.memberentitlementmanagement_write | Kullanıcıları, lisanslarını ve erişebilecekleri projeleri ve uzantıları yönetme olanağı sağlar |
Örnekler
Sample Request
POST https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?api-version=7.1-preview.4
{
"accessLevel": {
"licensingSource": "account",
"accountLicenseType": "express"
},
"extensions": [
{
"id": "ms.feed"
}
],
"user": {
"principalName": "newuser@fabrikam.com",
"subjectKind": "user"
},
"projectEntitlements": [
{
"group": {
"groupType": "projectContributor"
},
"projectRef": {
"id": "e5943a98-a842-4001-bd3b-06e756a7dfac"
}
}
]
}
Sample Response
{
"operationResult": {
"isSuccess": true,
"errors": [],
"userId": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
"result": {
"id": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
"user": {
"subjectKind": "user",
"domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
"principalName": "newuser@fabrikam.com",
"mailAddress": "newuser@fabrikam.com",
"origin": "aad",
"originId": "00000000-0000-0000-0000-000000000000",
"displayName": "newuser@fabrikam.com",
"_links": {
"self": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"memberships": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"membershipState": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"storageKey": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
}
},
"url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv",
"descriptor": "aad.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"accessLevel": {
"licensingSource": "account",
"accountLicenseType": "express",
"msdnLicenseType": "none",
"licenseDisplayName": "Basic",
"status": "pending",
"statusMessage": "",
"assignmentSource": "unknown"
},
"lastAccessedDate": "0001-01-01T08:00:00Z",
"projectEntitlements": [],
"extensions": [],
"groupAssignments": []
}
},
"isSuccess": true,
"userEntitlement": {
"id": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
"user": {
"subjectKind": "user",
"domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
"principalName": "newuser@fabrikam.com",
"mailAddress": "newuser@fabrikam.com",
"origin": "aad",
"originId": "00000000-0000-0000-0000-000000000000",
"displayName": "newuser@fabrikam.com",
"_links": {
"self": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"memberships": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"membershipState": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"storageKey": {
"href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
}
},
"url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv",
"descriptor": "aad.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
},
"accessLevel": {
"licensingSource": "account",
"accountLicenseType": "express",
"msdnLicenseType": "none",
"licenseDisplayName": "Basic",
"status": "pending",
"statusMessage": "",
"assignmentSource": "unknown"
},
"lastAccessedDate": "0001-01-01T08:00:00Z",
"projectEntitlements": [],
"extensions": [],
"groupAssignments": []
}
}
Tanımlar
Name | Description |
---|---|
Access |
Kullanıcıya atanan lisans |
Account |
Hesap Lisansı türü (örn. Express, Paydaş vb.). AccountLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'account' olarak tanımlanmalıdır. |
Account |
Hesaptaki kullanıcı durumu |
Assignment |
Lisansın Atama Kaynağı (ör. Grup, Bilinmiyor vb.) |
Graph |
Graf grubu varlığı |
Graph |
|
Group |
Proje Grubu (örn. Katkıda Bulunan, Okuyucu vb.) |
Group |
Lisansı, uzantıları ve proje üyeliği dahil ek özelliklere sahip bir grup varlığı |
Group |
Grup kuralının durumu. |
Group |
Grup Türü |
Licensing |
Lisans Kaynağı (örn. Hesap. MSDN vb.) |
Msdn |
MSDN Lisansı türü (örn. Visual Studio Professional, Visual Studio Enterprise vb.). MsdnLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'msdn' olarak tanımlanmalıdır. |
Project |
Bir proje ile kullanıcının bu projedeki etkin izinleri arasındaki ilişki. |
Project |
Kullanıcının Azure DevOps veya AAD grup üyeliği aracılığıyla bir projeye izinleri devralıp devralmadığı. |
Project |
Projeye başvuru |
Reference |
REST başvuru bağlantıları koleksiyonunu temsil eden sınıf. |
Team |
Bir takıma başvuru |
User |
Lisansı, uzantıları ve proje üyeliği gibi ek özelliklere sahip bir kullanıcı varlığı |
User |
|
User |
AccessLevel
Kullanıcıya atanan lisans
Name | Tür | Description |
---|---|---|
accountLicenseType |
Hesap Lisansı türü (örn. Express, Paydaş vb.). AccountLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'account' olarak tanımlanmalıdır. |
|
assignmentSource |
Lisansın Atama Kaynağı (ör. Grup, Bilinmiyor vb.) |
|
licenseDisplayName |
string |
Lisansın görünen adı |
licensingSource |
Lisans Kaynağı (örn. Hesap. MSDN vb.) |
|
msdnLicenseType |
MSDN Lisansı türü (örn. Visual Studio Professional, Visual Studio Enterprise vb.). MsdnLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'msdn' olarak tanımlanmalıdır. |
|
status |
Hesaptaki kullanıcı durumu |
|
statusMessage |
string |
Durum iletisi. |
AccountLicenseType
Hesap Lisansı türü (örn. Express, Paydaş vb.). AccountLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'account' olarak tanımlanmalıdır.
Name | Tür | Description |
---|---|---|
advanced |
string |
|
earlyAdopter |
string |
|
express |
string |
|
none |
string |
|
professional |
string |
|
stakeholder |
string |
AccountUserStatus
Hesaptaki kullanıcı durumu
Name | Tür | Description |
---|---|---|
active |
string |
Kullanıcı VSTS hesabında en az bir kez oturum açtı |
deleted |
string |
Kullanıcı VSTS hesabı yöneticisi tarafından VSTS hesabından kaldırılır |
disabled |
string |
Kullanıcı oturum açamıyor; devamsızlık veya lisans yeniden yükleme nedeniyle bir kullanıcıyı geçici olarak kaldırmak için yönetici tarafından öncelikli olarak kullanılır |
expired |
string |
Kullanıcı oturum açabilir; lisans süresi dolduğunda öncelikli olarak kullanılır ve yetkisiz kullanım süresi veririz |
none |
string |
|
pending |
string |
Kullanıcı VSTS hesabı yöneticisi tarafından VSTS hesabına katılmaya davet edildi, ancak henüz kaydolmadı/oturum açmadı |
pendingDisabled |
string |
Kullanıcı devre dışı bırakıldı; yeniden kullanılabilir durumdaysa, bekleme durumunda olmaya devam eder |
AssignmentSource
Lisansın Atama Kaynağı (ör. Grup, Bilinmiyor vb.)
Name | Tür | Description |
---|---|---|
groupRule |
string |
|
none |
string |
|
unknown |
string |
GraphGroup
Graf grubu varlığı
Name | Tür | Description |
---|---|---|
_links |
Bu alan, grafik konusu hakkında sıfır veya daha fazla ilgi çekici bağlantı içerir. Bu bağlantılar, bu grafik konusu hakkında daha fazla ilişki veya daha ayrıntılı bilgi edinmek için çağrılabilir. |
|
description |
string |
İnsan okuyucuların benzer adlara sahip grupları belirsizleştirmesine yardımcı olan kısa bir ifade |
descriptor |
string |
Tanımlayıcı, sistem çalışırken graf konusuna başvurmanın birincil yoludur. Bu alan, hem Hesaplar hem de Kuruluşlar genelinde aynı graf konusunu benzersiz olarak tanımlar. |
displayName |
string |
Bu, grafik konusunun benzersiz olmayan görünen adıdır. Bu alanı değiştirmek için kaynak sağlayıcıdaki değerini değiştirmeniz gerekir. |
domain |
string |
Bu, bir graf üyesinin kaynak kapsayıcısının adını temsil eder. (MSA için bu "Windows Live ID", AD için etki alanının adı, AAD için dizinin tenantID değeri, VSTS grupları için ScopeId vb.) |
legacyDescriptor |
string |
[Yalnızca İç Kullanım] Kimlik tanımlayıcısını kullanarak eski sürüm IMS'ye erişmeniz gerekirse eski tanımlayıcı buradadır. |
mailAddress |
string |
Belirli bir grafik üyesi için kaydın e-posta adresi. Bu, asıl addan farklı olabilir. |
origin |
string |
Kaynak tanımlayıcısı için kaynak sağlayıcı türü (örn:AD, AAD, MSA) |
originId |
string |
Kaynak sistemindeki benzersiz tanımlayıcı. Genellikle sid, nesne kimliği veya Guid. Bağlama ve bağlantıyı kaldırma işlemleri, kullanıcı farklı bir sağlayıcı tarafından yedeklenmediğinden ve yeni sağlayıcıda farklı bir benzersiz kimliğe sahip olduğundan bu değerin değişmesine neden olabilir. |
principalName |
string |
Bu, kaynak sağlayıcıdan bu grafik üyesinin PrincipalName değeridir. Kaynak sağlayıcı bu alanı zaman içinde değiştirebilir ve VSTS tarafından grafik üyesinin ömrü boyunca sabit olacağı garanti edilemez. |
subjectKind |
string |
Bu alan graf konusunun türünü tanımlar (örneğin: Grup, Kapsam, Kullanıcı). |
url |
string |
Bu URL, bu grafik konusunun kaynak kaynağına giden tam yoldur. |
GraphUser
Name | Tür | Description |
---|---|---|
_links |
Bu alan, grafik konusu hakkında sıfır veya daha fazla ilgi çekici bağlantı içerir. Bu bağlantılar, bu grafik konusu hakkında daha fazla ilişki veya daha ayrıntılı bilgi edinmek için çağrılabilir. |
|
descriptor |
string |
Tanımlayıcı, sistem çalışırken graf konusuna başvurmanın birincil yoludur. Bu alan, hem Hesaplar hem de Kuruluşlar genelinde aynı graf konusunu benzersiz olarak tanımlar. |
directoryAlias |
string |
Yedekleme dizinindeki kullanıcı için kısa, genel olarak benzersiz ad. AAD kullanıcıları için bu, genellikle @ işaretinden önce kullanıcının posta adresinin parçasına benzer olmayan posta takma adına karşılık gelir. GitHub kullanıcıları için bu, GitHub kullanıcı tanıtıcısına karşılık gelir. |
displayName |
string |
Bu, grafik konusunun benzersiz olmayan görünen adıdır. Bu alanı değiştirmek için kaynak sağlayıcıdaki değerini değiştirmeniz gerekir. |
domain |
string |
Bu, bir graf üyesinin kaynak kapsayıcısının adını temsil eder. (MSA için bu "Windows Live ID", AD için etki alanının adı, AAD için dizinin tenantID değeri, VSTS grupları için ScopeId vb.) |
isDeletedInOrigin |
boolean |
Doğru olduğunda, grup kimlik sağlayıcısından silindi |
legacyDescriptor |
string |
[Yalnızca İç Kullanım] Kimlik tanımlayıcısını kullanarak eski sürüm IMS'ye erişmeniz gerekirse eski tanımlayıcı buradadır. |
mailAddress |
string |
Belirli bir grafik üyesi için kaydın e-posta adresi. Bu, asıl addan farklı olabilir. |
metaType |
string |
Kaynaktaki kullanıcının "üye", "konuk" gibi meta türü. Olası değerler kümesi için bkz. UserMetaType. |
origin |
string |
Kaynak tanımlayıcısı için kaynak sağlayıcı türü (örn:AD, AAD, MSA) |
originId |
string |
Kaynak sistemindeki benzersiz tanımlayıcı. Genellikle sid, nesne kimliği veya Guid. Bağlama ve bağlantıyı kaldırma işlemleri, kullanıcı farklı bir sağlayıcı tarafından yedeklenmediğinden ve yeni sağlayıcıda farklı bir benzersiz kimliğe sahip olduğundan bu değerin değişmesine neden olabilir. |
principalName |
string |
Bu, kaynak sağlayıcıdan bu grafik üyesinin PrincipalName değeridir. Kaynak sağlayıcı bu alanı zaman içinde değiştirebilir ve VSTS tarafından grafik üyesinin ömrü boyunca sabit olacağı garanti edilemez. |
subjectKind |
string |
Bu alan graf konusunun türünü tanımlar (örneğin: Grup, Kapsam, Kullanıcı). |
url |
string |
Bu URL, bu grafik konusunun kaynak kaynağına giden tam yoldur. |
Group
Proje Grubu (örn. Katkıda Bulunan, Okuyucu vb.)
Name | Tür | Description |
---|---|---|
displayName |
string |
Grubun Görünen Adı |
groupType |
Grup Türü |
GroupEntitlement
Lisansı, uzantıları ve proje üyeliği dahil ek özelliklere sahip bir grup varlığı
Name | Tür | Description |
---|---|---|
group |
Üye başvurusu. |
|
id |
string |
GraphMember kimliğiyle eşleşen benzersiz tanımlayıcı. |
lastExecuted |
string |
[Salt okunur] Grup lisanslama kuralının en son yürütülürken (herhangi bir değişiklik yapılıp yapılmadığına bakılmaksızın). |
licenseRule |
Lisans Kuralı. |
|
members |
Grup üyeleri. Yalnızca yeni grup oluşturulurken kullanılır. |
|
projectEntitlements |
Bir proje ile üyenin o projedeki etkin izinleri arasındaki ilişki. |
|
status |
Grup kuralının durumu. |
GroupLicensingRuleStatus
Grup kuralının durumu.
Name | Tür | Description |
---|---|---|
applied |
string |
Kural uygulandı |
applyPending |
string |
Kural oluşturuldu veya güncelleştirildi, ancak uygulama beklemede |
incompatible |
string |
Grup kuralı uyumsuzdu |
unableToApply |
string |
Kural beklenmedik şekilde uygulanamadı ve yeniden denenmesi gerekiyor |
GroupType
Grup Türü
Name | Tür | Description |
---|---|---|
custom |
string |
|
projectAdministrator |
string |
|
projectContributor |
string |
|
projectReader |
string |
|
projectStakeholder |
string |
LicensingSource
Lisans Kaynağı (örn. Hesap. MSDN vb.)
Name | Tür | Description |
---|---|---|
account |
string |
|
auto |
string |
|
msdn |
string |
|
none |
string |
|
profile |
string |
|
trial |
string |
MsdnLicenseType
MSDN Lisansı türü (örn. Visual Studio Professional, Visual Studio Enterprise vb.). MsdnLicenseType'ı kullanmak için LicensingSource istek gövdesinde 'msdn' olarak tanımlanmalıdır.
Name | Tür | Description |
---|---|---|
eligible |
string |
|
enterprise |
string |
|
none |
string |
|
platforms |
string |
|
premium |
string |
|
professional |
string |
|
testProfessional |
string |
|
ultimate |
string |
ProjectEntitlement
Bir proje ile kullanıcının bu projedeki etkin izinleri arasındaki ilişki.
Name | Tür | Description |
---|---|---|
assignmentSource |
Atama Kaynağı (örn. Grup veya Bilinmiyor). |
|
group |
Proje Grubu (örn. Katkıda Bulunan, Okuyucu vb.) |
|
projectPermissionInherited |
Kullanıcının Azure DevOps veya AAD grup üyeliği aracılığıyla bir projeye izinleri devralıp devralmadığı. |
|
projectRef |
Proje Başvurusu |
|
teamRefs |
Team |
Takım Başv. |
ProjectPermissionInherited
Kullanıcının Azure DevOps veya AAD grup üyeliği aracılığıyla bir projeye izinleri devralıp devralmadığı.
Name | Tür | Description |
---|---|---|
inherited |
string |
|
notInherited |
string |
|
notSet |
string |
ProjectRef
Projeye başvuru
Name | Tür | Description |
---|---|---|
id |
string |
Proje Kimliği. |
name |
string |
Proje Adı. |
ReferenceLinks
REST başvuru bağlantıları koleksiyonunu temsil eden sınıf.
Name | Tür | Description |
---|---|---|
links |
object |
Bağlantıların salt okunur görünümü. Başvuru bağlantıları salt okunur olduğundan, bunları yalnızca salt okunur olarak göstermek istiyoruz. |
TeamRef
Bir takıma başvuru
Name | Tür | Description |
---|---|---|
id |
string |
Ekip Kimliği |
name |
string |
Ekip Adı |
UserEntitlement
Lisansı, uzantıları ve proje üyeliği gibi ek özelliklere sahip bir kullanıcı varlığı
Name | Tür | Description |
---|---|---|
accessLevel |
Bir lisans tarafından belirtilen üyenin erişim düzeyi. |
|
dateCreated |
string |
[Salt okunur] Üyenin koleksiyona eklendiği tarih. |
groupAssignments |
[Salt okunur] Bu üyenin ait olduğu GroupEntitlements. |
|
id |
string |
GraphMember ile ilişkili Kimliğin kimliğiyle eşleşen benzersiz tanımlayıcı. |
lastAccessedDate |
string |
[Salt okunur] Üyenin koleksiyona en son erişmiş olduğu tarih. |
projectEntitlements |
Bir proje ile üyenin o projedeki etkin izinleri arasındaki ilişki. |
|
user |
Kullanıcı başvurusu. |
UserEntitlementOperationResult
Name | Tür | Description |
---|---|---|
errors |
object[] |
İlgili hata iletileriyle eşleştirilmiş hata kodlarının listesi. |
isSuccess |
boolean |
İşlemin başarı durumu. |
result |
string |
Sonuçta elde edilen yetkilendirme özelliği. Belirli uygulamalar için ayrıca bkz: |
userId |
string |
İşlem yapılan Üyenin tanımlayıcısı. |
UserEntitlementsPostResponse
Name | Tür | Description |
---|---|---|
isSuccess |
boolean |
Tüm işlemler başarılı olursa true. |
operationResult |
İşlem sonucu. |
|
userEntitlement |
İşlemler uygulandıktan sonra kullanıcı yetkilendirmesinin sonucu. |