Skip to content

Latest commit

 

History

History
195 lines (119 loc) · 11.1 KB

README.md

File metadata and controls

195 lines (119 loc) · 11.1 KB

SaaS Offer series

Let us know what you need in this content library.

Video

  1. SaaS Offer Overview
  2. Purchasing a SaaS Offer
  3. Purchasing a Private SaaS Plan
  4. Publishing a SaaS Offer
  5. Publishing a Private SaaS Plan
  6. SaaS Offer Technical Overview
  7. Azure AD Application Registrations
  8. Using the SaaS Offer REST Fulfillment API
  9. The SaaS Client Library for .NET
  10. Building a Simple SaaS Landing Page in .NET
  11. Building a Simple SaaS Publisher Portal in .NET
  12. SaaS Webhook Overview
  13. Implementing a Simple SaaS Webhook in .NET
  14. Securing a Simple SaaS Webhook in .NET
  15. SaaS Metered Billing Overview
  16. The SaaS Metered Billing API with REST

Hands-on Labs

These labs are meant to be done sequentially. They build on one another, so begin at the beginning to walk through all the labs.

  1. Creating a SaaS Offer in Partner Center
  2. Creating a Landing Page
  3. Installing a Publisher Portal
  4. Deploying and Monitoring a Webhook
  5. Implementing Meter billing

SaaS Offer Overview

Video | PDF

This module offers a technical overview of Microsoft Azure Marketplace SaaS Offers, including the following topics.

  • The Microsoft Commercial Marketplace Ecosystem​
  • SaaS Offer Creation Process​
  • ​Pricing Models for SaaS Offers​
  • SaaS Solution Architectures

Purchasing a SaaS Offer

Video | PDF

This video offers a guided step-by-step process to purchasing SaaS applications in the #Microsoft Azure Marketplace from the customers point of view, including the following topics.

  • SaaS Offer Subscription Flow
  • Subscribing From the Azure Marketplace
  • Subscribing From the Azure Portal
  • The SaaS Management Service

Purchasing a Private SaaS Plan

Video | PDF

This video shows how to subscribe to private SaaS plans in the Microsoft Azure Marketplace. Topics include the following.

  • About Private Plans
  • Purchasing a SaaS Private Offer demo

Publishing a SaaS Offer

Video | PDF

This detailed video presents the concepts of publishing a SaaS offer and then walks through the steps of doing so in Partner Center. This module goes all the way from creating an offer, to adding and plan, and finally publishing the offer live. It also speaks to the need of developers to have a sandbox environment in which they can test and development the landing page and webhook.

Publishing a Private SaaS Plan

Video | PDF

This brief video builds upon what you learned in, “Publishing a SaaS Offer.” It presents the concepts of using private plans and then shows how to do so inside Partner Center.

SaaS Offer Technical Overview

Video | PDF

Watch a deep technical overview of how SaaS offers work in the Microsoft Azure Marketplace. Learn how the API flows and interactions should work and how to build your landing page. Topics include the following.

  • The Landing Page​ authentication workflows
  • SaaS Offer Purchase Flow in Depth​
  • SaaS Offer Fulfillment API​
  • Metered Fulfillment Overview​
  • SaaS Offer Webhook

Azure AD Application Registrations

Video | PDF

In this module we look at a generic topic, application registrations for Azure Active Directory because we’ll need to use them in our upcoming modules. They give us a mechanism to authenticate to Azure AD, which is a requirement of the landing page, if you recall.

This video should help you get a jump start on configuring application registrations for the apps we’ll be building in the next few modules.

NOTE: The secrets that you set in an Application Registration have time limits. You may select up to 2 years for the secret to remain valid. In production, track when your secrets need to be changed and do so to avoid service outages.

This module introduces just enough on this topic to help us build our landing page and webhooks later in the course. For those interested in more reading, please see Create and Azure AD app registration and Quick start: Register an application with the Microsoft identity platform from the official Microsoft documentation.

Using the SaaS Offer REST Fulfillment API

Video | PDF

See the SaaS Fulfillment REST API in action as we send it through its paces using Postman. You’ll learn how to authenticate with Azure Active Directory, resolve and activate subscriptions just like your Landing Page does, and see many other features of the API.

This module prepares you for working with the language-specific client libraries.

This modules requires you to have knowledge of Application Registrations in AAD.

An Application Registration is used in the examples when making the first request to retrieve an authentication token from Azure Active Directory. You should be familiar with creating an Application Registration and finding the following information in the Azure Portal.

  1. The Tenant ID and App ID
  2. A Client Secret on the Application Registration

The SaaS Client Library for .NET

Video | PDF | Code

This module introduces the SaaS Client Library for .NET developers who want to work with the SaaS APIs at a level of abstraction above the REST level.

The client library is a fully functional .NET package that you can install from NuGet and use in your applications.

This video shows a sample command line application that can talk to the client library API and the code is available in this repository via the link above.

Building a Simple SaaS Landing Page in .NET

Video | PDF | Code

In this module we examine the elements of building a simple landing page and looking at how it works.We examine the following topics.

  • The purpose of a landing page
  • A humble landing page in action
  • The code
  • Available data to display

The technology stack used is C#, ASP.NET MVC, and Razor views, just to keep it simple. We use the SaaS Client Library for .NET to build out our landing page functionality.

Building a Simple SaaS Publisher Portal in .NET

Video | PDF | Code

In this module we examine the elements of building a publisher portal and at how it works.We examine the following topics.

  • The purpose of a publisher portal
  • A simple publisher portal in action
  • The code

The technology stack used is C#, ASP.NET MVC, and Razor views, just to keep it simple. We use the SaaS Client Library for .NET to build out our portal functionality.

SaaS Webhook Overview

Video | PDF

This technical overview of the SaaS webhook explains the following concepts of the SaaS offer webhook.

  • Why to have this specialized HTTPS endpoint
  • POST events one may receive on the webhook
  • Flow models of how to handle requests
  • Potential fully implemented solution architectures

And more! Consider watching this video before moving on to the code-based modules for implementing and securing a SaaS offer webhook.

Implementing a Simple SaaS Webhook in .NET

Video | Code

This code-heavy module focuses on the fundamentals of implementing a SaaS offer webhook as an Azure function using .NET. Concepts are presented in such a way as to be architecture and technology stack agnostic.

Securing a Simple SaaS Webhook in .NET

Video | PDF | Code

This security-focused module introduces several techniques for securing a SaaS offer webhook and then dives into code looking at implementations of the techniques presented. This module builds on the concepts and code presented in the module, “Implementing a Simple SaaS Webhook in .NET”.

Although utilizing an Azure function built in .NET, topics are presented in such a way as to be architecture and technology stack agnostic.

SaaS Metered Billing Overview

Video | PDF

This module presents the fundamentals of billing through the marketplace based on usage, or metered billing. IT covers several areas of metered billing including the following.

  1. How to configure Partner Center
  2. The flow of API operations needed to use the SaaS billing API
  3. Resources to save you time in building your SaaS application

The SaaS Metered Billing API with REST

Video

We exercise the SaaS Billing REST API using Postman to illustrate how the API works. You’ll learn how the inputs to each API event and how to use the results, and finally how to invoke usage events in the metering API itself. This module is primarily demo.