User Entitlements - List

获取与筛选条件匹配的分页用户权利集。 如果未传递筛选器,则返回来自所有帐户用户的一个页面。

GET https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?api-version=4.1-preview.1
GET https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?top={top}&skip={skip}&filter={filter}&select={select}&api-version=4.1-preview.1

URI 参数

名称 必需 类型 说明
organization
path True

string

Azure DevOps 组织的名称。

api-version
query True

string

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

filter
query

string

逗号 (“,”) 分隔的属性列表及其要筛选的值。 目前,API 仅支持按 ExtensionId 进行筛选。 示例参数为 filter=extensionId eq search。

select
query

string

逗号 (“,”) 分隔的属性列表,以在结果权利中选择。 属性的名称为 -“Projects”、“Extensions”和“Grouprules”。

skip
query

integer

int32

偏移量:要跳过的记录数。 默认值为 0

top
query

integer

int32

要返回的用户权利的最大数目。 最大值为 10000。 默认值为 100

响应

名称 类型 说明
200 OK

UserEntitlement[]

成功的操作

安全性

oauth2

类型: oauth2
流向: accessCode
授权 URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
令牌 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

作用域

名称 说明
vso.memberEntitlementManagement 授予读取用户、其许可证以及他们可以访问的项目和扩展的能力

示例

示例请求

GET https://vsaex.dev.azure.com/fabrikam/_apis/userentitlements?top=100&skip=0&api-version=4.1-preview.1

示例响应

{
  "count": 2,
  "value": [
    {
      "id": "fe2f1bdb-9779-491a-a6f6-c6e9322cfb00",
      "user": {
        "subjectKind": "user",
        "metaType": "member",
        "domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
        "principalName": "user1@fabrikam.com",
        "mailAddress": "user1@fabrikam.com",
        "origin": "aad",
        "originId": "00000000-0000-0000-0000-000000000000",
        "displayName": "User 1",
        "_links": {
          "self": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY"
          },
          "memberships": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY"
          },
          "membershipState": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY"
          },
          "storageKey": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY"
          }
        },
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY",
        "descriptor": "aad.wUGM3IDZ1UTZzczNtkTZmJWLiRzY30yNyE2MtcDNmFTOzMjY"
      },
      "accessLevel": {
        "licensingSource": "account",
        "accountLicenseType": "stakeholder",
        "msdnLicenseType": "none",
        "licenseDisplayName": "Stakeholder",
        "status": "active",
        "statusMessage": "",
        "assignmentSource": "unknown"
      },
      "lastAccessedDate": "0001-01-01T00:00:00Z",
      "projectEntitlements": [],
      "extensions": [],
      "groupAssignments": []
    },
    {
      "id": "f3157dda-522a-45c5-9bbd-f7da438b4660",
      "user": {
        "subjectKind": "user",
        "metaType": "member",
        "domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
        "principalName": "user2@fabrikam.com",
        "mailAddress": "user2@fabrikam.com",
        "origin": "aad",
        "originId": "00000000-0000-0000-0000-000000000000",
        "displayName": "User 2",
        "_links": {
          "self": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN"
          },
          "memberships": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN"
          },
          "membershipState": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN"
          },
          "storageKey": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN"
          }
        },
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN",
        "descriptor": "aad.4QTZxY2YllTZ0YWNtETZmFWLlFjN30SOjRmNtY2M1QzN4MmN"
      },
      "accessLevel": {
        "licensingSource": "account",
        "accountLicenseType": "express",
        "msdnLicenseType": "none",
        "licenseDisplayName": "Basic",
        "status": "active",
        "statusMessage": "",
        "assignmentSource": "unknown"
      },
      "lastAccessedDate": "2017-10-02T16:34:16.86Z",
      "projectEntitlements": [],
      "extensions": [],
      "groupAssignments": []
    }
  ]
}

定义

名称 说明
AccessLevel
AccountLicenseType

帐户许可证 (类型,例如 Express、利益干系人等)

AccountUserStatus

帐户中的用户状态

AssignmentSource

许可证 (的分配源,例如组、未知等。

Extension
GraphGroup

图形组实体

GraphUser

Graph 用户实体

Group
GroupEntitlement
GroupLicensingRuleStatus

组规则的状态。

GroupType

组类型

LicensingSource

许可源 (例如帐户MSDN 等)

MsdnLicenseType

MSDN 许可证 (的类型,例如Visual Studio Professional、Visual Studio Enterprise等)

ProjectEntitlement
ProjectRef
ReferenceLinks

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

TeamRef
UserEntitlement

AccessLevel

名称 类型 说明
accountLicenseType

AccountLicenseType

帐户许可证 (类型,例如 Express、利益干系人等)

assignmentSource

AssignmentSource

许可证 (的分配源,例如组、未知等。

licenseDisplayName

string

许可证的显示名称

licensingSource

LicensingSource

许可源 (例如帐户MSDN 等)

msdnLicenseType

MsdnLicenseType

MSDN 许可证 (的类型,例如Visual Studio Professional、Visual Studio Enterprise等)

status

AccountUserStatus

帐户中的用户状态

statusMessage

string

状态消息。

AccountLicenseType

帐户许可证 (类型,例如 Express、利益干系人等)

说明
advanced
earlyAdopter
express
none
professional
stakeholder

AccountUserStatus

帐户中的用户状态

说明
active

用户至少登录到 VSTS 帐户一次

deleted

VSTS 帐户管理员从 VSTS 帐户中删除用户

disabled

用户无法登录;主要由管理员用于临时删除因缺少或重新分配许可证而删除用户

expired

用户可以登录;主要在许可证处于过期状态并且我们给予宽限期时使用

none
pending

VSTS 帐户管理员邀请用户加入 VSTS 帐户,但尚未注册/登录

pendingDisabled

用户已禁用;如果重新启用,则它们仍将处于挂起状态

AssignmentSource

许可证 (的分配源,例如组、未知等。

说明
groupRule
none
unknown

Extension

名称 类型 说明
assignmentSource

AssignmentSource

此扩展的分配源。 即显式分配或从组规则。

id

string

扩展的库 ID。

name

string

此扩展的友好名称。

source

LicensingSource

此扩展分配的源。 例如:msdn、account、none 等。

GraphGroup

图形组实体

名称 类型 说明
_links

ReferenceLinks

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

cuid

string

主题的一致唯一标识符

description

string

帮助人类读者消除具有相似名称的群体的简短短语

descriptor

string

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

displayName

string

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

domain

string

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

legacyDescriptor

string

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

mailAddress

string

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

origin

string

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

originId

string

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

principalName

string

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

subjectKind

string

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

url

string

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

GraphUser

Graph 用户实体

名称 类型 说明
_links

ReferenceLinks

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

cuid

string

主题的一致唯一标识符

descriptor

string

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

displayName

string

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

domain

string

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

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 是指向此图主题的源资源的完整路由。

Group

名称 类型 说明
displayName

string

组的显示名称

groupType

GroupType

组类型

GroupEntitlement

名称 类型 说明
extensionRules

Extension[]

扩展规则。

group

GraphGroup

成员引用。

id

string

与 GraphMember 的 ID 匹配的唯一标识符。

lastExecuted

string

[Readonly]上一次执行组许可规则的时间 (,无论是否) 进行了任何更改。

licenseRule

AccessLevel

许可证规则。

members

UserEntitlement[]

组成员。 仅在创建新组时使用。

projectEntitlements

ProjectEntitlement[]

项目与成员在该项目中的有效权限之间的关系。

status

GroupLicensingRuleStatus

组规则的状态。

GroupLicensingRuleStatus

组规则的状态。

说明
applied

应用规则

applyPending

规则已创建或更新,但应用挂起

incompatible

组规则不兼容

unableToApply

规则无法意外应用,应重试

GroupType

组类型

说明
custom
projectAdministrator
projectContributor
projectReader
projectStakeholder

LicensingSource

许可源 (例如帐户MSDN 等)

说明
account
auto
msdn
none
profile
trial

MsdnLicenseType

MSDN 许可证 (的类型,例如Visual Studio Professional、Visual Studio Enterprise等)

说明
eligible
enterprise
none
platforms
premium
professional
testProfessional
ultimate

ProjectEntitlement

名称 类型 说明
assignmentSource

AssignmentSource

分配源 (,例如组或未知) 。

group

Group

项目组 (例如参与者、读者等)

isProjectPermissionInherited

boolean

用户是通过 VSTS 还是 AAD 组成员身份继承对项目的权限。

projectRef

ProjectRef

Project Ref

teamRefs

TeamRef[]

团队参考

ProjectRef

名称 类型 说明
id

string

项目 ID。

name

string

项目名称。

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

名称 类型 说明
links

object

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

TeamRef

名称 类型 说明
id

string

团队 ID

name

string

团队名称

UserEntitlement

名称 类型 说明
accessLevel

AccessLevel

许可证表示的用户访问级别。

extensions

Extension[]

用户的扩展。

groupAssignments

GroupEntitlement[]

[Readonly]此用户所属的 GroupEntitlements。

id

string

与 GraphMember 关联的标识的 ID 匹配的唯一标识符。

lastAccessedDate

string

[Readonly]用户上次访问集合的日期。

projectEntitlements

ProjectEntitlement[]

项目与用户在该项目中的有效权限之间的关系。

user

GraphUser

用户引用。