InfoGrab DocsInfoGrab Docs

자격증명 덮어쓰기

요약

자격증명 덮어쓰기를 통해 자격증명 데이터를 전역적으로 설정할 수 있습니다. 에디터 UI에서 n8n은 기본적으로 덮어쓴 모든 필드를 숨기므로 사용자는 자격증명의 "연결" 버튼을 사용하여 OAuth로 인증할 수 있습니다.

자격증명 덮어쓰기를 통해 자격증명 데이터를 전역적으로 설정할 수 있습니다. 이 데이터는 사용자에게 표시되지 않지만 n8n이 백그라운드에서 자동으로 사용합니다. 예를 들어 클라이언트 시크릿을 노출하지 않고 "연결" 버튼을 사용하여 OAuth 로그인을 활성화할 수 있습니다.

에디터 UI에서 n8n은 기본적으로 덮어쓴 모든 필드를 숨기므로 사용자는 자격증명의 "연결" 버튼을 사용하여 OAuth로 인증할 수 있습니다.

자격증명 덮어쓰기 구성에 사용되는 환경 변수에 대해서는 자격증명 환경 변수를 참조하세요.

환경 변수 사용#

CREDENTIALS_OVERWRITE_DATA{ CREDENTIAL_NAME: { PARAMETER: VALUE }}로 설정합니다.

Warning

이 방법은 권장하지 않습니다. 환경 변수는 n8n에서 보호되지 않으므로 데이터가 사용자에게 유출될 수 있습니다.

REST API 사용#

권장하는 방법은 커스텀 REST 엔드포인트를 사용하여 데이터를 로드하는 것입니다.

  1. CREDENTIALS_OVERWRITE_ENDPOINT를 엔드포인트가 사용 가능해야 할 경로로 설정합니다:

    export CREDENTIALS_OVERWRITE_ENDPOINT=send-credentials
    

    선택적으로 CREDENTIALS_OVERWRITE_ENDPOINT_AUTH_TOKEN을 설정하여 엔드포인트 접근에 bearer 토큰을 요구할 수 있습니다.

Note

인증 토큰 없이는 보안상의 이유로 엔드포인트를 한 번만 호출할 수 있습니다.

  1. 덮어쓸 자격증명이 포함된 JSON 파일을 준비합니다. 예를 들어 Asana 및 GitHub용 oauth-credentials.json:

    {
        "asanaOAuth2Api": {
            "clientId": "<id>",
            "clientSecret": "<secret>"
        },
        "githubOAuth2Api": {
            "clientId": "<id>",
            "clientSecret": "<secret>"
        }
    }
    
  2. n8n 인스턴스에 파일을 전송합니다:

    curl -H "Content-Type: application/json" --data @oauth-credentials.json http://localhost:5678/send-credentials
    

    CREDENTIALS_OVERWRITE_ENDPOINT_AUTH_TOKENsecure-token으로 설정된 경우:

    curl -H "Content-Type: application/json" -H "Authorization: Bearer secure-token" --data @oauth-credentials.json http://localhost:5678/send-credentials
    
Note

자격증명은 다른 자격증명을 상속할 수 있습니다. 예를 들어 googleSheetsOAuth2ApigoogleOAuth2Api를 상속합니다. 부모(googleOAuth2Api)에 파라미터를 설정하면 모든 하위 자격증명이 이를 사용합니다.

영속성#

데이터베이스에 자격증명 덮어쓰기를 저장하고 멀티 인스턴스 또는 큐 모드에서 모든 워커에 전파하려면 다음을 활성화합니다:

export CREDENTIALS_OVERWRITE_PERSISTENCE=true

활성화하면 n8n은 암호화된 덮어쓰기를 settings 테이블에 저장하고 워커가 최신 값을 다시 로드할 수 있도록 reload-overwrite-credentials 이벤트를 브로드캐스트합니다. 비활성화된 경우 덮어쓰기는 로드한 프로세스의 메모리에 남아 있으며 n8n은 이를 워커에 전파하거나 재시작 후에도 유지하지 않습니다.

자격증명 덮어쓰기

n8n v2.25
원문 보기
요약

자격증명 덮어쓰기를 통해 자격증명 데이터를 전역적으로 설정할 수 있습니다. 에디터 UI에서 n8n은 기본적으로 덮어쓴 모든 필드를 숨기므로 사용자는 자격증명의 "연결" 버튼을 사용하여 OAuth로 인증할 수 있습니다.

자격증명 덮어쓰기를 통해 자격증명 데이터를 전역적으로 설정할 수 있습니다. 이 데이터는 사용자에게 표시되지 않지만 n8n이 백그라운드에서 자동으로 사용합니다. 예를 들어 클라이언트 시크릿을 노출하지 않고 "연결" 버튼을 사용하여 OAuth 로그인을 활성화할 수 있습니다.

에디터 UI에서 n8n은 기본적으로 덮어쓴 모든 필드를 숨기므로 사용자는 자격증명의 "연결" 버튼을 사용하여 OAuth로 인증할 수 있습니다.

자격증명 덮어쓰기 구성에 사용되는 환경 변수에 대해서는 자격증명 환경 변수를 참조하세요.

환경 변수 사용#

CREDENTIALS_OVERWRITE_DATA{ CREDENTIAL_NAME: { PARAMETER: VALUE }}로 설정합니다.

Warning

이 방법은 권장하지 않습니다. 환경 변수는 n8n에서 보호되지 않으므로 데이터가 사용자에게 유출될 수 있습니다.

REST API 사용#

권장하는 방법은 커스텀 REST 엔드포인트를 사용하여 데이터를 로드하는 것입니다.

  1. CREDENTIALS_OVERWRITE_ENDPOINT를 엔드포인트가 사용 가능해야 할 경로로 설정합니다:

    export CREDENTIALS_OVERWRITE_ENDPOINT=send-credentials
    

    선택적으로 CREDENTIALS_OVERWRITE_ENDPOINT_AUTH_TOKEN을 설정하여 엔드포인트 접근에 bearer 토큰을 요구할 수 있습니다.

Note

인증 토큰 없이는 보안상의 이유로 엔드포인트를 한 번만 호출할 수 있습니다.

  1. 덮어쓸 자격증명이 포함된 JSON 파일을 준비합니다. 예를 들어 Asana 및 GitHub용 oauth-credentials.json:

    {
        "asanaOAuth2Api": {
            "clientId": "<id>",
            "clientSecret": "<secret>"
        },
        "githubOAuth2Api": {
            "clientId": "<id>",
            "clientSecret": "<secret>"
        }
    }
    
  2. n8n 인스턴스에 파일을 전송합니다:

    curl -H "Content-Type: application/json" --data @oauth-credentials.json http://localhost:5678/send-credentials
    

    CREDENTIALS_OVERWRITE_ENDPOINT_AUTH_TOKENsecure-token으로 설정된 경우:

    curl -H "Content-Type: application/json" -H "Authorization: Bearer secure-token" --data @oauth-credentials.json http://localhost:5678/send-credentials
    
Note

자격증명은 다른 자격증명을 상속할 수 있습니다. 예를 들어 googleSheetsOAuth2ApigoogleOAuth2Api를 상속합니다. 부모(googleOAuth2Api)에 파라미터를 설정하면 모든 하위 자격증명이 이를 사용합니다.

영속성#

데이터베이스에 자격증명 덮어쓰기를 저장하고 멀티 인스턴스 또는 큐 모드에서 모든 워커에 전파하려면 다음을 활성화합니다:

export CREDENTIALS_OVERWRITE_PERSISTENCE=true

활성화하면 n8n은 암호화된 덮어쓰기를 settings 테이블에 저장하고 워커가 최신 값을 다시 로드할 수 있도록 reload-overwrite-credentials 이벤트를 브로드캐스트합니다. 비활성화된 경우 덮어쓰기는 로드한 프로세스의 메모리에 남아 있으며 n8n은 이를 워커에 전파하거나 재시작 후에도 유지하지 않습니다.