Harjoitus: määritä, ota käyttöön ja suorita sovelluksesi Azuressa

Valmis

Nyt on aika suorittaa sovellus Azuressa. Sinun on luotava Azure-sovelluspalvelusovellus, määritettävä se käyttäen hallittuja käyttäjätietoja ja säilökokoonpanoja ja otettava koodi käyttöön.

Sovelluspalvelupaketin ja sovelluksen luominen

Sovelluspalvelusovelluksen luominen on kaksivaiheinen prosessi: luo ensin -palvelupakettija sitten sovelluksen.

palvelupaketin nimen on oltava yksilöllinen vain tilauksessasi, joten voit käyttää samaa nimeä: keyvault-exercise-plan. Sovelluksen nimen on kuitenkin oltava yleisesti yksilöllinen, joten valitse omasi.

  1. Luo sovelluspalvelusopimus suorittamalla seuraava komento Azure Cloud Shellissä.

    az appservice plan create \
        --name keyvault-exercise-plan \
        --sku FREE \
        --location centralus \
        --resource-group "<rgn>[sandbox resource group name]</rgn>"
    
  2. Seuraavaksi voit luoda verkkosovelluksen, joka käyttää luomaasi sovelluspalvelusuunnitelmaa, suorittamalla seuraavan komennon. Muista korvata <your-unique-app-name> sovelluksesi nimellä --name-parametrissa.

    az webapp create \
        --plan keyvault-exercise-plan \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name <your-unique-app-name>
    
    az webapp create \
        --plan keyvault-exercise-plan \
        --runtime "node|16LTS" \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name <your-unique-app-name>
    

Määritysten lisääminen sovellukseen

Ota käyttöön Azuressa sovelluspalvelun parhaiden käytäntöjen mukaisesti ja aseta VaultName määritys sovellusasetukseen määritystiedoston sijaan. Luo sovellusasetus suorittamalla tämä komento. Muista korvata molemmat <your-unique-app-name> sovelluksen nimellä --name-parametrissa ja <your-unique-vault-name> oman vaultin nimellä --settings-parametrissa.

az webapp config appsettings set \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" \
    --name <your-unique-app-name> \
    --settings 'VaultName=<your-unique-vault-name>'

Ota käyttöön Azuressa sovelluspalvelun parhaiden käytäntöjen mukaisesti ja aseta VaultName määritys sovellusasetukseen määritystiedoston sijaan. Voit myös määrittää SCM_DO_BUILD_DURING_DEPLOYMENT-asetukseksi true niin, että sovelluspalvelu palauttaa sovelluksesi paketit palvelimelle ja luo tarvittavan määrityksen sovelluksen suorittamiseksi. Luo sovelluksen asetukset suorittamalla tämä komento. Muista korvata molemmat <your-unique-app-name> sovelluksen nimellä --name-parametrissa ja <your-unique-vault-name> oman vaultin nimellä --settings-parametrissa.

az webapp config appsettings set \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" \
    --name <your-unique-app-name> \
    --settings 'VaultName=<your-unique-vault-name>' 'SCM_DO_BUILD_DURING_DEPLOYMENT=true'

Hallittujen käyttäjätietojen käyttöönotto

Hallittujen käyttäjätietojen käyttöönotto sovelluksessa on yksirivinen toiminto. Jos haluat ottaa sen käyttöön sovelluksessasi, suorita seuraava komento. Muista korvata <your-unique-app-name> sovelluksesi nimellä --name-parametrissa.

az webapp identity assign \
    --resource-group "<rgn>[sandbox resource group name]</rgn>" \
    --name <your-unique-app-name>

Kopioi tulokseksi saatavasta JSON-tuloksesta principalId arvo. PrincipalId on sovelluksen uusien käyttäjätietojen yksilöivä tunnus Microsoft Entra -tunnuksessa, ja käytät sitä seuraavassa vaiheessa.

Myönnä käyttöoikeus säilöyn

Viimeinen vaihe ennen käyttöönottoa on määrittää Key Vault -käyttöoikeudet sovelluksesi hallittuihin käyttäjätietoihin. Muista korvata molemmat <your-unique-vault-name>--name-parametrin Vaultin nimellä ja anna edellisessä vaiheessa kopioimasi principalId arvo object-id seuraavassa komennossa. Jos haluat määrittää Get ja List käyttöoikeuden, suorita tämä komento.

az keyvault set-policy \
    --secret-permissions get list \
    --name <your-unique-vault-name> \
    --object-id <your-managed-identity-principleid>

Ota sovellus käyttöön ja kokeile sitä

  1. Kaikki määritykset on määritetty, ja olet valmis käyttöönottoon! Seuraavat komennot julkaisevat sivuston pubin-kansioon, postittaa sen site.zipja ota zip-tiedosto käyttöön sovelluspalvelussa. Muista korvata <your-unique-app-name> sovelluksesi nimellä --name-parametrissa.

    Muistiinpano

    Sinun on cd takaisin KeyVaultDemoApp-hakemistoon, jos et ole vielä siellä.

    dotnet publish -o pub
    zip -j site.zip pub/*
    
    az webapp deploy \
        --src-path site.zip \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name <your-unique-app-name>
    
  1. Kaikki määritykset on määritetty, ja olet valmis käyttöönottoon! Seuraavat komennot pakkaavat sovelluksen site.zipja ottavat sen käyttöön sovelluspalvelussa. Emme jätä node_modules pois postinumerosta, koska sovelluspalvelu palauttaa ne automaattisesti, kun otat ne käyttöön. Muista korvata <your-unique-app-name> sovelluksesi nimellä --name-parametrissa.

    Muistiinpano

    Jos et ole vielä KeyVaultDemoApp-hakemistossa, palaa siihen cd-komennolla.

    zip site.zip * -x node_modules/
    
    az webapp deploy \
        --src-path site.zip \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name <your-unique-app-name>
    
  1. Käyttöönoton valmistuminen voi kestää minuutin tai pari. Kun saat sivuston käyttöönottoa osoittavan tuloksen, avaa https://<your-unique-app-name>.azurewebsites.net/api/SecretTest selaimessa. Sovelluksen käynnistyminen palvelimella ensimmäistä kertaa kestää hetken, mutta sen jälkeen salaisen koodin arvon pitäisi näkyä reindeer_flotilla.

Sovelluksesi on valmis ja otettu käyttöön!