SaaS 구독 수명 주기 관리
상업용 Marketplace는 최종 사용자가 구매한 후 SaaS 구독의 전체 수명 주기를 관리합니다. 실제 SaaS 구독 활성화, 사용량, 업데이트 및 취소를 구동하는 메커니즘으로 방문 페이지, 처리 API, 작업 API 및 웹후크를 사용합니다. 최종 사용자의 청구서는 Microsoft에서 유지 관리하는 SaaS 구독의 상태를 기반으로 합니다.
SaaS 구독의 상태
다음 다이어그램은 SaaS 구독의 상태 및 해당 작업을 보여 줍니다.
구입했지만 아직 활성화되지 않음(PendingFulfillmentStart)
최종 사용자 또는 CSP(클라우드 솔루션 공급자)가 상업용 Marketplace에서 SaaS 제품을 구매하면 게시자에게 구매 알림이 전송됩니다. 그런 다음 게시자는 최종 사용자에 대한 게시자 쪽에서 새 SaaS 계정을 만들고 구성할 수 있습니다.
계정이 만들어지는 과정은 다음과 같습니다.
- 고객은 Microsoft AppSource 또는 Azure Portal에서 성공적으로 구매한 후 SaaS 제품에 사용할 수 있는 지금 계정 구성 단추를 선택합니다. 또는 고객은 구매 직후 받게 될 전자 메일의 지금 구성 단추를 사용할 수 있습니다.
- 그러면 Microsoft는 새 브라우저 탭에서 토큰 매개 변수(상업용 Marketplace의 구매 식별 토큰)가 포함된 방문 페이지 URL을 열어서 파트너에게 구매 소식을 알립니다.
이러한 호출의 예는 https://contoso.com/signup?token=<blob>
이지만 파트너 센터에서 이 SaaS 제품의 방문 페이지 URL은 https://contoso.com/signup
으로 구성됩니다. 이 토큰은 게시자에 SaaS 구매 및 고객을 고유하게 식별하는 ID를 제공합니다.
팁
방문 페이지 URL에 파운드 기호 문자(#)를 포함하지 마세요. 그렇지 않으면 고객은 방문 페이지에 액세스할 수 없습니다.
Important
방문 페이지 URL은 하루 종일, 매일 실행되고 항상 Microsoft에서 새 전화를 받을 준비가 되어 있어야 합니다. 방문 페이지를 사용할 수 없게 되면 고객은 SaaS 서비스에 등록하고 사용을 시작할 수 없습니다.
다음으로, 게시자는 SaaS 확인 API를 호출하고 x-ms-marketplace-token header
매개 변수의 값으로 토큰을 입력하여 토큰을 Microsoft에 다시 전달해야 합니다. 확인 API를 호출한 결과로 고유 구매 ID, 구매한 제품 ID, 구매한 플랜 ID와 같은 SaaS 구매 세부 정보와 토큰이 교환됩니다.
방문 페이지에서 고객은 Microsoft Entra SSO(Single Sign-On)를 통해 신규 또는 기존 SaaS 계정에 로그인해야 합니다.
참고 항목
고객이 Microsoft 쪽에서 구성 프로세스를 시작하기 전에는 게시자에게 SaaS 구매 알림이 전달되지 않습니다.
게시자는 이 흐름에 대해 Microsoft에서 요구하는 사용자 환경을 제공하기 위해 SSO를 구현해야 합니다. 다중 테넌트 Microsoft Entra 애플리케이션을 사용하고 SSO를 구성할 때 회사 및 학교 계정 또는 개인 Microsoft 계정을 모두 허용해야 합니다. 이 요구 사항은 Microsoft 자격 증명을 사용하여 이미 로그인한 경우 SaaS 서비스로 리디렉션되는 사용자의 방문 페이지에만 적용됩니다. SaaS 서비스에 대한 모든 로그인에는 SSO가 필요하지 않습니다.
참고 항목
SSO를 사용하려면 관리자가 앱에 권한을 부여해야 하는 경우 파트너 센터의 제품 설명에 관리자 수준 액세스가 필요하다는 것을 공개해야 합니다. 이 공개는 상업용 Marketplace 인증 정책을 준수 하기 위한 것입니다.
로그인 후 고객은 게시자 쪽에서 SaaS 구성을 완료해야 합니다. 그런 다음 게시자는 구독 활성화 API를 호출하여 SaaS 계정의 프로비전이 완료되었다는 신호를 Azure Marketplace에 보내야 합니다. 이 작업은 고객의 청구 주기 시작합니다. 구독 활성화 API 호출이 성공하지 못하면 구매에 대한 요금이 청구되지 않습니다.
구매자와 청구 계정 소유자는 모두 계정 구성을 요청하는 이메일을 받습니다.
참고 항목
게시자는 상태가 PendingFulfillmentStart일 때 자산을 확인하는 데 30일이 있으며, 그렇지 않으면 청구 주기 시작되지 않았고 각 구매에 대한 요금이 청구되지 않아 자산이 무효가 됩니다. 상태가 구독 취소됨으로 변경됩니다. 고객은 구매에 대한 요금이 청구되지 않습니다.
활성(구독됨)
활성(구독됨) 은 프로비전된 SaaS 구독의 안정적인 상태입니다. Microsoft 쪽에서 구독 활성화 API 호출을 처리하면 SaaS 구독이 구독으로 표시됩니다. 이제 고객은 게시자 쪽에서 SaaS 서비스를 사용할 수 있으며 요금이 청구됩니다.
SaaS 구독이 이미 활성 상태인 경우 고객은 Azure Portal 또는 Microsoft 365 관리 센터에서 SaaS 환경 관리를 선택할 수 있습니다. 또한 이 작업을 수행하면 Microsoft는 활성화 흐름에서와 같이 토큰 매개 변수를 사용하여 방문 페이지 URL을 호출합니다. 게시자는 새 구매와 기존 SaaS 계정 관리를 구분하고 이에 따라 이 방문 페이지 URL 호출을 처리해야 합니다.
활성화 알림 이메일은 구매자와 청구 계정 소유자 모두에게 전송됩니다.
업데이트 중(구독)
이 작업은 기존 활성 SaaS 구독에 대한 업데이트가 Microsoft와 게시자 모두에서 처리되고 있음을 의미합니다. 이러한 업데이트는 다음을 통해 시작할 수 있습니다.
- 상업용 Marketplace의 고객입니다.
- 상업용 Marketplace의 CSP입니다.
- 게시자의 SaaS 사이트 고객(CSP가 구매한 제품의 고객은 아님)
SaaS 구독에는 다음 두 가지 유형의 업데이트를 사용할 수 있습니다.
- 고객이 구독에 대한 다른 플랜을 선택할 때 계획을 업데이트합니다.
- 고객이 구독에 대해 구매한 라이선스 수를 변경할 때 수량을 업데이트합니다.
활성 구독만 업데이트할 수 있습니다. 구독이 업데이트되는 동안 해당 상태는 Microsoft 쪽에서 활성 상태로 유지됩니다.
상업용 Marketplace에서 시작된 업데이트
이 흐름에서 고객은 Azure Portal 또는 Microsoft 365 관리 Center에서 구독 계획 또는 라이선스 수량을 변경합니다.
- 업데이트가 입력되면 Microsoft는 action 및 기타 관련 매개 변수의 적절한 값을 사용하여 파트너 센터의 기술 구성 페이지에 있는 연결 웹후크 필드에 구성된 게시자의 webhook URL을 호출합니다.
- 게시자 쪽에서는 SaaS 서비스에 필요한 변경을 수행하고 작업 API의 업데이트 상태를 호출하여 완료되면 Microsoft에 알려야 합니다.
- 패치가 실패 상태로 전송되면 Microsoft 쪽에서 업데이트 프로세스가 완료되지 않습니다. SaaS 구독은 기존 계획 및 라이선스 수량을 유지합니다.
참고 항목
게시자는 webhook 알림을 받은 후 10초 내에 PATCH를 호출하여 작업 상태 API를 실패/성공 응답으로 업데이트해야 합니다. 작업 상태의 PATCH가 10초 이내에 수신되지 않으면 변경 계획이 자동으로 성공으로 패치됩니다.
상업용 Marketplace에서 시작된 업데이트 시나리오에 대한 API 호출 시퀀스는 다음 다이어그램에 나와 있습니다.
게시자에서 시작된 업데이트
이 흐름에서 고객은 SaaS 서비스 자체에서 구매한 라이선스의 구독 계획 또는 수량을 변경합니다.
- 게시자 측에서 요청된 변경을 수행하기 전에 게시자 코드는 계획 변경 API 또는 수량 변경 API 또는 둘 다를 호출해야 합니다.
- Microsoft는 변경 내용을 구독에 적용한 다음, 동일한 변경 내용을 적용하도록 연결 웹후크를 통해 게시자에게 알립니다.
- 그런 후에만 게시자가 SaaS 구독을 필수로 변경하고 작업 API의 업데이트 상태를 호출하여 변경이 완료되면 Microsoft에 알립니다.
게시자 쪽에서 시작된 업데이트 시나리오에 대한 API 호출 시퀀스는 다음 다이어그램에 나와 있습니다.
요금제 변경을 나타내는 알림 전자 메일은 구매자와 청구 계정 소유자 모두에게 전송됩니다.
수량 변경을 나타내는 알림 이메일은 구매자와 청구 계정 소유자 모두에게 전송됩니다.
일시 중단됨(일시 중단됨)
이 상태는 SaaS 서비스에 대한 고객의 결제가 수신되지 않았음을 나타냅니다. Microsoft는 SaaS 구독 상태의 이러한 변경 내용을 게시자에게 알립니다. 알림은 작업 매개 변수가 Suspended로 설정된 웹후크 호출을 통해 수행됩니다.
게시자는 게시자 쪽에서 SaaS 서비스를 변경하거나 변경하지 않을 수 있습니다. 게시자는 이 정보를 일시 중단된 고객에게 제공하고 SaaS 서비스에 대한 고객의 액세스를 제한하거나 차단하는 것이 좋습니다. 결제를 받지 못할 가능성이 있습니다.
참고 항목
Microsoft는 구독을 자동으로 취소하기 전에 고객에게 30일의 유예 기간을 줍니다. 30일의 유예 기간이 지나면 웹후크가 Unsubscribe
작업을 수신합니다.
구독이 일시 중단 상태인 경우:
- 파트너 또는 ISV는 데이터 또는 설정 손실 없이 전체 기능을 복원할 수 있도록 SaaS 계정을 복구 가능한 상태로 유지해야 합니다.
- 파트너 또는 ISV는 유예 기간 동안 지불이 수신된 경우 구독을 복원하라는 요청 또는 유예 기간이 끝날 때 구독 프로비저닝을 취소하라는 요청을 예상해야 합니다. 두 요청은 모두 webhook 메커니즘을 통해 전송됩니다.
게시자가 작업을 수행하기 전에 구독 상태가 Microsoft 쪽에서 일시 중단됨으로 변경됩니다. 활성 구독만 일시 중단될 수 있습니다.
상태가 '일시 중단됨'으로 변경되었음을 나타내는 알림 이메일이 구매자와 청구 계정 소유자 모두에게 전송됩니다.
30일의 일시 중단 기간에 따라 일시 중단 후 취소에 관한 이메일이 구매자와 청구 계정 소유자 모두에게 전송됩니다.
복원됨(일시 중단됨)
이 작업은 고객의 결제 수단이 다시 유효해지고, SaaS 구독에 대한 결제가 이루어졌으며, 구독이 복구되고 있음을 나타냅니다. 이 경우 다음과 같습니다.
- Microsoft는 복구 값으로 설정된 작업 매개 변수를 사용하여 웹후크를 호출 합니다.
- 게시자는 구독이 게시자 쪽에서 다시 완전히 작동하는지 확인합니다.
- 복구 프로세스가 성공하고 고객에게 SaaS 구독에 대한 요금이 다시 청구됩니다.
일시 중단된 구독만 복원할 수 있습니다. 일시 중단된 SaaS 구독은 복원되는 동안 일시 중단된 상태로 유지됩니다. 이 작업이 완료되면 구독의 상태가 활성 상태가 됩니다.
일시 중단된 상태에서 복원된 상태로 전환된 후 구매자와 청구 소유자 모두에게 이메일이 전송됩니다.
갱신됨(구독됨)
SaaS 구독은 월간 또는 연간 구독 기간이 끝날 때 Microsoft에서 자동으로 갱신합니다. 모든 SaaS 구독의 자동 갱신 설정의 기본값은 true입니다. 활성 SaaS 구독은 정기적인 주기로 계속 갱신됩니다. Microsoft는 갱신 이벤트에 대한 정보 전용 웹후크 알림을 제공합니다. 고객은 Microsoft 365 관리 Portal을 통해 SaaS 구독에 대한 자동 갱신을 해제할 수 있습니다. 이 경우 SaaS 구독은 현재 청구 기간 종료 시 자동으로 취소됩니다. 고객은 언제든지 SaaS 구독을 취소할 수 있습니다.
활성 구독만 자동으로 갱신됩니다. 갱신 프로세스가 진행되는 동안 그리고 자동 갱신이 성공하면 구독이 활성 상태를 유지합니다. 갱신 후 구독 기간의 시작 및 종료 날짜가 새 기간의 날짜로 업데이트됩니다.
결제 문제로 인해 자동 갱신이 실패하면 구독이 일시 중단되고 게시자에게 알림이 전달됩니다.
갱신에 대한 미리 알림 전자 메일은 연간/다년 갱신 날짜 30일 전에 구매자와 청구 계정 소유자 모두에게 전송됩니다.
취소됨(구독 취소)
구독은 게시자 사이트, Azure Portal 또는 Microsoft 365 관리 센터에서 구독을 취소하여 명시적 고객 또는 CSP 작업에 대한 응답으로 이 상태에 도달합니다. 또한 30일 동안 일시 중단 상태에 있는 후 회비 미납으로 인해 암시적으로 구독을 취소할 수 있습니다.
게시자가 취소 웹후크 호출을 수신한 후 최소 7일 동안 요청 시 복구를 위한 고객 데이터를 유지해야 합니다. 그런 다음에만 고객 데이터를 삭제할 수 있습니다.
SaaS 구독은 수명 주기 동안 언제든지 취소할 수 있습니다. 구독이 취소된 후에는 다시 활성화할 수 없습니다.
취소 전자 메일은 구매자와 청구 계정 소유자 모두에게 전송됩니다.
관련 콘텐츠
비디오 튜토리얼