3-бөлім
2011 жылы Amazon CloudFront үшін AWS Identity & Access Management (IAM) қолжетімділігін жариялады. IAM 2010 жылы іске қосылды және S3-нің қолдауына ие болды. AWS Identity & Access Management (IAM) AWS тіркелгісінде бірнеше пайдаланушыларды пайдалануға мүмкіндік береді. Егер сіз Amazon Web Services (AWS) қолдансаңыз, сіз AWS-дегі мазмұнды басқарудың жалғыз жолы сіздің пайдаланушы атыңыз бен құпия сөзіңізді немесе кілттерге қол жеткізуді қамтамасыз ететінін білесіз.
Бұл біздің көпшілігіміз үшін қауіпсіздік мәселесі. IAM парольдерді және кіру кілттерін бөлісу қажеттілігін жояды.
Біздің негізгі AWS паролін үнемі өзгертіп немесе жаңа кілттерді жасау қызметкерлердің біздің командадан шығатын кездегі жай ғана шешім болып табылады. AWS Identity & Access Management (IAM) - бұл жеке басқы жеке кілттермен жеке есептік жазбаларға мүмкіндік беретін жақсы бастама. Дегенмен, біз S3 / CloudFront пайдаланушысыз, сондықтан CloudFront-ті IAM-ға қосып көргенімізді байқадық.
Мен осы қызметтің құжаттамасын аздап шашыратып алдым. Identity & Access Management (IAM) үшін көптеген қолдау көрсететін 3-ші тарап өнімдері бар. Бірақ әзірлеушілер әдетте үнемді, сондықтан мен Amazon S3 қызметімен IAM-ті басқару үшін тегін шешімді іздестірдім.
Бұл мақала IAM қолдайтын және S3 қатынасы бар топты / пайдаланушыны орнататын Пәрмен жолы интерфейсін орнату үдерісі арқылы жүреді. Identity & Access Management (IAM) теңшеуді бастау алдында Amazon AWS S3 тіркелгісін орнату қажет.
Менің мақалаңыз, Amazon қарапайым сақтау қызметін пайдалану (S3), AWS S3 тіркелгісін орнату процесі арқылы жүреді.
Міне, IAM-те пайдаланушыны орнату мен енгізу кезінде қолданылатын қадамдар. Бұл Windows үшін жазылған, бірақ сіз Linux, UNIX және / немесе Mac OSX жүйесінде пайдалануыңызға болады.
- Командалық жол интерфейсін (CLI) орнатыңыз және теңшеңіз
- Топ жасау
- Топқа S3 шкафына және CloudFront бағдарламасына топтық қатынауды беріңіз
- Пайдаланушы жасау және Топқа қосу
- Кіру профилін жасау және кілттерді жасау
- Қолжетімділікті тексеру
Командалық жол интерфейсін (CLI) орнатыңыз және теңшеңіз
IAM Command Line Toolkit - Amazon компаниясының AWS әзірлеушілері құралдарында қол жетімді Java бағдарламасы. Құрал IAM API командаларын қабық утилитасынан (Windows үшін DOS) орындауға мүмкіндік береді.
- Java 1.6 немесе одан жоғары нұсқасын іске қосу керек. Сіз ең соңғы нұсқаны Java.com сайтынан жүктей аласыз. Windows жүйесінде қандай нұсқаны орнатқанын көру үшін, Пәрмен сұрауын ашып, java -version түрін теріңіз. Бұл java.exe сіздің PATH жүйесінде екендігін болжайды.
- IAM CLI құралдар жиынтығын жүктеп алыңыз және жергілікті дискіңізде бір жерде бекітіңіз.
- CLI құралдар жиынтығының түбірінде жаңарту қажет болатын 2 файл бар.
- aws-credential.template: Бұл файл AWS тіркелгі деректерін ұстайды. AWSAccessKeyId және AWSSecretKey файлыңызды қосыңыз, файлды сақтап, жабыңыз.
- client-config.template : Прокси-сервер қажет болса, бұл файлды жаңарту қажет. # Белгісін алып тастаңыз және ClientProxyHost, ClientProxyPort, ClientProxyUsername және ClientProxyPassword жаңартыңыз. Файлды сақтау және жабу.
- Келесі қадам қоршаған ортаны айнымалыларды қосуды қамтиды. Басқару панеліне өтіңіз Жүйе сипаттары Кеңейтілген жүйелік параметрлер Қоршаған ортаны айнымалылар. Келесі айнымалыларды қосыңыз:
- AWS_IAM_HOME : Бұл айнымалы мәнді CLI құралдар жиынтығын ашатын каталогқа орнатыңыз. Егер сіз Windows жүйесін іске қосып, оны C дисктің түбіріне шығарсаңыз, айнымалылар C: \ IAMCli-1.2.0 болады.
- JAVA_HOME : Осы айнымалы мәнді Java орнатылатын каталогқа орнатыңыз. Бұл java.exe файлының орналасуы болады. Кәдімгі Windows 7-дегі Java орнатылымында бұл C: \ Program Files (x86) \ Java \ jre6 сияқты болады.
- AWS_CREDENTIAL_FILE : Бұл айнымалы мәнді жоғарыда жаңартылған aws-credential.template файлының жолына және файлына орнатыңыз. Егер сіз Windows жүйесін іске қосып, оны C дисктің түбірімен ашсаңыз, айнымалылар C: \ IAMCli-1.2.0 \ aws-credential.template болады.
- CLIENT_CONFIG_FILE : Егер сізге прокси сервер қажет болса, осы айнымалыны қосу қажет. Егер сіз Windows жүйесін іске қосып, оны C дисктің түбірімен ашсаңыз, онда C: \ IAMCli-1.2.0 \ client-config.template болады. Керек емес болса, осы айнымалыны қосыңыз.
- Орнатуды Command Prompt командасына барып, iam-userlistbypath енгізіңіз. Қате алмағаныңызша, сізге бару керек.
Барлық IAM командалары командалық кеңестен орындалуы мүмкін. Барлық командалар «iam-» басталады.
Топ жасау
Әр AWS есептік жазбасында 100-ден астам топ құруға болады. IAM-ға рұқсаттарды пайдаланушы деңгейінде орнатуға болады, ал топтарды пайдалану ең жақсы тәжірибе болады. Мұнда IAM тобын құру процесі.
- Топты құрудың синтаксисі iam-groupcreate -g GROUPNAME [-p PATH] [-v], онда -p және -v - опциялар. Пәрмен жолы интерфейсіндегі толық құжаттама AWS құжаттарында қол жетімді.
- Егер сіз «тамаша» деп аталатын топты құруды қаласаңыз, сіз командалық кеңесте «iam-groupcreate-aw керемет пайдаланушылар» тобына кіре аласыз.
- Топтың командалық кеңесте iam-grouplistbypath енгізу арқылы дұрыс құрылғанын тексеруге болады. Егер сіз осы топты ғана құрастырдыңыз, онда нәтиже «arn: aws: iam :: 123456789012: group / awesomeusers» дегенді білдіреді, мұнда нөмір AWS тіркелгісінің нөмірі болып табылады.
Топқа S3 шкафына және CloudFront бағдарламасына топтық қатынауды беріңіз
Саясат S3 немесе CloudFront бағдарламасында сіздің тобыңыздың не істей алатындығын басқарады. Әдепкі бойынша, сіздің топ AWS-те ештеңеге қол жеткізе алмайды. Саясаттар туралы құжаттарды жақсы деп таптым, бірақ бірнеше саясатты жасаған кезде, мен жұмыс істегім келетін нәрселерді қалай жұмыс істеуге болатындығын тексеру мен қателік жасадым.
Сізде саясат жасаудың бірнеше нұсқасы бар.
Олардың біреуі тікелей командалық кеңесті енгізе аласыз. Саясат жасай аласыз және оны өзгерте аласыз, себебі мен саясатты мәтіндік файлға қосып, одан кейін мәтіндік файлды iam-groupuploadpolicy командасымен бірге параметр ретінде жүктеу жеңілдейді. Мәтіндік файлды пайдаланып, IAM-ге жүктеп салу процесі.
- Блокнот сияқты нәрсені пайдаланыңыз және келесі мәтінді енгізіңіз және файлды сақтаңыз:
{
«Өтініш»: [{
«Әсер»: «рұқсат ету»,
«Әрекет»: «s3: *»,
«Ресурс»: [
«arn: aws: s3 ::: BUCKETNAME»,
«arn: aws: s3 ::: BUCKETNAME / *»]
},
{
«Әсер»: «рұқсат ету»,
«Әрекет»: «s3: List AllMyBuckets»,
«Ресурс»: «arn: aws: s3 ::: *»
},
{
«Әсер»: «рұқсат ету»,
«Әрекет»: [«cloudfront: *»],
«Ресурс»: «*»
}
]
} - Осы саясатқа қатысты 3 бөлім бар. Әсер ету кейбір қатынастарға рұқсат ету немесе тыйым салу үшін пайдаланылады. Әрекет - топ жасайтын нақты нәрселер. Ресурс жеке шелекке қол жеткізу үшін пайдаланылатын болады.
- Әрекеттерді жеке-жеке шектеуге болады. Бұл мысалда, «Әрекет»: [«s3: GetObject», «s3: ListBucket», «s3: GetObjectVersion»], топ шелек мазмұнын және жүктеу нысандарын тізімдей алады.
- Бірінші бөлім «Топқа» «BUCKETNAME» шелегі үшін барлық S3 әрекеттерін орындауға мүмкіндік береді.
- Екінші бөлім «Топқа» S3 ішіндегі барлық шелектердің тізімін береді. Сіз AWS консолі сияқты нәрсені пайдалансаңыз, шелек тізімін нақты көре алуыңыз үшін сізге қажет.
- Үшінші бөлім топқа CloudFront-ке толық кіру мүмкіндігін береді.
IAM саясатына келетін болсақ, көптеген нұсқалар бар. Amazon AWS Policy Generator деп аталатын шынымен керемет құрал бар. Бұл құрал сіздің саясатын жасай аласыз және саясатты іске асыру үшін қажетті нақты кодты жасай алатын GUI ұсынады. Сондай-ақ, AWS Identity және Access Management құжаттамасын пайдаланудың онлайн құжаттамасын пайдаланудың Access Policy Language («Access Policy Language») бөлімін тексеруге болады.
Пайдаланушы жасау және Топқа қосу
Жаңа пайдаланушыны құру процесі және оларға кіруді қамтамасыз ету үшін топқа қосу екі қадамды қамтиды.
- Пайдаланушыны жасау синтаксисі - iam-usercreate -u USERNAME [-p PATH] [-g GROUPS ...] [-k] [-v] мұнда -p, -g, -k және -v - опциялар. Пәрмен жолы интерфейсіндегі толық құжаттама AWS құжаттарында қол жетімді.
- Пайдаланушыны «bob» жасауды қаласаңыз, сіз командалық кеңесте «iam-usercreate -u bob -g awesomeusers» енгізіңіз.
- Пайдаланушыны командалық кеңесте iam-grouplistusers -g керемет пайдаланушыларды енгізу арқылы дұрыс жасалғанын тексеруге болады. Егер сіз тек осы пайдаланушыны жасаған болсаңыз, онда нәтиже «arn: aws: iam :: 123456789012: user / bob» сияқты болады, мұндағы нөмір AWS тіркелгісінің нөмірі болып табылады.
Кіру профилін жасау және кілттер жасау
Осы сәтте сіз пайдаланушыны құрдыңыз, бірақ S3-ден объектілерді шын мәнінде қосу және жою әдісімен қамтамасыз етуіңіз керек.
Пайдаланушыларға IAM арқылы S3-ке қатынауды қамтамасыз ету үшін 2 нұсқа бар. Кіру профилін жасауға және пайдаланушыларыңызға құпия сөзбен қамтамасыз етуге болады. Олар Amazon AWS консолына кіру үшін тіркелгі деректерін пайдалана алады. Екінші параметр - пайдаланушыларға кіру кілті мен құпия кілт беру. Олар осы кілттерді S3 Fox, CloudBerry S3 Explorer немесе S3 браузері сияқты үшінші тарап құралдарында пайдалана алады.
Кіру профилін жасау
S3 пайдаланушылары үшін кіру профилін жасау оларды Amazon AWS консолына кіру үшін пайдалануға болатын пайдаланушы аты мен құпия сөзімен қамтамасыз етеді.
- Кіру профилін жасау синтаксисі - iam-useraddloginprofile -u USERNAME -p PASSWORD. Пәрмен жолы интерфейсіндегі толық құжаттама AWS құжаттарында қол жетімді.
- Егер сіз «bob» пайдаланушы үшін кіру профилін жасауды қаласаңыз, сіз командалық кеңесте «iam-useraddloginprofile -u bob -p PASSWORD» енгізесіз.
- Командалық кеңесте iam-usergetloginprofile -u bob енгізу арқылы кіру профилінің дұрыс жасалғанын тексеруге болады. Егер сіз боб үшін логин профилін жасаған болсаңыз, онда шығыс «пайдаланушы бумасы үшін кіру профилі бар» деген сияқты болады.
Кілттерді жасау
AWS құпия қатынау кілті мен тиісті AWS кілтінің идентификаторын жасау сіздің пайдаланушыларға бұрын айтылғандай 3-ші тарап бағдарламаларын пайдалануға мүмкіндік береді. Қауіпсіздік шарасы ретінде пайдаланушы профилін қосу барысында осы кілттерді ғана ала аласыз. Командалық кеңестен шығуды көшіріп, қойып, мәтіндік файлға сақтаңыз. Сіз файлды пайдаланушыға жібере аласыз.
- Пайдаланушы үшін кілттерді қосудың синтаксисі - iam-useraddkey [-u USERNAME]. Пәрмен жолы интерфейсіндегі толық құжаттама AWS құжаттарында қол жетімді.
- Пайдаланушы үшін «bob» кілті жасағыңыз келсе, Командалық кеңесте iam-useraddkey -u bob енгізіңіз.
- Команда келесідей көрінетін кілттерді шығарады:
AKIACOOB5BQVEXAMPLE
BvQW1IpqVzRdbwPUirD3pK6L8ngoX4PTEXAMPLE
Бірінші жол - Access Key идентификаторы, ал екінші жолы - құпия қатынау кілті. Үшінші тарап бағдарламалық жасақтамасына қажет.
Қолжетімділікті тексеру
Енді сіз IAM топтары / пайдаланушыларын құрып, топтарды қолжетімділікті саясат арқылы қолдана отырып, кіру рұқсатын тексеруіңіз керек.
Консольдық қатынас
Пайдаланушыларыңыз AWS консолына кіру үшін пайдаланушы атын және құпия сөзін пайдалана алады. Дегенмен, бұл негізгі AWS есептік жазбасында пайдаланылатын тұрақты консольдық кіру беті емес.
Сіз тек Amazon AWS тіркелгіңіз үшін кіру пішінін беретін арнайы URL мекенжайы бар. Мұнда IAM пайдаланушыларына арналған S3 жүйесіне кіру үшін URL-мекенжайы көрсетілген.
https://AWS-ACCOUNT-NUMBER.signin.aws.amazon.com/console/s3
AWS-ACCOUNT-NUMBER сіздің тұрақты AWS шот нөмірі болып табылады. Сіз бұл ақпаратты Amazon Web Service Sign In форматында тіркеу арқылы ала аласыз. Жүйеге кіріңіз және Тіркелгіге басыңыз Есептік жазба қызметі. Тіркелгі нөмірі жоғарғы оң жақ бұрышта орналасқан. Жолақтарды алып тастаңыз. URL https://123456789012.signin.aws.amazon.com/console/s3 сияқты көрінеді.
Access кілттерін пайдалану
Сіз осы мақалада айтылған үшінші тарап құралдарының кез-келгенін жүктеуге және орнатуға болады. 3 жақтың құрал құжаттарына сәйкес кіру кілті идентификаторын және құпия қатынау кілтін енгізіңіз.
Бастапқы пайдаланушыны жасауды және осы пайдаланушыны S3-те не істеу керектігін бәрін жасай алатындығын толық тексеріп шығуды ұсынамын. Пайдаланушыларыңыздың бірін растағаннан кейін барлық S3 пайдаланушыларыңызды орнатуды жалғастыра аласыз.
Ресурстар
Сізге Identity & Access Management (IAM) туралы жақсы түсінік беру үшін бірнеше ресурстар бар.
- IAM-пен жұмысқа кірісу
- IAM командалық жолының құралдар жиынтығы
- Amazon AWS консолі
- AWS Policy Generator
- AWS Identity және Access Management пайдалану
- IAM Release Notes
- IAM пікірталас форумы
- IAM ЖҚС