Tjänstslutpunktsautentiseringsscheman
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Lär dig hur du anger autentiseringsuppgifterna i HTTP-begärandehuvudet när du anropar den externa slutpunkten. Azure DevOps kan sedan ansluta till den externa tjänsten med hjälp av autentiseringsuppgifterna. Azure DevOps stöder en sluten uppsättning autentiseringsscheman som kan användas av en anpassad tjänstslutpunktstyp. Azure DevOps tolkar autentiseringsschemat som används i alla anpassade slutpunkter och stöder anslutning till den externa tjänsten.
Se följande autentiseringsscheman som ingår i den stängda uppsättningen.
Dricks
Läs vår senaste dokumentation om tilläggsutveckling med hjälp av Azure DevOps Extension SDK.
Grundläggande autentisering
Det här schemat tar två indata – Användarnamn och lösenord (konfidentiellt)
Standardautentiseringshuvudet som används är: "Basic {{ #base64 endpoint.username ":" endpoint.password }}"
{
"id": "endpoint-auth-scheme-basic",
"description": "Basic Authentication based endpoint authentication scheme",
"type": "ms.vss-endpoint.service-endpoint-type",
"targets": [
"ms.vss-endpoint.endpoint-types"
],
"properties": {
"name": "UsernamePassword",
"displayName": "i18n:Basic Authentication",
"authenticationSchemes": [
{
"type": "ms.vss-endpoint.endpoint-auth-scheme-basic",
"headers": [
{
"name": "Authorization",
"value": "Basic {{ #base64 endpoint.username \":\" endpoint.password }}"
}
],
"inputDescriptors": [
{
"id": "username",
"name": "i18n:Username",
"description": "i18n:Username for connecting to the endpoint",
"inputMode": "textbox",
"isConfidential": false,
"validation": {
"isRequired": true,
"dataType": "string",
"maxLength": 300
}
},
{
"id": "password",
"name": "i18n:Password",
"description": "i18n:Password for connecting to the endpoint",
"inputMode": "passwordbox",
"isConfidential": true,
"validation": {
"isRequired": true,
"dataType": "string",
"maxLength": 300
}
}
]
}
]
}
}
Tokenbaserad autentisering
Det här schemat tar en indata – API-token (konfidentiellt)
Standardautentiseringshuvudet som används är: {{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
}
}
]
}
]
}
}
Certifikatbaserad autentisering
Det här schemat tar en indata – Certifikat (konfidentiellt)
Värdet för certifikatet måste anges i textområdet.
{
"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"
}
}
]
}
]
}
}
Ingen autentisering
Det här schemat används när en slutpunktstyp inte kräver några indata. Till exempel externa tjänster som stöder anonym åtkomst till dess resurser.
{
"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"
}
}