Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

Sovellustunnistetiedot

Tarvitset sovellustunnistetietoja, jos aiot käyttää palvelun APIa tai OpenStackin komentorivikäyttöliittymän työkaluja. Jos et aio käyttää APIa tai komentorivityökaluja, et todennäköisesti tarvitse sovellustunnistetietoja.

Sovellustunnistetiedot ovat myös erittäin hyödyllisiä, kun haluat luoda tunnistetietoja rajatuilla käyttöoikeuksilla. Voit luoda tunnistetietoja, joilla saa hakea vain projektisi dataa. Voit myös luoda tunnistetietoja, joilla voi muokata vain tiettyä instanssia tai luoda uusia instansseja. On myös mahdollista luoda tunnistetiedot, joilla voi tehdä kaiken sen, mitä sinäkin voit tehdä.

On tärkeää muistaa, että sovellustunnistetiedot ovat henkilökohtaisia, mikä tarkoittaa, että ne kuuluvat käyttäjätilille ja kaikki tunnistetiedoilla tehtävät toiminnot tehdään sen käyttäjän puolesta, joka loi tunnistetiedot. Tämä tarkoittaa, että jos käyttäjä poistetaan projektista, käyttäjän tunnistetiedot lakkaavat toimimasta.

Sovellustunnistetietojen luominen

  1. Siirry Pukin selainkäyttöliittymään.
  2. Valitse, mitä projektia haluat käyttää. (Näet vain ne projektit, joissa DBaaS on aktivoitu palvelussa my.csc.fi.)
  3. Siirry kohtaan Identitiy -> Application Credentials.
  4. Paina Create Application Credential. Valintaikkuna avautuu.

    Luo sovellustunnistetieto

  5. On hyvä idea valita kuvaava name ja description. Muuten saatat myöhemmin hämmentyä siitä, miksi sovellustunnistetiedot on olemassa. Ensimmäiset tunnistetiedot voi olla hyvä nimetä esimerkiksi Testing application credentials $TODAYS_DATE.

  6. Secret-kentässä tulisi olla pitkä satunnainen merkkijono, joka pitää säilyttää salassa. Jos jätät tämän tyhjäksi, palvelu luo salaisuuden puolestasi, ja tämä on todennäköisesti suositeltava tapa.
  7. On hyvä idea asettaa expiration date, erityisesti jos testaat tunnistetietoja vain tämän päivän ajan.
  8. Roolivaihtoehtoja on kaksi, reader ja member. Yleensä kannattaa käyttää member-roolia. Lisätietoja on kohdassa Roolien käyttö.
  9. Access rules ovat hyödyllisiä, kun haluat luoda tunnistetietoja tarkasti rajatuilla käyttöoikeuksilla. Tämä on erityisen hyödyllistä, jos haluat rakentaa paljon automaatiota tietokantojesi ympärille. Voit esimerkiksi tehdä skriptin, jolla saa muokata vain tietyn tietokannan käyttäjiä, tai tunnistetiedot, joilla saa luoda vain uusia instansseja. Lisätietoja vaihtoehdoista on kohdassa Käyttösääntöjen käyttö.
  10. Unrestricted (dangerous) -valintaruutu sallii sovellustunnistetietojesi luoda uusia sovellustunnistetietoja. Tästä voi olla hyötyä, jos olet komentorivin tehokäyttäjä, mutta sovellukselle tai automaatiolle ei todennäköisesti kannata antaa tunnistetietoja, joilla on tämä oikeus.
  11. Kun olet luonut sovellustunnistetiedot, voit joko ladata tunnistetiedot tiedostona, jonka voit source-komennolla ottaa käyttöön, tai .yaml-tiedostona, tai vaihtoehtoisesti lisätä salaisuuden salaisuuksien hallintajärjestelmääsi. Salaisuusavainta ei voi enää lukea sen jälkeen, kun tunnistetietojen luontiprosessi on valmis. Jos lataat sovellustunnistetiedot, saat tiedoston, joka sisältää esimerkiksi seuraavan:

    #!/usr/bin/env bash
    
    export OS_AUTH_TYPE=v3applicationcredential
    export OS_AUTH_URL=https://pukki.dbaas.csc.fi:5000/v3
    export OS_IDENTITY_API_VERSION=3
    export OS_REGION_NAME="pukki_dbaas"
    export OS_INTERFACE=public
    export OS_APPLICATION_CREDENTIAL_ID=xxxxxxxxxxxxxxxxxxxxxx
    export OS_APPLICATION_CREDENTIAL_SECRET=xxxxxxxxxxxxxxxxxxx
    

    Jos otat tiedoston käyttöön source-komennolla, voit käyttää sitä yhdessä OpenStackin komentorivikäyttöliittymän työkalujen kanssa.

  12. On hyvä idea testata, että sovellustunnistetiedot saavat tehdä sen, mitä niiden odotat voivan tehdä. On myös hyvä idea varmistaa, että ne EIVÄT saa tehdä sitä, mitä niiden odotat olevan tekemättä.

Roolien käyttö

Saatavilla on kaksi roolia: reader ja member. Reader-rooli on vain luku -rooli, kun taas member-roolilla saa tehdä muutoksia projektiisi.

  • reader-roolilla voi vain hakea projektisi dataa, mutta sillä ei voi tehdä muutoksia. Tämä on hyvä vaihtoehto, jos haluat luoda skriptin, joka tarkistaa palvelujesi tilan. Joskus on kätevää käyttää päivittäisissä toiminnoissa oletusarvoista reader-tiliä tiedon keräämiseen, jotta voit olla varma, ettet voi suorittaa tuhoavia komentoja vahingossa.
  • member-rooli on tavallinen käyttäjärooli. Se voi tehdä kaiken, mitä reader-rooli voi, mutta lisäksi sillä voi tehdä muutoksia järjestelmään. Kun kirjaudut selainkäyttöliittymään, member-rooli on käytössä.

Käyttösääntöjen käyttö

On mahdollista luoda sovellustunnistetietoja, jotka on rajattu tekemään vain valittuja API-kutsuja. Saat selville, mitä API-kutsuja on saatavilla, tutustumalla dokumentaatioon OpenStack Database API.

Jos esimerkiksi haluat luoda sovellustunnistetiedot, joilla on oikeus vain listata instanssisi, voit lisätä seuraavan oikeuden:

- service: database
  method: GET
  path: /v1.0/*/instances

Huomaa

Jokerimerkki * voidaan halutessasi korvata projektitunnuksellasi.

Tällä oikeudella saat tehdä vain komennon openstack database instance list. Sovellustunnistetiedolla voi olla niin monta oikeutta kuin haluat. Jos haluat pystyä "luomaan", "listaamaan", "näyttämään" ja "poistamaan" tietokantainstansseja, sinun tulee tehdä sovellustunnistetieto esimerkiksi näin:

# Create instance
- service: database
  method: POST
  path: /v1.0/*/instances
# List instance
- service: database
  method: GET
  path: /v1.0/*/instances
# Show instances
- service: database
  method: GET
  path: /v1.0/*/instances/*
# Delete instances
- service: database
  method: DELETE
  path: /v1.0/*/instances/*

On olemassa useita muitakin oikeuksia, jotka saattavat kiinnostaa sinua, katso: OpenStack Database API.

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta