3. daļas 1. daļa
2011. gadā Amazon paziņoja, ka ir pieejams AWS identitātes un piekļuves pārvaldības (IAM) atbalsts CloudFront. IAM tika uzsākta 2010. gadā un tika iekļauts S3 atbalsts. AWS identitātes un piekļuves pārvaldība (IAM) ļauj jums izveidot vairākus lietotājus AWS kontā. Ja esat izmantojis Amazon Web Services (AWS), jūs apzināties, ka vienīgais veids, kā pārvaldīt saturu AWS iesaistīto piešķir jūsu lietotājvārdu un paroli vai piekļuves atslēgas.
Šī ir reāla drošības problēma lielākajai daļai no mums. IAM novērš vajadzību dalīties ar parolēm un piekļuves taustiņiem.
Nepārtraukti mainot mūsu galveno AWS paroli vai ģenerējot jaunus atslēgas, ir tikai nepatīkams risinājums, kad personāla loceklis pamet mūsu komandu. AWS identitātes un piekļuves pārvaldība (IAM) bija labs sākums, kas ļāva atsevišķiem lietotāju kontiem ar atsevišķiem taustiņiem. Tomēr mēs esam S3 / CloudFront lietotājs, tāpēc mēs esam skatījuši, kā CloudFront pievieno IAM, kas beidzot notika.
Es atradu, ka šī pakalpojuma dokumentācija ir nedaudz izkaisīta. Ir daži trešo pušu produkti, kas piedāvā virkni atbalstu identitātes un piekļuves pārvaldībai (IAM). Bet izstrādātāji parasti ir ietaupīgi, tāpēc es meklēju bezmaksas risinājumu, lai pārvaldītu IAM ar mūsu Amazon S3 pakalpojumu.
Šajā rakstā iet cauri komandrindas saskarnes izveidei, kas atbalsta IAM un izveido grupu / lietotāju ar S3 piekļuvi. Pirms sākat konfigurēt identitātes un piekļuves pārvaldību (IAM), jums ir nepieciešams Amazon AWS S3 konta iestatīšana.
Mans raksts, izmantojot Amazon vienkāršo uzglabāšanas pakalpojumu (S3), palīdzēs jums izveidot AWS S3 kontu.
Šeit ir norādītas darbības, kas saistītas ar lietotāja izveidošanu un ieviešanu IAM. Tas ir rakstīts operētājsistēmai Windows, bet jūs varat pielāgot lietošanu Linux, UNIX un / vai Mac OSX.
- Instalējiet un konfigurējiet komandrindas saskarni (CLI).
- Izveidot grupu
- Sniedziet grupu piekļuvi S3 spaiņai un CloudFront
- Izveidot lietotāju un pievienot grupai
- Izveidot pieteikšanās profilu un izveidot taustiņus
- Testa piekļuve
Instalējiet un konfigurējiet komandrindas saskarni (CLI).
IAM komandrindas rīkkopa ir Java programma, kas pieejama Amazon AWS izstrādātāju rīkos. Šis rīks ļauj izpildīt IAM API komandas no čaulas utilītas (DOS for Windows).
- Jums ir jāstrādā Java 1.6 vai jaunāka versija. Jūs varat lejupielādēt jaunāko versiju no Java.com. Lai uzzinātu, kura versija ir instalēta jūsu Windows sistēmā, atveriet komandu uzvedni un ierakstiet java-versiju. Tas nozīmē, ka java.exe ir jūsu PATH.
- Lejupielādējiet IAM CLI rīku komplektu un atlaidiet kaut kur vietējā diskā.
- KML rīkkopa sakne ir 2 faili, kas jums jāatjaunina.
- aws-credential.template: šajā failā ir jūsu AWS akreditācijas dati. Pievienojiet savu AWSAccessKeyId un savu AWSSecretKey, saglabājiet un aizveriet failu.
- client-config.template : jums ir nepieciešams atjaunināt šo failu tikai tad, ja jums nepieciešams starpniekserveris. Noņemiet # zīmītes un atjauniniet ClientProxyHost, ClientProxyPort, ClientProxyUsername un ClientProxyPassword. Saglabājiet un aizveriet failu.
- Nākamais solis ietver vides mainīgo pievienošanu. Iet uz vadības paneli | Sistēmas rekvizīti | Uzlaboti sistēmas iestatījumi | Vides mainīgie. Pievienojiet šādus mainīgos lielumus:
- AWS_IAM_HOME : iestatiet šo mainīgo uz direktoriju, kurā esat izpostījis CLI rīkkopa. Ja jūs izmantojat sistēmu Windows un izjaukat to C diska saknē, mainīgais lielums būtu C: \ IAMCli-1.2.0.
- JAVA_HOME : iestatīt šo mainīgo uz direktoriju, kurā ir instalēta Java. Tas būtu java.exe faila atrašanās vieta. Parastā Windows 7 Java instalācijā tas būtu kaut kas līdzīgs C: \ Program Files (x86) \ Java \ jre6.
- AWS_CREDENTIAL_FILE : iestatiet šo mainīgo uz ceļu un faila nosaukumu aws-credential.template, kuru esat atjauninājis iepriekš. Ja jūs izmantojat sistēmu Windows un izjaukat to C diska saknē, mainīgais būtu C: \ IAMCli-1.2.0 \ aws-credential.template.
- CLIENT_CONFIG_FILE : jums ir nepieciešams tikai pievienot šo vides mainīgo, ja jums ir nepieciešams starpniekserveris. Ja jūs izmantojat operētājsistēmu Windows un atkārtoti izdevēja to C diska saknē, mainīgais būtu C: \ IAMCli-1.2.0 \ client-config.template. Nepievienojiet šo mainīgo, ja vien tas nav nepieciešams.
- Pārbaudiet instalāciju, dodoties uz komandu uzvedni un ievadot iam-userlistbypath. Kamēr jūs nesaņemat kļūdu, jums vajadzētu būt labi iet.
Visas IAM komandas var palaist no komandu uzvednes. Visas komandas sākas ar "iam-".
Izveidot grupu
Katram AWS kontam var izveidot ne vairāk kā 100 grupas. Kamēr jūs varat iestatīt IAM atļaujas lietotāju līmenī, labāko praksi var izmantot grupu izmantošana. Šeit ir process, lai izveidotu grupu IAM.
- Grupas izveides sintakse ir iam-groupcreate -g GROUPNAME [-p PATH] [-v], kur -p un -v ir opcijas. Pilnīga dokumentācija par komandrindas saskarni ir pieejama AWS dokumentos.
- Ja jūs vēlējāties izveidot grupu ar nosaukumu awesomeusers, komandu uzvednē ievadiet iam-groupcreate -g awesomeusers.
- Jūs varat pārbaudīt, vai grupa ir pareizi izveidota, ievadot iam-grouplistbypath komandu uzvednē. Ja jūs izveidojāt šo grupu, izlaide būs tāda pati kā "arn: aws: iam :: 123456789012: group / awesomeusers", kur šis numurs ir jūsu AWS konta numurs.
Sniedziet grupu piekļuvi S3 spaiņai un CloudFront
Politikas kontrolē, ko jūsu grupa spēj darīt S3 vai CloudFront. Pēc noklusējuma jūsu grupai nebūtu piekļuves neko AWS. Es uzzināju, ka politikas dokumentācija ir OK, bet, veidojot virkni politiku, es mazliet izmēģināju un pieļāva kļūdu, lai darbotos tā, kā es vēlējos viņiem strādāt.
Jums ir vairākas politikas veidošanas iespējas.
Viens no variantiem ir tas, ka jūs varat tos ievadīt tieši komandu uzvednē. Tā kā jūs varētu veidot politiku un uzlabot to, man šķita vieglāk pievienot politiku teksta failā un pēc tam augšupielādēt teksta failu kā parametru ar komandu iam-groupuploadpolicy. Šeit ir process, kurā tiek izmantots teksta fails un augšupielādēts IAM.
- Izmantojiet kaut ko līdzīgu Notepad un ievadiet šādu tekstu un saglabājiet failu:
{
"Paziņojums, apgalvojums":[{
"Effect": "Atļaut"
"Rīcība": "s3: *",
"Resurss": [
"Arn: aws: s3 ::: BUCKETNAME",
"arn: aws: s3 ::: BUCKETNAME / *"]
},
{
"Effect": "Atļaut"
"Rīcība": "s3: ListAllMyBuckets",
"Resurss": "arn: aws: s3 ::: *"
},
{
"Effect": "Atļaut"
"Rīcība": ["cloudfront: *"]
"Resurss": "*"
}
]
} - Šai politikai ir 3 sadaļas. Efektu izmanto, lai atļautu vai liegtu kādu piekļuves veidu. Rīcība ir konkrētas lietas, ko grupa var paveikt. Resurss tiks izmantots, lai piekļūtu atsevišķām spaiņām.
- Jūs varat ierobežot darbības atsevišķi. Šajā piemērā, "Darbība": ["s3: GetObject", "s3: ListBucket", "s3: GetObjectVersion"] grupa varēs uzskaitīt spaina saturu un lejupielādēt objektus.
- Pirmajā sadaļā "Ļauj" grupai veikt visas S3 darbības spaiņam "BUCKETNAME".
- Otrajā sadaļā "Ļauj" grupai uzskaitīt visas spaiņus S3. Jums tas nepieciešams, lai jūs tiešām varētu redzēt atkritumu sarakstu, ja izmantojat kaut ko līdzīgu AWS konsolē.
- Trešā sadaļa nodrošina grupai pilnīgu piekļuvi CloudFront.
IAM politikās ir daudz iespēju. Amazon ir patiešām atdzist pieejamais rīks, ko sauc par AWS politikas ģeneratoru. Šis rīks nodrošina GUI, kurā jūs varat izveidot savas politikas un ģenerēt faktisko kodu, kas jums nepieciešams, lai īstenotu politiku. Izmantojot AWS identitātes un piekļuves pārvaldības tiešsaistes dokumentāciju, varat arī iepazīties ar sadaļu Piekļuves politikas valoda.
Izveidot lietotāju un pievienot grupai
Jaunā lietotāja izveidošanas process un grupas pievienošana, lai viņiem piekļūtu, ietver pāris soļus.
- Sintakss lietotāja veidošanai ir iam-usercreate -u USERNAME [-p PATH] [-g GROUPS ...] [-k] [-v], kur ir opcijas -p, -g, -k un -v. Pilnīga dokumentācija par komandrindas saskarni ir pieejama AWS dokumentos.
- Ja jūs vēlējāties izveidot lietotāju "bob", jūs ievadīsit komandu uzvedni iam-usercreate -u bob -g awesomeusers.
- Varat pārbaudīt, vai lietotājs ir pareizi izveidots, ievadot iam-grouplistusers-g awesomeusers komandu uzvednē. Ja jūs šo lietotāju izveidojāt, izlaide būtu kaut kas līdzīgs "arn: aws: iam :: 123456789012: user / bob", kur šis numurs ir jūsu AWS konta numurs.
Izveidojiet pieslēgšanās profilu un izveidojiet taustiņus
Šajā brīdī esat izveidojis lietotāju, bet jums ir jāsniedz tiem veids, kā faktiski pievienot un noņemt objektus no S3.
Ir pieejamas 2 iespējas, lai nodrošinātu lietotājiem piekļuvi S3, izmantojot IAM. Jūs varat izveidot pieteikšanās profilu un nodrošināt lietotājiem paroli. Viņi var izmantot savus akreditācijas datus, lai pieteiktos Amazon AWS konsolē. Otra iespēja ir dot lietotājiem piekļuves atslēgu un slepeno atslēgu. Viņi var izmantot šos taustiņus trešo pušu rīkos, piemēram, S3 Fox, CloudBerry S3 Explorer vai S3 pārlūkprogrammā.
Izveidot pieteikšanās profilu
S3 lietotāju pieslēgšanās profila izveide nodrošina viņiem lietotāja vārdu un paroli, ko viņi var izmantot, lai pieteiktos Amazon AWS konsolē.
- Ievades profila izveides sintakse ir iam-useraddloginprofile -u USERNAME -p PASSWORD. Pilnīga dokumentācija par komandrindas saskarni ir pieejama AWS dokumentos.
- Ja jūs vēlējāties izveidot lietotājvārdu profilu lietotājam "bob", komandu uzvednē ievadiet iam-useraddloginprofile -u bob -p PASSWORD.
- Varat pārbaudīt, vai pieteikšanās profils ir pareizi izveidots, ievadot iam-usergetloginprofile -u bob komandu uzvednē. Ja jūs izveidojāt pieteikšanās profilu bobam, izlaide būtu kaut kas līdzīgs "lietotāja profils".
Izveidot taustiņus
AWS slepenās piekļuves atslēgas izveidošana un atbilstošais AWS piekļuves atslēgas ID ļauj lietotājiem izmantot trešās puses programmatūru, piemēram, iepriekš minētās. Paturiet prātā, ka, veicot drošības pasākumu, jūs varat iegūt šos taustiņus tikai lietotāja profila pievienošanas laikā. Pārliecinieties, vai kopējat un ielīmējat izvadi no komandu uzvednes un saglabājat teksta failā. Jūs varat nosūtīt failu savam lietotājam.
- Lietotājam taustiņu pievienošanai ir iam-useraddkey [-u USERNAME] sintakse. Pilnīga dokumentācija par komandrindas saskarni ir pieejama AWS dokumentos.
- Ja jūs vēlējāties izveidot lietotājam "bob" taustiņus, komandu uzvednē ievadiet iam-useraddkey -u bob.
- Komandai būs jāizveido atslēgas, kas izskatās šādi:
AKIACOOB5BQVEXAMPLE
BvQW1IpqVzRdbwPUirD3pK6L8ngoX4PTEXAMPLE
Pirmā rinda ir piekļuves atslēgas ID, bet otrajā rindā ir slepenā piekļuves atslēga. Jums ir nepieciešams gan trešās puses programmatūra.
Testa piekļuve
Tagad, kad esat izveidojis IAM grupas / lietotājus un piekļuvis grupām, izmantojot politikas, jums jāpārbauda piekļuve.
Konsoles piekļuve
Lietotāji var izmantot savu lietotāja vārdu un paroli, lai pieteiktos AWS konsolē. Tomēr šī nav parasta konsoles pieteikšanās lapa, kas tiek izmantota galvenajam AWS kontam.
Ir īpašs URL, kuru varat izmantot, un tas nodrošinās tikai Amazon AWS konta pieteikšanās veidlapu. Šeit ir URL, lai pieteiktos S3 jūsu IAM lietotājiem.
https://AWS-ACCOUNT-NUMBER.signin.aws.amazon.com/console/s3
AWS-ACCOUNT-NUMBER ir jūsu parastā AWS konta numurs. To varat iegūt, piesakoties Amazon Web pakalpojumu pierakstīšanās veidlapā. Piesakieties un noklikšķiniet uz Konts | Konta aktivitāte. Jūsu konta numurs ir augšējā labajā stūrī. Pārliecinieties, vai esat noņēmis domuzīmes. URL izskatās kā https://123456789012.signin.aws.amazon.com/console/s3.
Izmantojot piekļuves atslēgas
Jūs varat lejupielādēt un instalēt kādu no šajā rakstā minētajiem trešās puses rīkiem. Ievadiet piekļuves atslēgas ID un slepenās piekļuves atslēgu trešās puses rīka dokumentācijā.
Es ļoti iesakām izveidot sākotnēju lietotāju un pilnībā pārbaudīt šo lietotāju, ka viņi var darīt visu, kas tam jādara S3. Pēc tam, kad esat verificējis vienu no saviem lietotājiem, varat turpināt iestatīt visus savus S3 lietotājus.
Resursi
Šeit ir daži resursi, lai labāk izprastu identitātes un piekļuves pārvaldību (IAM).
- Darba sākšana ar IAM
- IAM komandrindas rīkkopa
- Amazon AWS konsoles
- AWS politikas ģenerators
- Izmantojot AWS identitāti un piekļuves pārvaldību
- IAM izlaiduma piezīmes
- IAM Diskusiju forumi
- IAM FAQs