Přejít k navigační liště

Zdroják » Různé » Moje garáž, můj hrad – připojujeme Amazon

Moje garáž, můj hrad – připojujeme Amazon

Články Různé

V tomto díle se budeme věnovat službě AWS Identity and Access Management (IAM),která je určena pro nastavování práv pro přístup k ostatním službám AWS a službě Amazon Simple Queue Service (SQS).

Nálepky:

Amazon Web Services

Amazon Web Services (AWS) je jedna z mnoha cloud služeb. Pro vysvětlení, co jsou to cloud služby a k čemu jsou dobré, doporučuji svůj starší seriál PHP v cloudu. Asi nejznámější služby AWS jsou Amazon Simple Storage Service (S3) a Amazon Elastic Compute Cloud (EC2). O S3 ještě bude řeč a službu EC2 vynechám, protože ji nebudeme v projektu potřebovat. Dříve než začnete pokračovat, tak je třeba si vytvořit účet na AWS. Prvních 12 měsíců můžete některé služby v omezené míře používat zdarma.

Nejdůležitější je ovšem služba AWS Identity and Access Management (IAM), která má na starost přístupová práva k ostatním službám. Než začnete na AWS cokoliv dělat, tak se seznamte hlavně s IAM.

AWS Identity and Access Management (IAM)

Pomocí AWS vytváříte systém přístupových práv k jednotlivým službám. Tento systém je velmi propracovaný a pokud vím, tak nikde jinde něco podobného nenajdete. Můžete například vytvořit uživatele, který smí pouze restartovat virtuální servery, a to pouze, když je přihlášený dvoufaktorovou autorizací. Nebo uživatele, který smí pracovat se zprávami z jedné jediné fronty. IAM je globální služba pro všechna datová centra, většina služeb se nastavují pro různá datová centra zvlášť. První, co byste měli udělat, je nastavit dvoufaktorovou autorizaci (MFA) pro hlavního administrátora. To je účet, pod kterým jste se registrovali na AWS.

image1

Tento kořenový účet používejte jen pro správu AWS. Nikdy v aplikacích.

Než si vysvětlíme základy IAM, tak si nejdříve vytvoříme frontu zpráva SQS, abychom měli pro co nastavovat práva.

Dějová odbočka Amazon SQS

Amazon SQS je služba pro posílání zpráva. Je to jednoduchá fronta, která udržuje zprávy, dokud je někdo nezpracuje nebo se neodstraní na základě vypršení životnosti zprávy.

Po přihlášení do Management Console si v pravém horním rohu vyberte region, kde chcete služby provozovat. Pro Českou republiku je nejbližší region EU Central. Je to datové centrum ve Frankfurtu v Německu. Oproti EU West (Irsko), má výrazně nižší latenci, ale je o něco dražší. Poté, co si vyberete region, přejděte na službu SQS.

image2

Klikněte na Create New Queue a nastavte parametry fronty zpráv.

image3

Parametr Queue Name je asi vcelku jasný. Další parametr Default Visibility Timeout nastavují délku „zneviditelnění“ zprávy při jejím zpracování. Když aplikace zprávu přečte, tak je „zneviditelněna“, aby ji nezpracovávalo více aplikací zároveň. Parametr Message Retention Period nastavuje maximální životnost zprávy, pokud není z fronty odstraněna dříve aplikací.

image4

U nově vytvořené fronty nás zajímá zejména URL a ARN. Tyto dvě hodnoty budeme za chvilku potřebovat. URL je koncový bod fronty zpráva, ARN je jednoznačný identifikátor objektu v rámci AWS, který je potřeba pro nastavení práv v IAM.

Zpět do IAM

Doporučený postup je nejdříve vytvořit skupinu, i kdyby měla mít jednoho uživatele.

image5

Vytvořené skupině pak přiřadíme jen nezbytně nutná práva. V našem případě se bude jednat jen o zjištění URL, čtení, posílání a mazání zpráv v jedné frontě identifikované pomocí ARN. Pro nastavení práv využijeme Policy Generator.

image6

Pomocí Police Generator snadno nastavíte potřebná práva. Pokud si ze začátku nejste jisti, tak můžete použít předdefinované šablony (Select Policy Template).

image7

Výsledkem je šablona ve formátu JSON, která popisuje příslušná práva.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1416128326000",
      "Effect": "Allow",
      "Action": [
        "sqs:DeleteMessage",
        "sqs:ReceiveMessage",
        "sqs:SendMessage",
        "sqs:GetQueueUrl"
      ],
      "Resource": [
        "arn:aws:sqs:eu-central-1:350128058472:garage"
      ]
    }
  ]
}

V dalším kroku vytvoříme uživatele, kterého přidáme do příslušné skupiny. Uživateli nevytvoříme heslo, nebude se tak moci přihlásit do AWS Management Console. Při vytvoření uživatele si nezapomeňte stáhnout přihlašovací údaje. Je to naposled, kdy se k nim dostanete. Pokud o ně přijdete, tak je třeba vytvořit nový pár klíč – bezpečnostní kód.

image8

Nezapomeňte uživatele přidat do skupiny.

image9

Závěr

Než začnete s AWS, tak si nastudujte IAM. Je to naprostý základ bezpečnosti, bez kterého byste se neměli do ničeho pouštět. Jak správně manipulovat s klíči v aplikacích se dozvíte v dalším díle, kde se budeme věnovat knihovně boto pro Python.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře

Robots.txt nestačí. AI crawleři mění, jak weby chrání obsah

Robots.txt zůstává základní signál pro slušné crawlery, ale už neumí popsat hlavní problém: stejný veřejný obsah může sloužit klasickému vyhledávání, AI odpovědím, tréninku modelů i načtení na pokyn uživatele. Provozovatel webu proto musí oddělit účel přístupu, ověřovat identitu botů, měřit dopad na infrastrukturu a u hodnotného obsahu řešit i vynucení pravidel mimo samotný robots.txt.

Jak funguje WordPress Cron a proč občas selhává

„Cron mi nějak neběhá." Klasická věta, která ve WordPress světě může znamenat cokoli od špatně nastavené WP_SITEURL, přes loopback zablokovaný Cloudflarem, až po fatal error v callbacku, který nechal viset transient doing_cron. WP-Cron totiž není skutečný scheduler — je to pseudo-cron závislý na návštěvnosti webu a HTTP loopbacku, se všemi pastmi, které si dokážete představit. Tenhle článek je hloubkový průchod jeho vnitřnostmi: co se reálně děje při spawn_cron(), kde vznikají race conditions, proč selhává a čím ho v produkci nahradit.