Skip to content

AZ-104 · Domain 3: Deploy and manage Azure compute resources · 24% of the exam

Task 3.4: Create and configure Azure App Service

App Service plans and their scaling, creating apps, certificates and TLS, custom domains, backups, networking settings and deployment slots.

Study it

  • App Service plans, scaling and deployment slots

    Lesson coming

  • Custom domains, TLS certificates, backups and networking for App Service

    Lesson coming

Sample questions

Try each one before opening the answer. Every option is explained, with the Microsoft documentation page that proves it.

Question 1 · choose 1

An App Service app runs on a Basic B2 plan. You want a staging slot so you can warm up a release and swap it into production. What must you change first?

  1. AEnable Always On on the app
  2. BScale the plan out to two instances
  3. CTurn on the App Service backup schedule
  4. DScale the plan up to Standard or higher
Show the answer and why
  • AEnable Always On on the app

    Incorrect

    Always On keeps the app loaded; it doesn't unlock deployment slots.

  • BScale the plan out to two instances

    Incorrect

    Instance count doesn't matter; slots depend on the pricing tier.

  • CTurn on the App Service backup schedule

    Incorrect

    Backups are unrelated to slots; they're supported from Basic, which the plan already is.

  • DScale the plan up to Standard or higher

    Correct

    Multiple deployment slots need the Standard, Premium or Isolated tier.

Deployment slots are live apps with their own host names, available in the Standard, Premium and Isolated tiers. Each tier allows a different number of slots, so scaling down needs a tier that fits the slots you use.

Question 2 · choose 2

You must map the root domain contoso.com to an App Service app in a paid tier. Which two DNS records do you create at the domain provider? (Choose TWO.)

  1. AA CNAME record for @ pointing to the app's default host name
  2. BAn A record for @ pointing to the app's IP address
  3. CA TXT record named asuid containing the domain verification ID
  4. DAn MX record for @ pointing to the app's default host name
  5. EA TXT record named @ containing the app's IP address
Show the answer and why
  • AA CNAME record for @ pointing to the app's default host name

    Incorrect

    A CNAME isn't used for a root domain; App Service tells you to use an A record there.

  • BAn A record for @ pointing to the app's IP address

    Correct

    For a root domain the domain mapping is an A record to the app's inbound IP address.

  • CA TXT record named asuid containing the domain verification ID

    Correct

    For the root domain, App Service checks the asuid TXT record to verify you own the domain.

  • DAn MX record for @ pointing to the app's default host name

    Incorrect

    MX records route email; App Service doesn't use them for domain mapping.

  • EA TXT record named @ containing the app's IP address

    Incorrect

    Verification uses the asuid record with the verification ID, not a record holding the IP address.

A root domain is mapped with an A record and verified with a TXT record named asuid that holds the app's domain verification ID. A subdomain uses a CNAME, where the asuid TXT record is strongly recommended to prevent subdomain takeover.

Question 3 · choose 1

The staging slot of an app must keep using the test database after you swap it into production, and production must keep using the production database. Both connection strings are in the apps' configuration. What should you do?

  1. AStore the connection strings in the app's web.config
  2. BMark each connection string as a deployment slot setting
  3. CSwap with preview, then cancel the swap at the second phase
  4. DTurn on auto swap for the staging slot
Show the answer and why
  • AStore the connection strings in the app's web.config

    Incorrect

    Settings in the deployed files move with the content during a swap, so the strings would follow the code.

  • BMark each connection string as a deployment slot setting

    Correct

    A deployment slot setting is sticky: it stays with its slot and isn't swapped with the content.

  • CSwap with preview, then cancel the swap at the second phase

    Incorrect

    Canceling a swap with preview reverts the swap; it doesn't keep chosen settings in their slots during a completed swap.

  • DTurn on auto swap for the staging slot

    Incorrect

    Auto swap only triggers the swap after each deployment; the connection strings would still move with the content.

By default, app settings and connection strings move with the swap. Marking one as a deployment slot setting makes it sticky to the slot, so each slot keeps its own value after the swap.

Question 4 · choose 1

An app runs on the Free F1 tier. Adding a custom domain is blocked. What should you change?

  1. ATurn on Always On
  2. BCreate a deployment slot
  3. CEnable HTTPS Only
  4. DScale the plan to a paid tier
Show the answer and why
  • ATurn on Always On

    Incorrect

    Always On keeps the app loaded between requests; it doesn't enable custom domains.

  • BCreate a deployment slot

    Incorrect

    Slots are unavailable on Free and unrelated to domains.

  • CEnable HTTPS Only

    Incorrect

    HTTPS Only redirects HTTP traffic; it doesn't enable custom domains.

  • DScale the plan to a paid tier

    Correct

    Free apps can use only their azurewebsites.net name; paid tiers support custom domains.

The Free tier supports only the azurewebsites.net subdomain. Custom domains need a paid plan.

Question 5 · choose 1

An app on a Standard plan relies on App Service's automatic backups. Auditors need backups kept for 90 days. What should you do?

  1. AMove the app to the Basic tier
  2. BConfigure custom backups kept indefinitely
  3. CScale out the plan to more instances
  4. DExtend the automatic backup retention to 90 days
Show the answer and why
  • AMove the app to the Basic tier

    Incorrect

    Basic supports backups too, but with the same 30-day automatic retention.

  • BConfigure custom backups kept indefinitely

    Correct

    Custom backups can be kept up to 30 days or indefinitely, so they can be held for the 90 days auditors need.

  • CScale out the plan to more instances

    Incorrect

    Instance count has no effect on how long backups are kept.

  • DExtend the automatic backup retention to 90 days

    Incorrect

    Automatic backups keep 30 days, and the retention isn't configurable.

In supported tiers App Service takes automatic backups, kept for 30 days and not configurable. Custom backups, configured with a storage account, can be kept up to 30 days or indefinitely.

Question 6 · choose 1

Users can still reach an app over plain HTTP. You want every HTTP request redirected to HTTPS. Which setting should you turn on?

  1. AMinimum inbound TLS version 1.2
  2. BAlways On
  3. CHTTPS Only
  4. DClient certificate mode Require
Show the answer and why
  • AMinimum inbound TLS version 1.2

    Incorrect

    This rejects old TLS versions but doesn't redirect HTTP.

  • BAlways On

    Incorrect

    Always On keeps the app loaded and has nothing to do with HTTPS.

  • CHTTPS Only

    Correct

    HTTPS Only redirects HTTP requests to HTTPS.

  • DClient certificate mode Require

    Incorrect

    Client certificates authenticate callers; they don't redirect HTTP.

HTTPS Only enforces HTTPS by redirecting HTTP requests. The minimum TLS setting separately restricts which TLS versions are accepted.

Question 7 · choose 1

Five apps share one Standard App Service plan. One reporting app spikes CPU every night and slows the other four. What should you do?

  1. AEnable Always On for the other four apps
  2. BMove the reporting app to its own App Service plan
  3. CTurn on HTTPS Only for the reporting app
  4. DAdd a deployment slot for the reporting app
Show the answer and why
  • AEnable Always On for the other four apps

    Incorrect

    Always On keeps apps loaded; it doesn't separate compute.

  • BMove the reporting app to its own App Service plan

    Correct

    Apps in the same plan share VM instances; a separate plan isolates the app's compute.

  • CTurn on HTTPS Only for the reporting app

    Incorrect

    HTTPS Only redirects HTTP; it doesn't affect CPU sharing.

  • DAdd a deployment slot for the reporting app

    Incorrect

    Slots run on the same plan's instances, so they share the same compute.

All apps in an App Service plan run on the same VM instances and scale together. To isolate compute for one app, create a separate plan for it.

Practise domain 3 →Practise all domains →