webhook 살펴보기

완료됨

Runbook을 예약하거나 webhook를 사용하여 Runbook을 자동으로 시작할 수 있습니다.

webhook를 사용하면 단일 HTTPS 요청을 통해 Azure Automation의 특정 Runbook을 시작할 수 있습니다.

이렇게 하면 Azure Automation API를 사용하여 더 복잡한 솔루션을 구현하지 않고도 Azure DevOps, GitHub 또는 사용자 지정 애플리케이션과 같은 외부 서비스가 Runbook을 시작할 수 있습니다.

webhook에 대한 자세한 내용은 webhook를 사용하여 Azure Automation Runbook 시작을 참조하세요.

웹후크 프로세스 순서도의 다이어그램. 웹후크와 Runbook이 자동화라고 표시된 사각형 안에 있습니다.

웹후크 만들기

다음 단계에 따라 Runbook에 연결된 webhook를 만듭니다.

  1. Azure Portal에서 webhook를 만들려는 Runbook을 엽니다.
  2. Runbook 창의 [리소스]에서 Webhook를 선택한 다음, 웹후크 추가를 선택합니다.
  3. 새 webhook 만들기를 선택합니다.
  4. 새 webhook 만들기 대화 상자에서 여러 가지 값을 구성해야 합니다. 값을 구성한 후 만들기를 선택합니다.
    • 이름. 이름은 클라이언트에 노출되지 않으므로 원하는 webhook 이름을 지정합니다. Azure Automation에서 Runbook을 식별하는 용도로만 사용됩니다.
    • Enabled. webhook는 생성될 때 기본적으로 사용하도록 설정됩니다. 사용 안함으로 설정할 경우 어떤 클라이언트도 webhook를 사용할 수 없습니다.
    • 만료. webhook마다 만료 날짜가 있으며, 이 날짜가 되면 더 이상 webhook를 사용할 수 없습니다. webhook를 만든 후에도 webhook가 아직 만료되지 않았다면 날짜를 수정할 수 있습니다.
    • URL. webhook URL은 클라이언트가 webhook에 연결된 Runbook을 시작하기 위해 HTTP POST를 통해 호출하는 고유한 주소입니다. webhook를 만들 때 자동으로 생성되며 사용자 지정 URL을 지정할 수 없습니다. URL에는 타사 시스템이 추가 인증 없이 runbook을 호출할 수 있게 해주는 보안 토큰이 포함됩니다. 이러한 이유로 암호처럼 취급해야 합니다. webhook를 만들 때 보안상의 이유로 Azure Portal에서만 URL을 볼 수 있습니다. 나중에 사용할 수 있도록 안전한 곳에 URL을 기록해 두세요.웹후크 매개 변수 값의 흐름과 그 흐름 방식을 보여주는 다이어그램. 웹후크가 수신 HTTP POST 요청으로 시작됩니다.

참고 항목

webhook를 만들 때 webhook URL을 복사하여 안전한 곳에 저장해 두어야 합니다. webhook를 만든 후에는 URL을 다시 검색할 수 없습니다.

  1. 매개 변수 실행 설정(기본값: Azure) 옵션을 선택합니다. 이 옵션은 다음 작업을 완료할 수 있는 다음과 같은 특징이 있습니다.

    • Runbook에 필수 매개 변수가 있는 경우 Runbook을 만들 때 이러한 필수 매개 변수를 제공해야 합니다. 값을 제공하지 않으면 webhook를 만들 수 없습니다.
    • Runbook에 필수 매개 변수가 없으면 여기서 반드시 수행해야 하는 구성도 없습니다.
    • webhook는 Runbook 필수 매개 변수의 값과 선택적 매개 변수의 값을 포함해야 합니다.
    • 클라이언트는 webhook를 사용하여 Runbook을 시작할 때 정의된 매개 변수 값을 재정의할 수 없습니다.
    • 클라이언트에서 데이터를 수신하려면 클라이언트가 POST 요청에 포함시키는 데이터를 포함하고 있는 [object] 형식의 $WebhookData라는 단일 매개 변수를 Runbook에서 수락하면 됩니다.
    • $WebhookData 매개 변수를 지원하는 데 필요한 웹후크 구성은 없습니다.웹후크를 생성한 후에 해당 URL을 볼 수 없음을 설명하는 경고의 스크린샷. 확인을 누르기 전에 복사하세요.
  2. 모두 마쳤으면 만들기를 선택합니다.

webhook 사용

만들어진 후에 webhook를 사용하려면 클라이언트 애플리케이션이 webhook의 URL로 HTTP POST를 실행해야 합니다.

  • webhook의 구문 형식은 다음과 같습니다.

      http://< Webhook Server >/token?=< Token Value >
    
    
  • 클라이언트는 POST 요청으로부터의 다음 반환 코드 중 하나를 받게 됩니다.

    코드 테스트 설명
    202 수락됨 요청이 수락되었고 runbook에서 대기합니다.
    400 잘못된 요청 Runbook이 만료되었거나 사용하지 않도록 설정되었거나 URL의 토큰이 잘못되어 요청이 수락되지 않았습니다.
    404 찾을 수 없음 webhook, Runbook 또는 계정을 찾을 수 없어서 요청이 수락되지 않았습니다.
    500 내부 서버 오류
  • 성공하면 webhook 응답에 다음과 같이 JSON 형식의 작업 ID가 포함됩니다.

    {"JobIds":["< JobId >"]}
    
    

    응답에는 단일 작업 ID가 포함되지만 JSON 형식을 사용하면 향후 개선이 가능합니다.

  • Runbook 작업이 완료된 시기를 확인하거나 webhook에서 완료 상태를 확인할 수 없습니다. PowerShell 또는 Azure Automation API와 같은 다른 방법으로 작업 ID를 사용해야만 이 정보를 선택할 수 있습니다.

자세한 내용은 webhook를 사용하여 Azure Automation Runbook 시작 페이지를 참조하세요.