콘텐츠로 이동
📣 인포그랩에서 OpenAI 기술 기반으로 자체 개발한 자동화 번역 프로그램을 통해 n8n 공식 문서의 한글판을 국내 최초로 제공합니다.

자격 증명 파일#

자격 증명 파일은 노드에 대한 권한 부여 방법을 정의합니다. 이 파일의 설정은 n8n이 자격 증명 모달에 표시하는 내용에 영향을 미치며, 연결하려는 서비스의 인증 요구 사항을 반영해야 합니다.

자격 증명 파일에서는 모든 n8n UI 요소를 사용할 수 있습니다. n8n은 자격 증명을 사용하여 저장된 데이터를 암호화 키를 사용하여 암호화합니다.

자격 증명 파일의 구조#

자격 증명 파일은 다음 기본 구조를 따릅니다:

  1. import 문
  2. 자격 증명에 대한 클래스를 생성합니다.
  3. 클래스 내에서 노드에 대한 인증을 제어하는 속성을 정의합니다.

개요 구조#

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import {
	IAuthenticateGeneric,
	ICredentialTestRequest,
	ICredentialType,
	INodeProperties,
} from 'n8n-workflow';

export class ExampleNode implements ICredentialType {
	name = 'exampleNodeApi';
	displayName = '예제 노드 API';
	documentationUrl = '';
	properties: INodeProperties[] = [
		{
			displayName: 'API 키',
			name: 'apiKey',
			type: 'string',
			default: '',
		},
	];
	authenticate: IAuthenticateGeneric = {
		type: 'generic',
		properties: {
    		// body, header, qs 또는 auth 중 하나
			qs: {
        		// 위의 `apiKey` 값을 사용
				'api_key': '={{$credentials.apiKey}}'
			}

		},
	};
	test: ICredentialTestRequest = {
		request: {
			baseURL: '={{$credentials?.domain}}',
			url: '/bearer',
		},
	};
}

매개변수#

name#

문자열. 객체의 내부 이름. 노드의 다른 곳에서 참조하는 데 사용됩니다.

displayName#

문자열. n8n이 GUI에서 사용하는 이름.

documentationUrl#

문자열. 자격 증명 문서의 URL.

properties#

각 객체는 다음을 포함합니다:

  • displayName: n8n이 GUI에서 사용하는 이름.
  • name: 객체의 내부 이름. 노드의 다른 곳에서 참조하는 데 사용됩니다.
  • type: 기대되는 데이터 유형, 예: string.
  • default: n8n이 자격 증명을 테스트하는 데 사용할 URL.

authenticate#

  • authenticate: 객체. n8n이 API 요청의 일환으로 인증 데이터를 주입하는 방법을 알려주는 객체를 포함합니다.

type#

문자열. 헤더, 본문 또는 쿼리 문자열에 데이터를 전송하는 인증 방법을 사용하는 경우 'generic'으로 설정합니다.

properties#

객체. 인증 방법을 정의합니다. 옵션은 다음과 같습니다:

  • body: 객체. 요청 본문에 인증 데이터를 전송합니다. 중첩된 객체를 포함할 수 있습니다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    authenticate: IAuthenticateGeneric = {
    	type: 'generic',
    	properties: {
    		body: {
    			username: '={{$credentials.username}}',
    			password: '={{$credentials.password}}',
    		},
    	},
    };
    

  • header: 객체. 요청 헤더에 인증 데이터를 전송합니다.

    1
    2
    3
    4
    5
    6
    7
    8
    authenticate: IAuthenticateGeneric = {
    	type: 'generic',
    	properties: {
    		header: {
    			Authorization: '=Bearer {{$credentials.authToken}}',
    		},
    	},
    };
    

  • qs: 객체. "쿼리 문자열"을 나타냅니다. 요청 쿼리 문자열에 인증 데이터를 전송합니다.

    1
    2
    3
    4
    5
    6
    7
    8
    authenticate: IAuthenticateGeneric = {
    	type: 'generic',
    	properties: {
    		qs: {
    			token: '={{$credentials.token}}',
    		},
    	},
    };
    

  • auth: 객체. 기본 인증에 사용됩니다. usernamepassword를 키 이름으로 요구합니다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    authenticate: IAuthenticateGeneric = {
    	type: 'generic',
    	properties: {
    		auth: {
    			username: '={{$credentials.username}}',
    			password: '={{$credentials.password}}',
    		},
    	},
    };
    

test#

n8n이 자격 증명을 테스트하는 데 사용할 수 있는 URL 및 인증 유형을 포함하는 request 객체를 제공합니다.

1
2
3
4
5
6
test: ICredentialTestRequest = {
		request: {
			baseURL: '={{$credentials?.domain}}',
			url: '/bearer',
		},
	};
인포레터에서 최신 DevOps 트렌드를 격주로 만나보세요!