서비스 엔드포인트 인증 체계
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
외부 엔드포인트를 호출할 때 HTTP 요청 헤더에서 자격 증명을 설정하는 방법을 알아봅니다. Azure DevOps는 자격 증명을 사용하여 외부 서비스에 연결할 수 있습니다. Azure DevOps는 사용자 지정 서비스 엔드포인트 유형에서 활용할 수 있는 닫힌 인증 체계 집합을 지원합니다. Azure DevOps는 모든 사용자 지정 엔드포인트에서 사용되는 인증 체계를 해석하고 외부 서비스에 대한 연결을 지원합니다.
닫힌 집합의 일부인 다음 인증 체계를 참조하세요.
팁
Azure DevOps 확장 SDK를 사용하여 확장 개발에 대한 최신 설명서를 확인하세요.
인증 유형
이 체계는 사용자 이름 및 암호(기밀)의 두 가지 입력을 사용합니다.
사용되는 기본 인증 헤더: "기본 {{ #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
}
}
]
}
]
}
}
토큰 기반 인증
이 체계는 하나의 입력을 사용합니다. 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"
}
}