자습서: Azure Logic Apps를 사용하여 자동화된 승인 기반 워크플로 만들기

적용 대상: Azure Logic Apps(소비)

이 자습서에서는 승인 기반 작업을 자동화하는 예제 논리 앱 워크플로를 빌드하는 방법을 보여 줍니다. 특히 이 예제 워크플로 앱은 MailChimp 서비스를 통해 관리되는 메일 목록에 대한 구독 요청을 처리합니다. 이 워크플로에는 요청에 대한 이메일 계정을 모니터링하여 시작하는 다양한 단계가 포함되며, 승인을 받기 위해 이러한 요청을 보내고, 요청이 승인되었는지 확인하고, 승인된 구성원을 메일 목록에 추가하고, 새 구성원이 목록에 추가되었는지 확인합니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • 빈 논리 앱을 만듭니다.
  • 구독 요청에 대한 이메일을 모니터링하는 트리거를 추가합니다.
  • 이러한 요청을 승인 또는 거부하는 이메일을 보내는 작업을 추가합니다.
  • 승인 응답을 확인하는 조건을 추가합니다.
  • 승인된 구성원을 메일 그룹에 추가하는 작업을 추가합니다.
  • 이러한 구성원이 목록에 성공적으로 조인되었는지 확인하는 조건을 추가합니다.
  • 이러한 구성원이 목록에 성공적으로 조인되었는지 확인하는 이메일을 보내는 작업을 추가합니다.

여기까지 모두 마치면 워크플로가 고수준의 이 버전과 비슷하게 보입니다.

High-level finished logic app overview

필수 조건

  • Azure 계정 및 구독 구독이 없는 경우 Azure 체험 계정에 등록합니다.

  • 논리 앱이 승인된 구성원의 이메일 주소를 추가할 수 있는 "test-members-ML"이라는 목록을 만든 MailChimp 계정. 계정이 없는 경우 체험 계정에 가입하고 MailChimp 목록을 만드는 방법을 알아보세요.

  • Azure Logic Apps에서 지원하는 이메일 공급자(예: Office 365 Outlook, Outlook.com 또는 Gmail)의 이메일 계정. 다른 공급자에 대한 내용은 여기서 커넥터 목록을 검토하세요. 이 빠른 시작에서는 회사 또는 학교 계정으로 Office 365 Outlook을 사용합니다. 다른 이메일 계정을 사용하는 경우 일반적인 단계는 동일하지만 UI가 약간 다를 수 있습니다.

  • 승인 워크플로를 지원하는 Office 365 Outlook 또는 Outlook.com의 이메일 계정. 이 자습서에서는 Office 365 Outlook을 사용합니다. 다른 이메일 계정을 사용하는 경우 일반적인 단계는 동일하지만 UI가 약간 다르게 표시될 수 있습니다.

  • 논리 앱 워크플로가 트래픽을 특정 IP 주소로 제한하는 방화벽을 통해 통신해야 하는 경우 해당 방화벽은 논리 앱 리소스가 있는 Azure 지역의 Azure Logic Apps에서 사용하는 인바운드아웃바운드 IP 주소 모두에 대한 액세스를 허용해야 합니다. 논리 앱에서 Office 365 Outlook 커넥터 또는 SQL 커넥터와 같은 관리형 커넥터를 사용하거나 사용자 지정 커넥터를 사용하는 경우 방화벽은 논리 앱의 Azure 지역에 있는 관리형 커넥터 아웃바운드 IP 주소모두에 대한 액세스도 허용해야 합니다.

논리 앱 리소스 만들기

  1. Azure 계정 자격 증명을 사용하여 Azure Portal에 로그인합니다. Azure 홈 페이지에서 리소스 만들기를 선택합니다.

  2. Azure Marketplace 메뉴에서 통합>논리 앱을 선택합니다.

    Screenshot that shows Azure Marketplace menu with

  3. 논리 앱 창에서 만들려는 논리 앱 리소스에 대해 설명하는 정보를 여기에 입력합니다.

    Screenshot that shows the Logic App creation pane and the info to provide for the new logic app.

    속성 Description
    구독 <Azure-subscription-name> Azure 구독 이름. 이 예제에서는 Pay-As-You-Go를 사용합니다.
    리소스 그룹 LA-MailingList-RG 관련 리소스를 구성하는 데 사용되는 Azure 리소스 그룹의 이름입니다. 이 예제는 새 리소스 그룹 LA-MailingList-RG를 만듭니다.
    이름 LA-MailingList 문자, 숫자, 하이픈(-), 밑줄(_), 괄호((, )) 및 마침표(.)만 포함할 수 있는 논리 앱의 이름입니다. 이 예제에서는 LA-MailingList를 사용합니다.
    위치 미국 서부 논리 앱 정보를 저장할 지역입니다. 이 예제에서는 West US를 사용합니다.
    플랜 유형 Consumption
    Log Analytics 꺼짐 진단 로깅에 대해 꺼짐 설정을 유지합니다.
  4. 완료되면 검토 + 만들기를 선택합니다. Azure가 논리 앱에 대한 정보의 유효성을 검사한 후에는 만들기를 선택합니다.

  5. Azure가 앱을 배포한 후 리소스로 이동을 선택합니다.

    Azure가 템플릿 선택 창을 엽니다. 이 창은 소개 비디오, 일반적으로 사용되는 트리거 및 논리 앱 템플릿 패턴을 보여 줍니다.

  6. 비디오와 일반 트리거를 지나 템플릿 섹션이 나올 때까지 아래로 스크롤하고, 비어 있는 논리 앱을 선택합니다.

    Screenshot that shows the Logic Apps template selection pane with

다음으로, 구독 요청이 있는 수신 이메일을 수신 대기하는 Outlook 트리거를 추가합니다. 각 논리 앱은 특정 이벤트가 발생하거나 새 데이터가 특정 조건을 충족할 때 실행되는 트리거를 통해 시작되어야 합니다. 자세한 내용은 빠른 시작: 다중 테넌트 Azure Logic Apps에서 사용량 논리 앱 워크플로 예제 만들기를 참조하세요.

이메일을 모니터링하는 트리거 추가

  1. 워크플로 디자이너 검색 상자에 when email arrives를 입력하고 새 이메일이 도착하는 경우라는 트리거를 선택합니다.

    • Azure 회사 또는 학교 계정인 경우 Office 365 Outlook을 선택합니다.
    • Microsoft 개인 계정인 경우 Outlook.com을 선택합니다.

    이 예제에서는 Office 365 Outlook을 선택하여 진행합니다.

    Screenshot that shows the Logic Apps Designer search box that contains the

  2. 아직 연결이 설정되지 않은 경우 로그인하고 메시지가 표시되면 이메일 계정에 대한 액세스를 인증합니다.

    Azure Logic Apps가 이메일 계정에 연결합니다.

  3. 트리거에서 새 이메일을 확인하는 기준을 입력합니다.

    1. 이메일을 확인하는 폴더를 지정하고, 다른 속성은 기본값을 유지합니다.

      Screenshot that shows the designer with the

    2. 제목 줄을 기준으로 이메일을 필터링할 수 있도록 트리거의 제목 필터 속성을 추가합니다. 새 매개 변수 추가 목록을 열고 제목 필터를 선택합니다.

      Screenshot that shows the opened

      이 트리거의 속성에 대한 자세한 내용은 Office 365 Outlook 커넥터 참조 또는 Outlook.com 커넥터 참조에서 확인할 수 있습니다.

    3. 트리거에 속성이 표시되면 subscribe-test-members-ML 텍스트를 입력합니다.

      Screenshot that shows the

  4. 지금은 트리거의 세부 정보를 숨기기 위해 셰이프의 제목 표시줄 내부를 클릭하여 셰이프를 축소합니다.

    Screenshot that shows the collapsed trigger shape.

  5. 논리 앱 워크플로 저장 디자이너 도구 모음에서 저장을 선택합니다.

이제 논리 앱이 라이브 상태이지만 수신 이메일을 확인하는 것 외에는 아무 것도 수행하지 않습니다. 따라서 트리거가 실행되면 응답하는 작업을 추가해 보겠습니다.

승인 이메일 보내기

트리거가 생겼으니, 요청을 승인 또는 거부하는 이메일을 보내는 작업을 추가합니다.

  1. 워크플로 디자이너의 새 이메일이 도착하는 경우 트리거에서 새 단계를 선택합니다.

  2. 작업 선택 아래의 검색 상자에 send approval을 입력하고 승인 이메일 보내기라는 작업을 선택합니다.

    Screenshot that shows the

  3. 여기에 설명된 대로 지정된 속성의 값을 입력합니다. 나머지는 기본값으로 둡니다. 이러한 속성에 대한 자세한 내용은 Office 365 Outlook 커넥터 참조 또는 Outlook.com 커넥터 참조에서 확인할 수 있습니다.

    Screenshot that shows the

    속성 설명
    받는 사람 <approval-email-address> 승인자의 이메일 주소입니다. 자신의 주소를 사용하여 테스트할 수 있습니다. 이 예제에서는 가상의 이메일 주소 sophiaowen@fabrikam.com을 사용합니다.
    주제 Approve member request for test-members-ML 설명이 포함된 이메일 제목
    사용자 옵션 Approve, Reject 이 속성이 승인자가 선택할 수 있는 응답 옵션(기본적으로 승인 또는 거부)을 지정하는지 확인합니다.

    참고 항목

    편집 상자 내부를 클릭하면 동적 콘텐츠 목록이 표시되는데, 지금은 무시해도 됩니다. 이 목록은 워크플로의 후속 작업에 대한 입력으로 선택할 수 있는 이전 작업의 출력을 보여줍니다.

  4. 논리 앱 워크플로 저장

다음으로, 승인자가 선택한 응답을 확인하는 조건을 추가합니다.

승인 응답 확인

  1. 승인 이메일 보내기 작업에서 새 단계를 선택합니다.

  2. 작업 선택에서 기본 제공을 선택합니다. 검색 상자에 condition을 입력하고 조건이라는 작업을 선택합니다.

    Screenshot that shows the

  3. 조건 제목 표시줄에서 줄임표(...) 단추를 선택한 다음, 이름 바꾸기를 선택합니다. If request approved 설명이 포함되도록 조건 이름을 바꿉니다.

    Screenshot that shows the ellipses button selected with the

  4. 승인자가 승인을 선택했는지 확인하는 조건을 작성합니다.

    1. 조건의 왼쪽에서 값 선택 상자 내부를 클릭합니다.

    2. 표시되는 동적 콘텐츠 목록의 승인 이메일 보내기 아래에서 SelectedOption 속성을 선택합니다.

      Screenshot that shows the dynamic content list where in the

    3. 가운데 비교 상자에서 같음 연산자를 선택합니다.

    4. 조건의 오른쪽에 있는 값 선택 상자에 Approve 텍스트를 입력합니다.

      완료되면 조건이 다음 예와 같습니다.

      Screenshot that shows the finished condition for the approved request example

  5. 논리 앱 워크플로 저장

다음으로, 검토자가 요청을 승인할 때 논리 앱에서 수행하는 작업을 지정합니다.

MailChimp 목록에 구성원 추가

이제 메일 그룹에 승인된 구성원을 추가하는 작업을 추가합니다.

  1. 조건의 True 분기에서 작업 추가를 선택합니다.

  2. 작업 선택 검색 상자에서 모두를 선택합니다. 검색 상자에 mailchimp를 입력하고 목록에 구성원 추가라는 작업을 선택합니다.

    Screenshot that shows the

  3. 아직 MailChimp 계정에 연결하지 않은 경우 연결하라는 메시지가 표시됩니다.

  4. 목록에 구성원 추가 작업에서, 여기에 설명된 대로 정보를 제공합니다.

    Screenshot that shows the

    속성 필요함 설명
    목록 Id <mailing-list-name> MailChimp 메일 목록의 이름을 선택합니다. 이 예제에서는 test-members-ML를 사용합니다.
    이메일 주소 <new-member-email-address> 열리는 동적 콘텐츠 목록의 새 이메일이 도착하는 경우 섹션에서, 트리거의 출력인 보낸 사람을 선택하고 새 구성원의 이메일 주소를 지정합니다.
    상태 <member-subscription-status> 새 구성원에 대해 설정할 구독 상태를 선택합니다. 이 예제에서는 subscribed를 선택합니다.

    자세한 내용은 MailChimp API로 구독자 관리를 참조하세요.

    목록에 구성원 추가 작업 속성에 대한 자세한 내용은 MailChimp 커넥터 참조에서 확인할 수 있습니다.

  5. 논리 앱 워크플로 저장

다음으로, 새 구성원이 메일 그룹에 성공적으로 조인했는지 확인할 수 있도록 조건을 추가합니다. 이렇게 하면 논리 앱에서 이 작업의 성공 또는 실패 여부를 알려줄 수 있습니다.

성공 또는 실패 여부 확인

  1. true 분기의 목록에 구성원 추가 작업 아래에서 작업 추가를 선택합니다.

  2. 작업 선택에서 기본 제공을 선택합니다. 검색 상자에 condition을 입력하고 조건이라는 작업을 선택합니다.

  3. If add member succeeded 설명이 포함되도록 조건 이름을 바꿉니다.

  4. 승인된 구성원이 메일 그룹에 성공적으로 조인했는지 아니면 실패했는지 확인하는 조건을 작성합니다.

    1. 조건의 왼쪽에서 값 선택 상자 내부를 클릭합니다. 표시되는 동적 콘텐츠 목록의 목록에 구성원 추가 섹션에서 상태 속성을 선택합니다.

      예를 들어 이제 조건은 다음 예제와 비슷합니다.

      Screenshot that shows the condition's left side

    2. 가운데 비교 상자에서 같음 연산자를 선택합니다.

    3. 조건의 오른쪽에 있는 값 선택 상자에서 subscribed 텍스트를 입력합니다.

      완료되면 조건이 다음 예와 같습니다.

      Screenshot that shows the finished condition for checking successful or failed subscription.

다음으로, 승인된 구성원이 메일 그룹에 성공적으로 조인할 때 또는 조인에 실패할 때 보낼 이메일을 설정합니다.

구성원이 추가되면 이메일 보내기

  1. 구성원 추가가 성공한 경우 조건의 true 분기에서 작업 추가를 선택합니다.

    Screenshot that shows the

  2. 작업 선택 검색 상자에 outlook send email을 입력하고 이메일 보내기라는 작업을 선택합니다.

    Screenshot that shows the

  3. Send email on success 설명이 포함되도록 작업 이름을 바꿉니다.

  4. 성공 시 이메일 보내기 작업에서, 여기에 설명된 대로 정보를 제공합니다.

    Screenshot that shows the

    속성 필요함 설명
    본문 <success-email-body> 성공 이메일의 본문 콘텐츠입니다. 이 자습서에서는 다음 단계를 수행합니다.

    1. 후행 공백이 하나 포함된 New member has joined "test-members-ML": 텍스트를 입력합니다.

    2. 표시되는 동적 콘텐츠 목록에서 이메일 주소 속성을 선택합니다.

    참고: 이 속성이 표시되지 않는 경우 목록에 구성원 추가 섹션 머리글 옆에 있는 자세히 보기를 선택합니다.

    3. 다음 행에서, 후행 공백이 하나 포함된 Member opt-in status: 텍스트를 입력합니다.

    4. 동적 콘텐츠 목록의 목록에 구성원 추가 아래에서 상태 속성을 선택합니다.

    주제 <success-email-subject> 성공 이메일의 제목입니다. 이 자습서에서는 다음 단계를 수행합니다.

    1. 후행 공백이 하나 포함된 Success! Member added to "test-members-ML": 텍스트를 입력합니다.

    2. 동적 콘텐츠 목록의 목록에 구성원 추가 아래에서 이메일 주소 속성을 선택합니다.

    받는 사람 <your-email-address> 성공 이메일을 보낼 위치에 대한 이메일 주소입니다. 자신의 이메일 주소를 사용하여 테스트할 수 있습니다.
  5. 논리 앱 워크플로 저장

구성원이 추가되지 않으면 이메일 보내기

  1. 구성원 추가가 성공한 경우 조건의 False 분기에서 작업 추가를 선택합니다.

    Screenshot that shows the

  2. 작업 선택 검색 상자에 outlook send email을 입력하고 이메일 보내기라는 작업을 선택합니다.

    Screenshot that shows the

  3. Send email on failure 설명이 포함되도록 작업 이름을 바꿉니다.

  4. 여기에 설명된 것처럼 이 작업에 대한 정보를 입력합니다.

    Screenshot that shows the

    속성 필요함 설명
    본문 <body-for-failure-email> 실패 이메일의 본문 콘텐츠입니다. 이 자습서에서는 다음 텍스트를 입력합니다.

    Member might already exist. Check your MailChimp account.

    주제 <subject-for-failure-email> 실패 이메일의 제목입니다. 이 자습서에서는 다음 단계를 수행합니다.

    1. 후행 공백이 하나 포함된 Failed, member not added to "test-members-ML": 텍스트를 입력합니다.

    2. 동적 콘텐츠 목록의 목록에 구성원 추가 아래에서 이메일 주소 속성을 선택합니다.

    받는 사람 <your-email-address> 실패 이메일을 보낼 위치에 대한 이메일 주소입니다. 자신의 이메일 주소를 사용하여 테스트할 수 있습니다.
  5. 논리 앱 워크플로 저장

다음으로 워크플로를 테스트합니다. 이제 이 예제와 유사하게 보입니다.

Screenshot that shows the example finished logic app workflow.

논리 앱 워크플로 실행

  1. 메일 그룹에 조인하라는 이메일 요청을 자신에게 보냅니다. 받은 편지함에 요청이 나타날 때까지 기다립니다.

  2. 워크플로를 수동으로 시작하려면 디자이너 도구 모음에서 트리거 실행>실행을 선택합니다.

    이메일에 트리거의 제목 필터와 일치하는 제목이 있는 경우 워크플로는 구독 요청을 승인하는 이메일을 보냅니다.

  3. 받은 승인 이메일에서 승인을 선택합니다.

  4. 구독자의 이메일 주소가 메일 목록에 없는 경우 워크플로는 해당 인물의 이메일 주소를 추가하고 사용자에게 다음 예제와 비슷한 이메일을 보냅니다.

    Screenshot that shows the example email for a successful subscription.

    워크플로가 구독자를 추가할 수 없으면 이 예제와 비슷한 이메일을 받게 됩니다.

    Screenshot that shows the example email for a failed subscription.

이메일을 받지 못한 경우 이메일의 정크 폴더를 확인합니다. 이메일 정크 필터가 이러한 종류의 메일을 리디렉션할 수 있습니다. 그렇지 않으면 논리 앱이 올바르게 실행되는지 모르는 경우 논리 앱 문제 해결을 참조하세요.

축하드립니다. Azure, Microsoft 서비스 및 기타 SaaS 앱의 정보를 통합하는 논리 앱 워크플로를 만들고 실행하셨습니다.

리소스 정리

논리 앱 리소스를 사용하지 않도록 설정하거나 삭제할 때까지 논리 앱이 계속 실행됩니다. 논리 앱 샘플이 더 이상 필요하지 않으면 논리 앱 및 관련 리소스가 포함된 리소스 그룹을 삭제합니다.

  1. Azure Portal의 검색 상자에 앞에서 만든 리소스 그룹의 이름을 입력합니다. 결과의 리소스 그룹에서 리소스 그룹을 선택합니다.

    이 예제에서는 LA-MailingList-RG라는 리소스 그룹을 만들었습니다.

    Screenshot that shows the Azure search box with

    Azure 홈 페이지의 최근 리소스에 리소스 그룹이 표시되는 경우 홈 페이지에서 그룹을 선택할 수 있습니다.

  2. 리소스 그룹 메뉴에서 개요가 선택되었는지 확인합니다. 개요 창의 도구 모음에서 리소스 그룹 삭제를 선택합니다.

    Screenshot that shows the resource group's

  3. 표시되는 확인 창에서 리소스 그룹 이름을 입력하고 삭제를 선택합니다.

다음 단계

이 자습서에서는 메일 목록 요청에 대한 승인을 처리하는 논리 앱 워크플로를 만들었습니다. 지금부터는 Azure Storage 및 Azure Functions와 같은 Azure 서비스를 통합하여 이메일 첨부 파일을 처리하고 저장하는 논리 앱 워크플로를 만드는 방법을 알아보겠습니다.