{"id":741,"date":"2025-01-26T12:31:17","date_gmt":"2025-01-26T10:31:17","guid":{"rendered":"https:\/\/www.pilvikoodari.net\/?p=741"},"modified":"2025-01-27T08:25:13","modified_gmt":"2025-01-27T06:25:13","slug":"aws-cli-ja-profiilit-nain-hallitset-useita-aws-tunnuksia-vaivattomasti","status":"publish","type":"post","link":"https:\/\/www.pilvikoodari.net\/?p=741","title":{"rendered":"AWS CLI ja profiilit: N\u00e4in hallitset useita AWS-tunnuksia vaivattomasti"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">T\u00e4ss\u00e4 kirjoituksessa perehdyt\u00e4\u00e4n ensin lyhyesti AWS:n k\u00e4ytt\u00e4j\u00e4tiliin sek\u00e4 AWS:n t\u00e4rkeimpiin k\u00e4ytt\u00e4j\u00e4typpeihin, joiden kautta AWS:n palveluita voidaan k\u00e4ytt\u00e4\u00e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Seuraavaksi esitell\u00e4\u00e4n lyhyesti AWS komentorivity\u00f6kalun (AWS CLI) k\u00e4ytt\u00e4j\u00e4asetuksia sek\u00e4 <em>profiilien<\/em> k\u00e4ytt\u00f6\u00e4 komentorivity\u00f6kalun kanssa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lopuksi otetaan k\u00e4ytt\u00f6\u00f6n n\u00e4pp\u00e4r\u00e4 ty\u00f6kalu, jonka avulla useiden eri profiilien k\u00e4ytt\u00e4minen ja niiden v\u00e4lill\u00e4 vaihtaminen onnistuu sujuvasti.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">AWS-tilin luominen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AWS-pilviymp\u00e4rist\u00f6n palveluja k\u00e4ytett\u00e4ess\u00e4, AWS:n hallintaliittym\u00e4\u00e4n webiss\u00e4 luodaan ensimm\u00e4isen\u00e4 AWS-k\u00e4ytt\u00e4j\u00e4tili (AWS account), jonka kautta AWS:n palveluita voidaan hallinnoida. Tilille my\u00f6s sy\u00f6tet\u00e4\u00e4n luottokorttitiedot laskutusta varten.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tilille voidaan kirjautua eri tavoilla ja k\u00e4yd\u00e4\u00e4n seuraavaksi l\u00e4pi eri kirjautumistapoja.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kirjautumistavat: Root-k\u00e4ytt\u00e4j\u00e4 vs. IAM-k\u00e4ytt\u00e4j\u00e4<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AWS tilille kirjaudutaan AWS:n hallintaliittym\u00e4n (AWS Management Console) kautta osoitteessa <a href=\"https:\/\/console.aws.amazon.com\/console\/home\">https:\/\/console.aws.amazon.com\/console\/home<\/a><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.05.29.png\"><img loading=\"lazy\" decoding=\"async\" width=\"695\" height=\"1024\" src=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.05.29-695x1024.png\" alt=\"\" class=\"wp-image-894\" srcset=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.05.29-695x1024.png 695w, https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.05.29-204x300.png 204w, https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.05.29.png 734w\" sizes=\"auto, (max-width: 695px) 100vw, 695px\" \/><\/a><figcaption class=\"wp-element-caption\">AWS hallintaliittym\u00e4\u00e4n kirjautuminen<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Kuten yll\u00e4 olevasta kuvasta n\u00e4kyy, AWS tarjoaa kaksi tapaa kirjautua AWS-tilille: <strong>Root-k\u00e4ytt\u00e4j\u00e4<\/strong> ja <strong>IAM-k\u00e4ytt\u00e4j\u00e4<\/strong>. Tutustutaan seuraavaksi niiden eroihin ja k\u00e4ytt\u00f6tapoihin.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Root-k\u00e4ytt\u00e4j\u00e4<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">T\u00e4m\u00e4 k\u00e4ytt\u00e4j\u00e4 luodaan samalla kun AWS-tili perustetaan. <strong>Root-k\u00e4ytt\u00e4j\u00e4ll\u00e4 on t\u00e4ydet oikeudet kaikkiin AWS-tilin resursseihin ja asetuksiin.<\/strong> Root-k\u00e4ytt\u00e4j\u00e4\u00e4 tulisi k\u00e4ytt\u00e4\u00e4 vain tilin hallinnointiin ja kriittisiin teht\u00e4viin, koska v\u00e4\u00e4riin k\u00e4siin joutuessa Root-tunnuksella voidaan saada aikaan suurtakin vahinkoa.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"859\" src=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44-1024x859.png\" alt=\"\" class=\"wp-image-895\" srcset=\"https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44-1024x859.png 1024w, https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44-300x252.png 300w, https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44-768x644.png 768w, https:\/\/www.pilvikoodari.net\/wp-content\/uploads\/2025\/01\/Screenshot-2025-01-25-at-21.06.44.png 1276w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Root-k\u00e4ytt\u00e4j\u00e4n kirjautuminen alkaa s\u00e4hk\u00f6postiosoitteen sy\u00f6tt\u00e4misell\u00e4<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Root-k\u00e4ytt\u00e4j\u00e4ll\u00e4 on <a href=\"https:\/\/docs.aws.amazon.com\/IAM\/latest\/UserGuide\/enable-mfa-for-root.html\" target=\"_blank\" rel=\"noreferrer noopener\">oletuksena<\/a> k\u00e4yt\u00f6ss\u00e4 MFA-tunnistautuminen (Multi-factor authentication) eli pelk\u00e4ll\u00e4 tunnuksella ja salasanalla ei p\u00e4\u00e4se kirjautumaan sis\u00e4\u00e4n vaan lis\u00e4ksi vaaditaan esimerkiksi autentikointisovelluksesta (kuten Microsoft Authenticator) l\u00f6ytyv\u00e4 vaihtuva koodi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tilin laskutustiedot n\u00e4kyv\u00e4t vain Root-k\u00e4ytt\u00e4j\u00e4lle. On my\u00f6s muutamia <a href=\"https:\/\/docs.aws.amazon.com\/IAM\/latest\/UserGuide\/id_root-user.html#root-user-tasks\" target=\"_blank\" rel=\"noreferrer noopener\">muita toimintoja<\/a>, jotka vaativat Root-k\u00e4ytt\u00e4j\u00e4n tunnusta.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>IAM-k\u00e4ytt\u00e4j\u00e4<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>IAM (Identity and Access Management) -k\u00e4ytt\u00e4j\u00e4 on tiliin yhdistetty k\u00e4ytt\u00e4j\u00e4, joka luodaan tilin Root-k\u00e4ytt\u00e4j\u00e4n toimesta. <\/strong>IAM-k\u00e4ytt\u00e4jille voidaan m\u00e4\u00e4ritt\u00e4\u00e4 tarkat k\u00e4ytt\u00f6oikeudet ja roolit, jotka rajoittavat p\u00e4\u00e4sy\u00e4 AWS-resursseihin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kutakin k\u00e4ytt\u00f6tarkoitusta varten voidaan luoda uusi IAM-k\u00e4ytt\u00e4j\u00e4 ja antaa sille vain tarvittavat oikeudet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">IAM-k\u00e4ytt\u00e4j\u00e4t voivat kirjautua AWS hallintaliittym\u00e4\u00e4n k\u00e4ytt\u00e4en tilin tunnusta tai alias-nime\u00e4, k\u00e4ytt\u00e4j\u00e4nime\u00e4 ja salasanaa, mutta heille n\u00e4ytet\u00e4\u00e4n vain ne resurssit, joihin k\u00e4ytt\u00f6oikeuksien kautta on annettu oikeus. IAM-k\u00e4ytt\u00e4j\u00e4t voivat my\u00f6s k\u00e4ytt\u00e4\u00e4 monivaiheista tunnistautumista (MFA).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">IAM-k\u00e4ytt\u00e4j\u00e4n oikeuksien m\u00e4\u00e4ritt\u00e4minen voidaan tehd\u00e4 varsin monipuolisesti ja IAM:n voidaankin sanoa olevat yksi AWS:n monimutkaisimmista osuuksista. T\u00e4ss\u00e4 artikkelissa emme perehdy tarkemmin IAM:n k\u00e4yt\u00e4nt\u00f6ihin ja oikeuksiin, vaan perehdymme eri k\u00e4ytt\u00e4j\u00e4tunnusten konkreettiseen k\u00e4ytt\u00e4miseen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">AWS CLI:n asennus ja konfigurointi<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AWS CLI (Command Line Interface) on komentorivity\u00f6kalu, jonka avulla voit hallita AWS-palveluita suoraan oman koneen komentorivilt\u00e4. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sen avulla voit suorittaa erilaisia teht\u00e4vi\u00e4, kuten luoda ja hallita resursseja ja tarkastella resurssien tietoja ilman, ett\u00e4 tarvitsee k\u00e4ytt\u00e4\u00e4 AWS:n hallintaliittym\u00e4\u00e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">AWS CLI:n kautta suoritetut komennot suoritetaan aina jonkin k\u00e4ytt\u00e4j\u00e4tunnuksen kautta, joka m\u00e4\u00e4ritt\u00e4\u00e4 oikeudet suoritettaville komennoille.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">AWS CLI asennetaan omalle koneelle <a href=\"https:\/\/aws.amazon.com\/cli\/\" target=\"_blank\" rel=\"noreferrer noopener\">AWS:n virallisilta sivuilta<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Asennuksen onnistumisen voi varmistaa vaikkapa komennolla<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws --version<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Asennuksen j\u00e4lkeen tavallinen tapa configuroida AWS CLI on komento<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code>aws configure<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code>configure<\/code>-komennon suorituksen yhteydess\u00e4 kysyt\u00e4\u00e4n <em><strong>AWS Access Key ID<\/strong><\/em>, <em><strong>AWS Secret Access Key<\/strong><\/em>, oletusalue (region) ja oletusformaatti (output format). <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">AWS Access Key ID ja <em>AWS Secret Access Key <\/em>ovat k\u00e4ytt\u00e4j\u00e4kohtaisia tunnisteita, joiden kautta voidaan k\u00e4ytt\u00e4\u00e4 AWS:n palveluja k\u00e4ytt\u00e4j\u00e4n oikeuksilla. N\u00e4m\u00e4 tiedot generoidaan AWS:n hallintaliittym\u00e4ss\u00e4 ja <em>Secret Access Key<\/em> on nimens\u00e4 mukaisesti tieto joka on syyt\u00e4 pit\u00e4\u00e4 tallessa huolellisesti.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">AWS Access Key ID ja <em>AWS Secret Access Key<\/em> avaavat p\u00e4\u00e4syn AWS:n resursseihin kyseisen k\u00e4ytt\u00e4j\u00e4tunuksen oikeuksilla.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kun edell\u00e4 mainitut tiedot on annettu <code>configure<\/code> -komennon suorituksen yhteydess\u00e4, <code>aws<\/code>-komennon kautta voidaan suorittaa komentoja k\u00e4ytt\u00e4j\u00e4n oikeuksilla. Esimerkiksi listata S3 bucetit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws s3 ls<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Profiilien konfigurointi ja k\u00e4ytt\u00f6 AWS CLI:ss\u00e4<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Edellisess\u00e4 kappaleessa konfiguroitiin AWS CLI k\u00e4ytt\u00e4m\u00e4\u00e4n tietyn k\u00e4ytt\u00e4j\u00e4n k\u00e4ytt\u00f6oikeuksia. Mutta kuten edell\u00e4 mainittiin, yleens\u00e4 IAM-k\u00e4ytt\u00e4ji\u00e4 luodaan useita eri k\u00e4ytt\u00f6tarkoituksia varten. Tavallinen harrastelijakoodarikin haluaa varmasti luoda erillisen IAM-k\u00e4ytt\u00e4j\u00e4n eri projektien k\u00e4ytt\u00f6\u00f6n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Miten hallita usean IAM-k\u00e4ytt\u00e4j\u00e4n k\u00e4ytt\u00f6 omalla koneella? <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Yksi tapa on tietysti konfiguroida AWS CLI aina uudelleen, mutta se on melko kankea tapa. <strong>Ratkaisuksi on kehitetty AWS CLI:n sis\u00e4inen ty\u00f6kalu: profiilit.<\/strong> AWS CLI profiilien avulla voi k\u00e4ytt\u00e4\u00e4 useita AWS-tunnuksia omalta koneelta eri tarkoituksiin ilman ett\u00e4 tarvitsee tehd\u00e4 varsinaista konfigurointia k\u00e4ytt\u00e4j\u00e4\u00e4 vaihdettaessa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Yksi profiili siis edustaa yht\u00e4 AWS k\u00e4ytt\u00e4j\u00e4oikeutta. Oletuskonfigurointi edustaa profiilia, jonka nimi on <em>default<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Uusi profiili perustetaan komennolla<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code>aws configure --profile omaProfiili<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Yll\u00e4 esitetty esimerkkikomento kysyy vastaavat tiedot kuin peruskomento <code>aws configure<\/code>  ja tallentaa tiedot  profiilille nimelt\u00e4 <em>omaProfiili<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tallennettua profiilia voidaan nyt k\u00e4ytt\u00e4\u00e4 komentojen suoritukseen, antamalla profiilin nimi komennon yhteydess\u00e4. Esimerkki:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws s3 ls --profile omaProfiili<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Profiilien tiedot tallennetaan paikallisesti kahteen tiedostoon: &nbsp;<code>~\/.aws\/credentials<\/code>&nbsp;ja&nbsp;<code>~\/.aws\/config<\/code>. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ensimm\u00e4inen <code><strong>credentials<\/strong><\/code>-tiedosto sis\u00e4lt\u00e4\u00e4 profiilikohtaiset AWS Access Key ID ja <em>AWS Secret Access Key<\/em> -tiedot:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;default]\n<code>aws_access_key_id = &#91;oletus profiilin access key id]<\/code><code>aws_secret_access_key = &#91;oletus profiilin secret access key]<\/code>\n&#91;omaProfiili]\naws_access_key_id = &#91;oman profiilin access key id]\naws_secret_access_key = &#91;oman profiilin secret access key]<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Toinen tiedosto <code>config<\/code> sis\u00e4lt\u00e4\u00e4 profiilin muut tiedot eli valitun alueen (region) ja oletusformaatin (output format)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;default]\nregion = us-west-2\noutput = json\n\n&#91;profile omaProfiili]\nregion = eu-central-1\noutput = text<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Tiedostoja voi muokata itsekin jos tulee tarvetta.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Profiilin valinta komentorivill\u00e4<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Profiilit auttavat siis huomattavasti paikallisten k\u00e4ytt\u00e4j\u00e4tilien hallinnassa, mutta profiilin antaminen jokaisen komennon yhteydess\u00e4 on kuitenkin varsin ty\u00f6l\u00e4st\u00e4. Perehdyt\u00e4\u00e4n seuraavaksi tapoihin, joilla voidaan hallita ja k\u00e4ytt\u00e4\u00e4 profiileja sek\u00e4 vaihtaa oletusprofiilia.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Oletusprofiili ja profiili komennon yhteydess\u00e4<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Kertauksena: jos AWS CLI komennon yhteydess\u00e4 ei annettu profiilin nime\u00e4, komento suoritetaan <em>oletusprofiilin<\/em> (default) kautta. Komennon yhteydess\u00e4 voidaan kuitenkin antaa parametrina <code>--profile [profiilinNimi]<\/code> jolloin suoritus tapahtuu kyseisen profiilin oikeuksilla.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Profiilien hallinta ja k\u00e4ytt\u00f6 AWS CLI kautta<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">AWS CLI sis\u00e4lt\u00e4\u00e4 erilaisia komentoja profiilien hallintaan. Tutustutaan niihin seuraavaksi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Olemassa olevat profiilit voidaan listata komennolla<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws configure list-profile<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Komento listaa kaikki k\u00e4ytett\u00e4viss\u00e4 olevien profiilien nimet, esim:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>default\nomaProfiili\nserverlessTestProjectUser\nbucketUser<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Yksitt\u00e4isen profiilin voi konfiguroida uudelleen komennolla<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws configure --profile &#91;profiilin nimi]<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00e4yt\u00e4 nykyisen profiilin tiedot:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws configure list<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Mutta yll\u00e4tt\u00e4v\u00e4\u00e4 kyll\u00e4, komennoissa k\u00e4ytett\u00e4v\u00e4\u00e4 oletusprofiilia ei voi asettaa muutoin kuin muokkaamalla asetustiedostojen <code>[default] <\/code>kohtia tai asettamalla ymp\u00e4rist\u00f6muuttujan:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>export AWS_PROFILE=omaProfiili<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Perehdyt\u00e4\u00e4n seuraavaksi n\u00e4pp\u00e4r\u00e4\u00e4n pikku ty\u00f6kaluun, jolla voidaan sujuvoittaa oletusprofiilin valintaa.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ty\u00f6kalu oletusprofiilin valintaan<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Koska <code>--profile<\/code> -parametrin antaminen komentojen yhteydess\u00e4 on varsin ty\u00f6l\u00e4st\u00e4 ja ymp\u00e4rist\u00f6muuttujan asettaminenkin vaatii oman vaivansa, perehdyt\u00e4\u00e4n seuraavaksi ty\u00f6kaluun, jolla voidaan hallita ja vaihtaa profiileja paremmin kuin AWS CLI ty\u00f6kalun omilla keinoilla.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Osoitteesta <a href=\"https:\/\/github.com\/aws-samples\/awscli-profile-credential-helpers\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/aws-samples\/awscli-profile-credential-helpers<\/a> l\u00f6ytyy repository, jossa on erilaisia ty\u00f6kaluja juurikin AWS CLI profiilien hallintaan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kyseess\u00e4 on kokoelma ty\u00f6kaluja, mutta otamme k\u00e4ytt\u00f6\u00f6n vain yksinkertaisen ty\u00f6kalun <code>aws-profile<\/code>, jonka avulla profiilien valinta komentorivill\u00e4 on miellytt\u00e4v\u00e4\u00e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Itse asiassa kyseess\u00e4 on vain yksinkertainen Bash-funktio, jonka avulla voidaan helposti listata profiilit sek\u00e4 asettaa nykyinen oletusprofiili:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function aws-profile() {\n  if &#91;&#91; -z \"${1}\" ]]; then\n    profiles=$(grep '\\&#91;profile' ~\/.aws\/config | tr -d '&#91;]' | awk '{print $2}')\n    for profile in $profiles; do\n      if &#91;&#91; \"${profile}\" == \"${AWS_PROFILE}\" ]]; then\n        echo \"${profile} *\"\n      else\n        echo \"${profile}\"\n      fi\n    done\n  else\n    export AWS_PROFILE=\"${1}\"\n  fi\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Skripti asennetaan yksinkertaisesti siten, ett\u00e4 kopioidaan repositoryn tiedosto <strong>aws-profile<\/strong> omalle koneelle tiedoston <code>~\/.bashrc<\/code>&nbsp;tai&nbsp;<code>~\/.bash_profile<\/code> sis\u00e4lle. Asennuksen j\u00e4lkeen komentoa voi testata ajamalla komennon:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws-profile<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">T\u00e4m\u00e4 komento listaa kaikki k\u00e4ytett\u00e4viss\u00e4 olevat profiilit ja korostaa k\u00e4yt\u00f6ss\u00e4 olevan profiilin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oletusprofiilin voi valita ajamalla komennon<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aws-profile &#91;profiilin nimi]<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Yll\u00e4 oleva komento itse asiassa vain asettaa ymp\u00e4rist\u00f6muuttujan AWS_PROFILE. Sen sen j\u00e4lkeen AWS CLI komennot k\u00e4ytt\u00e4v\u00e4 oletuksena ymp\u00e4rist\u00f6muuttujaan asetettua profiilia!<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nopea ja helposti muistettava profiilin vaihtaminen tehostaa ja helpottaa toimintaa, kun profiileja on useita ja niiden v\u00e4lill\u00e4 joutuu vaihtelemaan.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Yhteenveto<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">T\u00e4ss\u00e4 artikkelissa k\u00e4siteltiin AWS:n k\u00e4ytt\u00e4j\u00e4tilien ja k\u00e4ytt\u00e4j\u00e4tyyppien perusteita, AWS CLI:n (komentorivity\u00f6kalun) k\u00e4ytt\u00f6\u00e4 sek\u00e4 profiilien hallintaa.<br><br>AWS-tilin luominen ja hallinta on ensimm\u00e4inen askel AWS-palveluiden k\u00e4yt\u00f6ss\u00e4. Tilille voidaan kirjautua joko root-k\u00e4ytt\u00e4j\u00e4n\u00e4 tai IAM-k\u00e4ytt\u00e4j\u00e4n\u00e4. Root-k\u00e4ytt\u00e4j\u00e4ll\u00e4 on t\u00e4ydet oikeudet kaikkiin resursseihin, kun taas IAM-k\u00e4ytt\u00e4jille voidaan m\u00e4\u00e4ritt\u00e4\u00e4 tarkat k\u00e4ytt\u00f6oikeudet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">AWS CLI:n avulla voidaan hallita AWS-palveluita suoraan komentorivilt\u00e4, ja sen konfigurointi tapahtuu&nbsp;<code>aws configure<\/code>&nbsp;-komennolla, jossa m\u00e4\u00e4ritet\u00e4\u00e4n k\u00e4ytt\u00e4j\u00e4n tunnistetiedot ja asetukset. Profiilien avulla voidaan hallita useita k\u00e4ytt\u00e4j\u00e4tilej\u00e4 ja vaihtaa niiden v\u00e4lill\u00e4 helposti ilman, ett\u00e4 tarvitsee jatkuvasti konfiguroida AWS CLI:t\u00e4 uudelleen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Artikkelin lopussa esiteltiin n\u00e4pp\u00e4r\u00e4 Bash-funktio&nbsp;<code>aws-profile<\/code>, joka helpottaa profiilien hallintaa ja vaihtamista. T\u00e4m\u00e4 ty\u00f6kalu tekee profiilien k\u00e4yt\u00f6st\u00e4 sujuvampaa ja tehokkaampaa, erityisesti silloin, kun k\u00e4yt\u00f6ss\u00e4 on useita eri profiileja.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e4ss\u00e4 kirjoituksessa perehdyt\u00e4\u00e4n ensin lyhyesti AWS:n k\u00e4ytt\u00e4j\u00e4tiliin sek\u00e4 AWS:n t\u00e4rkeimpiin k\u00e4ytt\u00e4j\u00e4typpeihin, joiden kautta AWS:n palveluita voidaan k\u00e4ytt\u00e4\u00e4. Seuraavaksi esitell\u00e4\u00e4n lyhyesti AWS komentorivity\u00f6kalun (AWS CLI) k\u00e4ytt\u00e4j\u00e4asetuksia sek\u00e4 profiilien k\u00e4ytt\u00f6\u00e4 komentorivity\u00f6kalun kanssa. Lopuksi otetaan k\u00e4ytt\u00f6\u00f6n n\u00e4pp\u00e4r\u00e4 ty\u00f6kalu, jonka avulla useiden eri profiilien k\u00e4ytt\u00e4minen ja niiden v\u00e4lill\u00e4 vaihtaminen onnistuu sujuvasti. AWS-tilin luominen AWS-pilviymp\u00e4rist\u00f6n palveluja k\u00e4ytett\u00e4ess\u00e4, AWS:n hallintaliittym\u00e4\u00e4n webiss\u00e4 &#8230; <a title=\"AWS CLI ja profiilit: N\u00e4in hallitset useita AWS-tunnuksia vaivattomasti\" class=\"read-more\" href=\"https:\/\/www.pilvikoodari.net\/?p=741\" aria-label=\"Lue lis\u00e4\u00e4 aiheesta AWS CLI ja profiilit: N\u00e4in hallitset useita AWS-tunnuksia vaivattomasti\">Lue lis\u00e4\u00e4<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,7,12],"tags":[],"class_list":["post-741","post","type-post","status-publish","format-standard","hentry","category-aws","category-tyokalujen-asennus","category-tyokalut"],"_links":{"self":[{"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/posts\/741","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=741"}],"version-history":[{"count":66,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/posts\/741\/revisions"}],"predecessor-version":[{"id":959,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=\/wp\/v2\/posts\/741\/revisions\/959"}],"wp:attachment":[{"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=741"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=741"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pilvikoodari.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=741"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}