Parto 1 el 3
En 2011, Amazon anoncis la haveblecon de AWS Identity & Access Management (IAM) subteno por CloudFront. IAM estis lanĉita en 2010 kaj inkludis S3-subtenon. AWS Identity & Access Management (IAM) ebligas al vi havi multajn uzantojn ene de AWS-konto. Se vi uzis Amazon-Servoj (AWS), vi konscias, ke la sola maniero por administri enhavon en AWS implicas doni vian uzantnomon kaj pasvorton aŭ alireklavojn.
Ĉi tio estas vera sekureca maltrankvilo por la plimulto de ni. IAM forigas la bezonon dividi pasvortojn kaj alirecajn ŝlosilojn.
Senĉese ŝanĝante nia ĉefa AWS-pasvorto aŭ generi novajn ŝlosilojn estas nur senorda solvo, kiam membro de membro forlasus nian teamon. AWS Identity & Access Management (IAM) estis bona komenco permesante individuajn kontojn kun individuaj klavoj. Tamen ni estas S3 / CloudFront-uzanto do ni atendis ke CloudFront estu aldonita al IAM, kiu fine okazis.
Mi trovis la dokumentadon pri ĉi tiu servo iomete disĵetita. Estas kelkaj triaj produktoj kiuj ofertas gamon de subteno por Identity & Access Management (IAM). Sed la programistoj kutime timas, mi serĉis liberan solvon por administri IAM kun nia Amazon S3-servo.
Ĉi tiu artikolo trairas la procezon starigi la Komandlinan Interfacon kiu subtenas IAM kaj starigas grupon / uzanton kun S3-aliro. Vi devas havi Amazon-AWS-S3-konto-instalinstrukciojn antaŭ ol vi komencu agordi Identity & Access Management (IAM).
Mia artikolo, Uzante la Simpla Stokado-Servon de Amazonoj (S3), marŝos vin tra la procezo starigi AWS-S3-konton.
Jen la paŝoj implikitaj por starigi kaj efektivigi uzanton en IAM. Ĉi tio estas skribita por Windows sed vi povas tweak por uzo en Linukso, UNIKSO kaj / aŭ Mac OSX.
- Instali kaj agordi la Komandlinan Interfacon (CLI)
- Krei grupon
- Donu grupan aliron al S3-ŝelo kaj CloudFront
- Krei Uzanton kaj Aldonu al Grupo
- Krei Salutnomo Profilo kaj Krei Ŝlosilojn
- Testo Aliro
Instali kaj agordi la Komandlinan Interfacon (CLI)
La IAM Command Line Toolkit estas Java-programo disponebla en la AWS Developers Tools de Amazon. La ilo ebligas al vi ekzekuti IAM-API-komandojn de konkaĵa utileco (DOS por Vindozo).
- Vi devas esti kuri Java 1.6 aŭ pli altan. Vi povas elŝuti la lastan version de Java.com. Por vidi, kies versio estas instalita en via sistemo de Windows, malfermu la Komandan Promeson kaj tajpu java -version. Ĉi tio supozas, ke java.exe estas en via PATH.
- Elŝutu la IAM-CLI-ilon kaj forĵeti ie en via loka disko.
- Ekzistas 2 dosieroj en la radiko de la iloj de CLI, kiujn vi bezonas ĝisdatigi.
- aws-credential.template: Ĉi tiu dosiero tenas viajn AWS-akreditojn. Aldonu vian AWSAccessKeyId kaj vian AWSSecretKey, konservu kaj fermu la dosieron.
- client-config.template : Vi nur bezonas ĝisdatigi ĉi tiun dosieron se vi postulas prokurilon. Forigi la #nombrajn signojn kaj ĝisdatigu ClientProxyHost, ClientProxyPort, KlientProxyUsername kaj ClientProxyPassword. Konservu kaj fermu la dosieron.
- La sekva paŝo implicas aldoni Medio-variablojn. Iru al Kontrolo-Panelo | Sistemaj #nemovebla? O Altnivelaj sistemaj agordoj Medio-variabloj. Aldonu la jenajn variablojn:
- AWS_IAM_HOME : Ŝanĝu ĉi tiun variablon al la dosierujo, kie vi nuligis la ilojn de CLI. Se vi kuras Vindozon kaj neŝipis ĝin ĉe la radiko de via C, la variablo estus C: \ IAMCli-1.2.0.
- JAVA_HOME : Metu ĉi tiun variablon al la dosierujo kie Java estas instalita. Ĉi tiu estus la loko de la java.exe-dosiero. En normala instalado de Java 7, ĉi tio estus io kiel C: \ Program Files (x86) \ Java \ jre6.
- AWS_CREDENTIAL_FILE : Metu ĉi tiun variablon al la vojo kaj dosiernomo de la aws-credential.template ke vi ĝisdatigis supre. Se vi funkcias Vindozo kaj neŝaltis ĝin ĉe la radiko de via C, la variablo estus C: \ IAMCli-1.2.0 \ aws-credential.template.
- CLIENT_CONFIG_FILE : Vi nur bezonas aldoni ĉi tiun medion- ŝanĝiĝon se vi bezonas prokurilon. Se vi funkcias Vindozo kaj neŝaltis ĝin ĉe la radiko de via disko C, la variablo estus C: \ IAMCli-1.2.0 \ client-config.template. Ne aldonu ĉi tiun variablon, se vi ne bezonos ĝin.
- Provu la instaladon per iri al la Komando-aranĝo kaj enirante iam-userlistbypath. Dum vi ne ricevas eraron, vi devus esti bona por iri.
Ĉiuj komandoj de IAM povas esti kuritaj de la Komando-Promeso. Ĉiuj ordonoj komenciĝas per "iam".
Krei grupon
Estas maksimumo de 100 grupoj, kiuj povas esti kreitaj por ĉiu AWS-konto. Dum vi povas agordi permesojn en IAM ĉe nivelo de uzanto, uzante grupoj estus la plej bona praktiko. Jen la procezo por krei grupon en IAM.
- La sintakso por kreado de grupo estas iam-grupkreata -g GROUPNAME [-p PATH] [-v] kie la -p kaj -v estas ebloj. Plena dokumentado pri la Komando-Linia Interfaco estas havebla en AWS-Dokumentoj.
- Se vi volus krei grupon nomitan "awesomeusers", vi eniros, iam-grupkreiĝos -g awesomeusers ĉe la Komando-promesado.
- Vi povas kontroli, ke la grupo estis kreita ĝuste enirante iam-grouplistbypath ĉe la Komando-aranĝo. Se vi nur kreus ĉi tiun grupon, la eligo estus io kiel "arn: aws: iam :: 123456789012: grupo / awesomeusers", kie la nombro estas via AWS-konto-nombro.
Donu grupan aliron al S3-ŝelo kaj CloudFront
Politikoj kontrolas, kion via grupo povas fari en S3 aŭ CloudFront. Defaŭlte, via grupo ne havus aliron al io ajn en AWS. Mi trovis la dokumentadon pri politikoj por esti OK, sed kreinte plenmanon da politikoj, mi faris iom da provo kaj eraro por akiri aferojn funkcii kiel mi volis labori.
Vi havas kelkajn eblojn por krei politikojn.
Unu opcio estas, ke vi povas eniri ilin rekte en la Komandan Promeson. Ĉar vi povus krei politikon kaj tweaking ĝin, por mi ŝajnis pli facile aldoni la politikon en teksta dosieron kaj poste alŝuti la tekston-dosieron kiel parametron kun la komando iam-groupuploadpolicy. Jen la procezo uzante teksta dosieron kaj alŝuti al IAM.
- Uzu ion kiel Notepad kaj enmetu la sekvan tekston kaj konservu la dosieron:
{
"Rakonto": [{
"Efekto": "Permesi",
"Ago": "s3: *",
"Rimedo": [
"arn: aws: s3 ::: BUCKETNAME",
"arn: aws: s3 ::: BUCKETNAME / *"]
},
{
"Efekto": "Permesi",
"Ago": "s3: ListAllMyBuckets",
"Rimedo": "arn: aws: s3 ::: *"
},
{
"Efekto": "Permesi",
"Ago": ["cloudfront: *"],
"Rimedo": "*"
}
]
} - Ekzistas 3 sekcioj al ĉi tiu politiko. La Efekto estas uzata por Permesi aŭ Malkonfirmi iun tipon de aliro. La Ago estas la specifaj aferoj, kiujn la grupo povas fari. La Rimedo estus uzata por doni aliron al individuaj rubujoj.
- Vi povas limigi la Agojn individue. En ĉi tiu ekzemplo, "Ago": ["s3: GetObject", "s3: ListBucket", "s3: GetObjectVersion"], la grupo povus listigi la enhavon de bucket kaj elŝuti objektojn.
- La unua sekcio "Permesas" la grupon plenumi ĉiujn S3-agojn por la bukedo "BUCKETNAME".
- La dua sekcio "Permesas" la grupon por listigi ĉiujn rubujojn en S3. Vi bezonas tion por ke vi efektive povas vidi la liston de rubujoj se vi uzas ion kiel la AWS-konzolo.
- La tria sekcio donas la grupan plenan aliron al CloudFront.
Estas multaj ebloj kiam venas al IAM-politikoj. Amazono havas vere bonan ilon haveblan nomitan AWS-Politika Generatoro. Ĉi tiu ilo provizas GUI kie vi povas krei viajn politikojn kaj generi la realan kodon, kiun vi bezonas por plenumi la politikon. Vi povas ankaŭ kontroli la sekcion de Access Policy Language de la Uzado de AWS Identity kaj Access Management enreta dokumentado.
Krei Uzanton kaj Aldonu al Grupo
La procezo krei novan uzanton kaj aldoni grupon por doni aliron al ili inkluzivas kelkajn paŝojn.
- La sintakso por kreado de uzanto estas iam-usercreate -u USERNAME [-p PATH] [-g GROUPS ...] [-k] [-v] kie la -p, -g, -k kaj -v estas ebloj. Plena dokumentado pri la Komando-Linia Interfaco estas havebla en AWS-Dokumentoj.
- Se vi volus krei uzanton "bob", vi eniros, iam-usercreate -u bob -g awesomeusers ĉe la Komando-aranĝo.
- Vi povas kontroli, ke la uzanto estis kreita ĝuste enirante iam-grouplistusers -g awesomeusers ĉe la Komando-aranĝo. Se vi nur kreus ĉi tiun uzanton, la eligo estus io kiel "arn: aws: iam :: 123456789012: uzanto / bob", kie la nombro estas via AWS-konto-nombro.
Krei Ensalutu Profilon kaj Krei Ŝlosilojn
Je ĉi tiu punkto, vi kreis uzanton sed vi devas provizi ilin per maniero por efektive aldoni kaj forigi objektojn de S3.
Estas 2 ebloj haveblaj por havigi al viaj uzantoj al S3 per IAM. Vi povas krei Ensalutu Profilon kaj provizu viajn uzantojn per pasvorto. Ili povas uzi siajn kredojn por ensaluti en la Amazon-AWS-konzolon. La alia opcio estas doni al viaj uzantoj alilan ŝlosilon kaj sekretan ŝlosilon. Ili povas uzi ĉi tiujn ŝlosilojn en 3-partaj iloj kiel S3 Fox, CloudBerry S3 Explorer aŭ S3-Foliumilo.
Krei Salutnomo Profilo
Kreante Salutnomo-Profilon por viaj S3-uzantoj provizas al ili uzantnomon kaj pasvorton, kiun ili povas uzi por ensaluti al la Amazon-AWS-konzolo.
- La sintakso por krei ensalutan profilon estas iam-useraddloginprofile -u USERNAME -p PASSWORD. Plena dokumentado pri la Komando-Linia Interfaco estas havebla en AWS-Dokumentoj.
- Se vi volis krei ensalutan profilon por la uzanto "bob", vi eniros, iam-useraddloginprofile -u bob -p PASSWORD ĉe la Komando-promeso.
- Vi povas kontroli, ke la ensalutprogramo estis kreita ĝuste enirante iam-usergetloginprofile -u bob ĉe la Komando-aranĝo. Se vi kreis ensalutan profilon por bob, la eligo estus io kiel "Ensalutu Profilo ekzistas por uzanto bob".
Krei Ŝlosilojn
Krei AWS Secret Access Key kaj responda AWS Access Key ID permesos al viaj uzantoj uzi 3-partan programaron kiel la antaŭe menciitajn. Memoru, ke kiel sekureca mezuro, vi povas nur ricevi ĉi tiujn ŝlosilojn dum la procezo aldoni la profilon de uzanto. Certigu, ke vi kopii kaj pegu la eliron de la Komando-aranĝo kaj konservi en teksto-dosiero. Vi povas sendi la dosieron al via uzanto.
- La sintakso por aldoni klavoj por uzanto estas iam-useraddkey [-u USERNAME]. Plena dokumentado pri la Komando-Linia Interfaco estas havebla en AWS-Dokumentoj.
- Se vi volus krei ŝlosilojn por la uzanto "bob", vi enirus iam-useraddkey -u bob ĉe la Komando-aranĝo.
- La komando elsendos la ŝlosilojn, kiuj aspektus ion kiel ĉi:
AKIACOOB5BQVEXAMPLE
BvQW1IpqVzRdbwPUirD3pK6L8ngoX4PTEXAMPLE
La unua linio estas la Aliro Ŝlosila ID kaj la dua linio estas la Sekreta Aliro-Ŝlosilo. Vi bezonas ambaŭ por tria partio programaro.
Testo Aliro
Nun, ke vi kreis IAM-grupojn / uzantojn kaj donis al la grupoj aliron per politikoj, vi devas provi la aliron.
Konzolo Aliro
Viaj uzantoj povas uzi sian uzantnomon kaj pasvorton por ensaluti en la AWS-konzolon. Tamen, ĉi tio ne estas la normala konzolo-ensalutpaĝo, kiu estas uzata por la ĉefa AWS-konto.
Ekzistas speciala URL, kiun vi povas uzi, kiu provizos ensalutan formon por via Amazona AWS-konto nur. Jen la URL por ensaluti al S3 por viaj uzantoj de IAM.
https://AWS-ACCOUNT-NUMBER.signin.aws.amazon.com/console/s3
La AWS-ACCOUNT-NUMBER estas via regula AWS-konto-nombro. Vi povas atingi tion per ensaluto en la formon de Ensaluti en la retejo de Amazon-retejo. Ensalutu kaj alklaku Konto Konta Aktiveco. Via nombro estas en la supra dekstra angulo. Certigu vin, ke vi forprenu la dashes. La URL aspektus ion kiel https://123456789012.signin.aws.amazon.com/console/s3.
Uzanta Alirejajn Ŝlosilojn
Vi povas elŝuti kaj instali iujn el la 3-a-partiaj iloj jam menciitaj en ĉi tiu artikolo. Enmetu vian Aliron Ŝlosilvorto kaj la Sekreta Alfa Ŝlosilo per la 3a-datila ilo dokumentado.
Mi forte rekomendas, ke vi kreu komenca uzanto kaj havas tiun uzanton plene provi, ke ili povas fari ĉion, kion ili devas fari en S3. Post kiam vi konfirmas unu el viaj uzantoj, vi povas daŭrigi agordi ĉiujn viajn S3-uzantojn.
Rimedoj
Jen kelkaj rimedoj por doni pli bonan komprenon pri Identity & Access Management (IAM).
- Komenci kun IAM
- IKa Komandila Linia Helpo
- Konsilo de Amazon AWS
- AWS-Politika Generatoro
- Uzante AWS Identity kaj Access Management
- IAM-Eldonaj Notoj
- IAM Diskutadaj Forumoj
- IAM Demandoj