共用方式為


服務端點驗證配置

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019

瞭解如何在呼叫外部端點時,在 HTTP 要求標頭中設定認證。 Azure DevOps 接著可以使用認證連線到外部服務。 Azure DevOps 支援自定義服務端點類型所使用的一組封閉式驗證配置。 Azure DevOps 會解譯任何自定義端點中使用的驗證配置,& 支援與外部服務的連線。

請參閱下列屬於封閉集合的驗證方案。

提示

請參閱使用 Azure DevOps 擴充功能 SDK的最新擴充功能開發檔。

基本身份驗證

作為安全性措施,建議您透過基本身份驗證使用服務主體 & 受控識別。 如需詳細資訊,請參閱 使用服務主體 & 管理識別

令牌型驗證

此方案只需一個輸入:API 令牌 (機密)

使用的默認驗證標頭為: {{endpoint.apitoken}}

{
    "id": "endpoint-auth-scheme-token",
    "description": "i18n:Token based endpoint authentication scheme",
    "type": "ms.vss-endpoint.service-endpoint-type",
    "targets": [
        "ms.vss-endpoint.endpoint-types"
    ],
    "properties": {
        "name": "Token",
        "displayName": "i18n:Token Based Authentication",
        "authenticationSchemes": [
            {
                "type": "ms.vss-endpoint.endpoint-auth-scheme-token",
                "headers": [
                    {
                        "name": "Authorization",
                        "value": "{{endpoint.apitoken}}"
                    }
                ],
                "inputDescriptors": [
                    {
                        "id": "apitoken",
                        "name": "i18n:API Token",
                        "description": "i18n:API Token for connection to endpoint",
                        "inputMode": "textbox",
                        "isConfidential": true,
                        "validation": {
                            "isRequired": true,
                            "dataType": "string",
                            "maxLength": 300
                        }
                    }
                ]
            }
        ]
    }
}

憑證式驗證

此方案僅有一項輸入:憑證(機密)

憑證的值必須在文字區域中提供。

{
    "id": "endpoint-auth-scheme-cert",
    "description": "i18n:Creates a certificate-based endpoint authentication scheme",
    "type": "ms.vss-endpoint.service-endpoint-type",
    "targets": [
        "ms.vss-endpoint.endpoint-types"
    ],
    "properties": {
        "name": "Certificate",
        "displayName": "i18n:Certificate Based",
        "authenticationSchemes": [
            {
                "type": "ms.vss-endpoint.endpoint-auth-scheme-cert",
                "inputDescriptors": [
                    {
                        "id": "certificate",
                        "name": "i18n:Certificate",
                        "description": "Content of the certificate",
                        "inputMode": "TextArea",
                        "isConfidential": true,
                        "validation": {
                            "isRequired": true,
                            "dataType": "string"
                        }
                    }
                ]
            }
        ]
    }
}

無驗證

當端點類型不需要接受任何輸入時,就會使用此配置。 例如,支援匿名存取其資源的外部服務。

{
    "id": "endpoint-auth-scheme-none",
    "description": "i18n:Creates an endpoint authentication scheme with no authentication.",
    "type": "ms.vss-endpoint.endpoint-auth-scheme-none",
    "targets": [
        "ms.vss-endpoint.endpoint-auth-schemes"
    ],
    "properties": {
        "name": "None",
        "displayName": "i18n:No Authentication"
    }
}