다음을 통해 공유


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

적용 대상: Azure Logic Apps(사용량)

이 자습서에서는 Azure Logic Apps를 사용하여 승인 기반 작업을 자동화하는 예 워크플로를 작성하는 방법을 보여 줍니다. 이 예에서는 MailChimp에서 관리하는 메일 그룹에 대한 구독 요청을 처리하는 사용량 논리 앱 워크플로를 구체적으로 만듭니다.

워크플로는 이메일 계정에서 요청을 모니터링하고, 수신된 요청을 승인을 위해 보내고, 요청이 승인되었는지 확인하고, 승인된 멤버를 메일 그룹에 추가하고, 새 멤버가 목록에 추가되었는지 확인하는 것으로 시작합니다.

완료되면 워크플로는 다음의 상위 수준 예와 같습니다.

사용량 상위 수준 워크플로 예를 보여 주는 스크린샷.

자세한 내용은 Azure Copilot에 다음 질문을 하면 됩니다.

  • Azure Logic Apps란?
  • 사용량 논리 앱 워크플로란?

Azure Copilot을 찾으려면 Azure Portal 도구 모음에서 Copilot을 선택합니다.

Azure Blob Storage와 같은 일부 커넥터 작업을 기본 제공 서비스 공급자 기반 작업으로 사용할 수 있는 표준 논리 앱 리소스를 활용하여 유사한 워크플로를 만들 수 있습니다. 그러나 사용자 환경 및 자습서 단계는 사용량 버전과 약간 다릅니다.

필수 구성 요소

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

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

  • 승인 워크플로를 지원하는 Office 365 Outlook 또는 Outlook.com의 이메일 계정. 다른 이메일 공급자의 경우 Azure Logic Apps용 커넥터를 참조하세요.

    이 자습서에서는 회사 또는 학교 계정으로 Office 365 Outlook을 사용합니다. 다른 이메일 계정을 사용하는 경우 일반적인 단계는 동일하지만 사용자 환경이 약간 다를 수 있습니다. Outlook.com을 사용하는 경우 개인 Microsoft 계정을 사용하여 로그인합니다.

    중요

    Gmail 커넥터를 사용하려는 경우 G Suite 비즈니스 계정만 논리 앱 워크플로에서 제한 없이 이 커넥터를 사용할 수 있습니다. Gmail 소비자 계정이 있는 경우 특정 Google 승인 서비스에서만 이 커넥터를 사용하거나 Gmail 커넥터 인증에 사용할 Google 클라이언트 앱을 만들 수 있습니다. 자세한 내용은 Azure Logic Apps의 Google 커넥터에 대한 데이터 보안 및 개인정보처리방침을 참조하세요.

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

사용량 논리 앱 리소스 만들기

  1. Azure Portal에서 Azure 계정을 사용하여 로그인합니다.

  2. Azure Portal 검색 상자에 논리 앱을 입력하고 논리 앱을 선택합니다.

    Azure Portal 검색 상자에 논리 앱이 입력되고 논리 앱에 대한 옵션이 선택된 것을 보여 주는 스크린샷.

  3. Logic Apps 페이지 도구 모음에서 추가를 선택합니다.

    논리 앱 만들기 페이지가 나타나고 다음 옵션이 표시됩니다.

    계획 설명
    사용량 다중 테넌트 Azure Logic Apps에서 실행되는 단 하나의 워크플로만 지원하고 청구를 위한 사용량 모델을 사용하는 논리 앱 리소스를 만듭니다.
    Standard 여러 워크플로를 지원하는 논리 앱 리소스를 만듭니다. 다음 옵션이 있습니다.

    - 워크플로 서비스 계획: 워크플로는 단일 테넌트 Azure Logic Apps에서 실행되며 청구를 위해 표준 모델을 사용합니다.

    - App Service Environment V3: 워크플로는 단일 테넌트 Azure Logic Apps에서 실행되며 청구를 위해 App Service Environment 계획을 사용합니다.

    - 하이브리드: 워크플로는 Kubernetes KEDA(이벤트 기반 자동 크기 조정)를 사용하여 온-프레미스 및 여러 클라우드에서 실행됩니다. 자세한 내용은 하이브리드 배포를 위한 표준 워크플로 만들기를 참조하세요.
  4. 논리 앱 만들기 페이지에서 사용량(다중 테넌트)을 선택합니다.

  5. 기본 사항 탭에서 논리 앱 리소스에 대한 다음 정보를 제공합니다.

    속성 필수 설명
    구독 < Azure-subscription-name> Azure 구독 이름.

    이 예에서는 종량제를 사용합니다.
    리소스 그룹 < Azure 리소스 그룹 이름> 논리 앱 및 관련 리소스를 만드는 Azure 리소스 그룹입니다. 해당 이름은 모든 Azure 지역에서 고유해야 하고 문자, 숫자, 하이픈(-), 밑줄(_), 괄호(()), 마침표(.)만 포함할 수 있습니다.

    이 예에서는 LA-MailingList-RG라는 리소스 그룹을 만듭니다.
    논리 앱 이름 < logic-app-resource-name> 모든 Azure 지역에서 고유해야 하고 문자, 숫자, 하이픈(-), 밑줄(_), 괄호(()) 및 마침표(.)만 포함할 수 있는 논리 앱 리소스 이름입니다.

    이 예에서는 LA-MailingList라는 논리 앱 리소스를 만듭니다.
    지역 < Azure 지역> 앱의 Azure 데이터 센터 지역.

    이 예제에서는 미국 서부를 사용합니다.
    로그 분석 사용 아니요 진단 로깅을 사용하도록 설정하려는 경우에만 이 옵션을 변경합니다. 이 자습서에서는 기본 선택을 유지합니다.

    참고: 이 옵션은 사용량 논리 앱에서만 사용할 수 있습니다.

    참고

    가용성 영역은 가용성 영역을 지원하는 Azure 지역의 신규 및 기존 사용량 논리 앱 워크플로에 대해 자동으로 사용하도록 설정됩니다. 자세한 내용은 Azure Functions 내 안정성을 참조하고 영역 중복성 및 가용성 영역 지역 오류로부터 논리 앱을 보호합니다.

    완료한 후 설정은 다음 예제와 유사하게 표시됩니다.

    Azure Portal과 다중 테넌트 사용량 논리 앱에 대한 만들기 페이지 및 세부 정보를 보여 주는 스크린샷.

  6. 완료되면 검토 + 만들기를 선택합니다. Azure에서 논리 앱 리소스에 대한 정보의 유효성을 검사한 후 만들기를 선택합니다.

  7. Azure에서 논리 앱 리소스를 배포한 후 리소스로 이동을 선택합니다. 또는 Azure 검색 상자를 사용하여 논리 앱 리소스를 찾아 선택합니다.

이메일 확인을 위한 트리거 추가

다음 단계에서는 구독 요청이 있는 수신 이메일을 기다리는 트리거를 추가합니다.

  1. 논리 앱 메뉴의 개발 도구에서 논리 앱 디자이너를 선택합니다.

  2. 워크플로 디자이너에서 다음 일반적인 단계에 따라 새 전자 메일이 도착하는 경우라는 Office 365 Outlook 트리거를 추가합니다.

    Office 365 Outlook 커넥터를 사용하려면 Microsoft 회사 또는 학교 계정으로 로그인해야 합니다. 개인 Microsoft 계정을 사용하는 경우 Outlook.com 커넥터를 사용합니다.

  3. 전자 메일 계정에 로그인하여 워크플로와 전자 메일 계정 간에 연결을 만듭니다.

  4. 트리거 정보 상자의 고급 매개 변수 목록에서 다음 매개 변수가 나타나지 않으면 매개 변수를 추가하고 다음 정보를 제공합니다.

    매개 변수 설명
    중요도 임의 원하는 이메일의 중요도 수준을 지정합니다.
    폴더 받은 편지함 확인할 전자 메일 폴더입니다.
    제목 필터 subscribe-test-members-ML 이메일 제목에서 찾을 텍스트를 지정하고 제목 줄을 기준으로 이메일을 필터링합니다.

    참고

    일부 편집 상자 내부를 선택하면 동적 콘텐츠 목록(번개 아이콘)과 식 편집기(함수 아이콘)에 대한 옵션이 나타나는데, 지금은 무시해도 됩니다.

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

    완료되면 트리거는 다음 예제와 유사합니다.

    '새 이메일이 도착하면'이라는 트리거가 있는 소비 워크플로를 보여 주는 스크린샷.

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

이제 워크플로가 라이브 상태이지만 다른 어떤 작업도 수행하지 않고 전자 메일을 확인합니다. 다음으로, 트리거가 실행될 때 응답하는 작업을 추가합니다.

승인 이메일을 보내는 작업 추가

다음 단계에서는 요청을 승인하거나 거부하는 이메일을 보내는 작업을 추가합니다.

  1. 디자이너에서 새 이메일이 도착하면라는 트리거 아래에 다음 일반 단계에 따라 Office 365 Outlook 작업인 승인 이메일 보내기라는 작업을 추가합니다.

  2. 승인 이메일 보내기 작업의 경우 다음 정보를 제공합니다.

    속성 필수 설명
    수행할 작업 < 승인자-이메일-주소> 승인자의 이메일 주소입니다. 테스트하려면 사용자의 주소를 사용합니다.
    Subject 아니요 < 전자 메일 제목> 설명이 포함된 이메일 제목.

    이 예에서는 test-members-ML에 대한 멤버 요청 승인을 사용합니다.

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

    완료되면 승인 이메일 보내기 작업은 다음 예와 같습니다.

    승인 이메일 보내기라는 작업에 대한 정보를 보여 주는 스크린샷.

  3. 워크플로를 저장합니다.

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

승인 응답을 확인하는 작업 추가

  1. 디자이너의 승인 이메일 보내기 작업에서 조건이라는 컨트롤 작업을 추가하려면 다음 일반 단계를 따릅니다.

  2. 조건 작업 창에서 작업 이름을 요청이 승인된 경우로 변경합니다.

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

    1. 매개 변수 탭의 AND 목록 아래 첫 번째 행의 왼쪽 상자 내에서 선택한 다음 동적 콘텐츠 목록(번개 아이콘)을 선택합니다. 이 목록의 승인 이메일 보내기 섹션에서 SelectedOption 출력을 선택합니다.

      두 번째 행에서 커서가 가장 왼쪽 상자에 있고, 동적 콘텐츠 목록이 열려 있으며, SelectedOption이 선택된 상태의 조건 작업을 보여 주는 스크린샷.

    2. 가운데 상자에서 같음이라는 연산자를 그대로 유지합니다.

    3. 오른쪽 상자에 승인을 입력합니다.

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

    승인 워크플로 예의 완료된 상태를 보여 주는 스크린샷.

  4. 워크플로를 저장합니다.

MailChimp 목록에 멤버를 포함하는 작업 추가

다음 단계에서는 메일 그룹에 승인된 멤버를 포함하는 작업을 추가합니다.

  1. 조건의 True 블록에서 다음 일반 단계에 따라 목록에 멤버 추가라는 MailChimp 작업을 추가합니다.

  2. MailChimp 계정에 로그인하고 액세스를 권한 부여하면 워크플로와 MailChimp 계정이 연결됩니다.

  3. 목록에 멤버 추가 작업에서 다음 정보를 제공합니다.

    매개 변수 필수 설명
    목록 Id < mailing-list-name> MailChimp 메일 그룹의 이름.

    이 예에서는 test-members-ML을 사용합니다.
    상태 < 회원 구독 상태> 신규 멤버의 구독 상태.

    이 예에서는 구독을 선택합니다.
    이메일 주소 < member-email-address> 새로운 멤버의 이메일 주소.

    1. 이메일 주소 상자 내부를 선택한 다음 동적 콘텐츠 목록(번개 아이콘)을 선택합니다.

    동적 콘텐츠 목록의 새 이메일이 도착하면 섹션에서 트리거 출력인 보낸 사람을 선택합니다.

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

    완료되면 목록에 멤버 추가 작업은 다음 예와 같습니다.

    목록에 멤버 추가라는 MailChimp 작업에 대한 정보를 보여 주는 스크린샷.

  4. 워크플로를 저장합니다.

성공 또는 실패를 확인하는 작업 추가

다음 단계에서는 새 멤버가 메일 그룹에 성공적으로 조인했는지 확인하는 조건을 추가합니다. 그러면 워크플로를 통해 작업이 성공했는지 실패했는지 알 수 있습니다.

  1. True 블록의 목록에 멤버 추가 작업 아래에서 다음 일반 단계에 따라 조건이라는 제어 작업을 추가합니다.

  2. 조건의 이름을 멤버 추가가 성공한 경우로 변경합니다.

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

    1. 매개 변수 탭의 AND 목록 아래 첫 번째 행의 왼쪽 상자 내에서 선택한 다음 동적 콘텐츠 목록(번개 아이콘)을 선택합니다. 이 목록의 목록에 멤버 추가 섹션에서 상태 출력을 선택합니다.

    2. 가운데 상자에서 같음이라는 연산자를 그대로 유지합니다.

    3. 오른쪽 상자에 구독을 입력합니다.

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

    추가된 멤버를 확인하기 위한 완료 상태를 보여 주는 스크린샷.

성공 이메일을 보내는 작업 추가

다음 단계에서는 워크플로가 메일 그룹에 멤버를 추가하는 데 성공하면 성공 이메일을 보내는 작업을 추가합니다.

  1. 멤버 추가 성공 조건에 대한 True 블록에서 다음 일반 단계에 따라 이메일 보내기라는 Office 365 Outlook 작업을 추가합니다.

  2. 이메일 보내기 작업의 이름을 성공 시 이메일 보내기로 변경합니다.

  3. 성공 시 이메일 보내기 작업에서 다음 정보를 제공합니다.

    매개 변수 필수 설명
    수행할 작업 < recipient-email-address> 이메일 수신자의 이메일 주소. 테스트를 위해 자신의 이메일 주소를 사용합니다.
    Subject < 성공-이메일-제목> 성공 이메일의 제목입니다. 이 예제에서는 다음 단계를 따릅니다.

    1. 맨 뒤에 공백을 두고 다음 텍스트를 입력합니다. 성공! test-members-ML에 멤버가 추가됨:

    2. 제목 상자 내부를 선택하고 동적 콘텐츠 목록 옵션(번개 아이콘)을 선택합니다.

    3. 목록에 멤버 추가 섹션에서 이메일 주소를 선택합니다.

    참고: 이 출력이 나타나지 않으면 목록에 멤버 추가 섹션 이름 옆에 있는 자세히 보기를 선택합니다.
    본문 < 성공-이메일-본문> 성공 이메일의 본문 콘텐츠입니다. 이 예제에서는 다음 단계를 따릅니다.

    1. 맨 뒤에 공백을 두고 다음 텍스트를 입력합니다. 멤버 옵트인 상태:

    2. 본문 상자 내부를 선택하고 동적 콘텐츠 목록 옵션(번개 아이콘)을 선택합니다.

    3. 목록에 멤버 추가 섹션에서 상태를 선택합니다.

    작업을 마치면 다음 예제와 같이 동작이 표시됩니다.

    성공 시 이메일 보내기라는 작업에 대한 정보를 보여 주는 스크린샷.

  4. 워크플로를 저장합니다.

실패 이메일을 보내는 작업 추가

다음 단계에서는 워크플로가 메일 그룹에 멤버를 추가하는 데 실패할 경우 실패 이메일을 보내는 작업을 추가합니다.

  1. 멤버 추가가 성공한 경우 조건에 대한 False 블록에서 다음 일반 단계에 따라 이메일 보내기라는 Office 365 Outlook 작업을 추가합니다.

  2. 이메일 보내기 작업의 이름을 실패 시 이메일 보내기로 변경합니다.

  3. 실패 시 이메일 보내기 작업에서 다음 정보를 제공합니다.

    매개 변수 필수 설명
    수행할 작업 < recipient-email-address> 이메일 수신자의 이메일 주소. 테스트를 위해 자신의 이메일 주소를 사용합니다.
    Subject < 실패-이메일-제목> 실패 이메일의 제목입니다. 이 예제에서는 다음 단계를 따릅니다.

    1. 맨 뒤에 공백을 넣어 다음 텍스트를 입력합니다. 실패, test-members-ML에 멤버가 추가되지 않았습니다.

    2. 제목 상자 내부를 선택하고 동적 콘텐츠 목록 옵션(번개 아이콘)을 선택합니다.

    3. 목록에 멤버 추가 섹션에서 이메일 주소를 선택합니다.

    참고: 이 출력이 나타나지 않으면 목록에 멤버 추가 섹션 이름 옆에 있는 자세히 보기를 선택합니다.
    본문 < 실패-이메일-본문> 실패 이메일의 본문 콘텐츠입니다.

    이 예에서는 다음 텍스트를 입력합니다. 멤버가 이미 존재할 수 있습니다. MailChimp 계정을 확인합니다.

    작업을 마치면 다음 예제와 같이 동작이 표시됩니다.

    실패 시 이메일 보내기라는 작업에 대한 정보를 보여 주는 스크린샷.

  4. 워크플로를 저장합니다.

완성된 워크플로는 다음 예와 비슷합니다.

완료된 워크플로의 예를 보여 주는 스크린샷.

워크플로 테스트

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

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

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

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

  4. 구독자의 이메일 주소가 메일 그룹에 없는 경우 워크플로는 해당 사람의 이메일 주소를 추가하고 다음 예와 같은 이메일을 보냅니다.

    구독이 성공적으로 이루어졌을 때의 이메일 예를 보여 주는 스크린샷.

  5. 워크플로에서 구독자를 추가할 수 없는 경우 다음 예와 같은 이메일이 전송됩니다.

    구독 실패 시 발송되는 이메일의 예를 보여 주는 스크린샷.

이메일을 받지 못한 경우 이메일의 정크 폴더를 확인합니다. 그렇지 않으면 논리 앱이 올바르게 실행되는지 모르는 경우 논리 앱 문제 해결을 참조하세요.

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

리소스 정리

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

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

  1. Azure Portal 검색 상자에 리소스 그룹을 입력하고 리소스 그룹을 선택합니다.

  2. 리소스 그룹 목록에서 이 자습서에 대한 리소스 그룹을 선택합니다.

  3. 리소스 그룹 메뉴에서 개요를 선택합니다.

  4. 개요 페이지 도구 모음에서 리소스 그룹 삭제를 선택합니다.

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

다음 단계

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