验证 azure-devops PAT

Par*_*ban 3 azure-devops azure-devops-rest-api

我已经从 azure devops 创建了一个 PAT。现在我已经创建了一个 React 应用程序来处理所有 api 逻辑。我现在有一个登录屏幕,用户需要输入 DEVOPS_TOKEN、ORGANISATION_NAME。我如何在登录时验证用户令牌。我找不到任何用于验证用户的 api。

任何的意见都将会有帮助。

Par*_*ban 6

经过一番调查后,我找到了一种验证用户的方法。Azure Devops 中有一个可用的 api:https://dev.azure.com/ {ORGANISATION_NAME}/_apis/connectionData。

需要在导致用户授权的标头参数中传递编码令牌。

{
    "authenticatedUser": {
        "id": "123-13-131231231-123-123-123-123",
        "descriptor": "Microsoft.IdentityModel.Claims.ClaimsIdentity;123-13-131231231-123-123-123-123\\user@domain.com",
        "subjectDescriptor": "aad.Masdasdpadspoadsjpaodsjapodj",
        "providerDisplayName": "User Name",
        "isActive": true,
        "properties": {
            "Account": {
                "$type": "System.String",
                "$value": "user@domain.com"
            }
        },
        "resourceVersion": 2,
        "metaTypeId": 0
    },
    "authorizedUser": {
        "id": "123-13-131231231-123-123-123-123",
        "descriptor": "Microsoft.IdentityModel.Claims.ClaimsIdentity;123-13-131231231-123-123-123-123\\user@domain.com",
        "subjectDescriptor": "aad.Masdasdpadspoadsjpaodsjapodj",
        "providerDisplayName": "User Name",
        "isActive": true,
        "properties": {
            "Account": {
                "$type": "System.String",
                "$value": "user@domain.com"
            }
        },
        "resourceVersion": 2,
        "metaTypeId": 0
    },
    "instanceId": "123-13-131231231-123-123-123-123",
    "deploymentId": "123-13-131231231-123-123-123-123",
    "deploymentType": "hosted",
    "locationServiceData": {
        "serviceOwner": "123-13-131231231-123-123-123-123",
        "defaultAccessMappingMoniker": "PublicAccessMapping",
        "lastChangeId": 12313123,
        "lastChangeId64": 123123123
    }
}
Run Code Online (Sandbox Code Playgroud)