Hur skapar jag en SQS-kö i Amazon Web Services för att ta emot data från Canvas?

För att ta emot data från Canvas måste du konfigurera och underhålla en kö i Amazon Web Services. Du måste även ge rätt behörigheter för att kön ska kunna ta emot data.

När du har konfigurerat en kö med rätt behörigheter kan du prenumerera på händelser i datatjänsterna och börja ta emot data.

Anteckningar:

  • FIFO-köer stöds inte för närvarande.
  • När du konfigurerar en SQS-kö kan du aktivera lång omröstning i en standardkö. Lång omröstning hjälper till att eliminera antalet tomma svar och falska tomma svar. Mer information om lång omröstning finns i dokumentationen Amazon SQS Long Polling.

Öppna Amazon SQS-konsolen

I Amazon Web Services-konsolen öppnar du SQS-konsolen (Simple Queue Service) genom att ange namnet i fältet Tjänster (Services) [1]. När du kan se Simple Queue Service i listan klickar du på namnet [2]. 

Skapa ny kö

Skapa ny kö

I Amazon SQS-konsolen, klicka på knappen Skapa kö (Create Queue).

Välj standardkö

Välj standardkö

I sektionen Typ väljer du alternativet Standard.

Obs! FIFO-köer stöds inte för närvarande.

Ange köns namn

Ange köns namn

Ange ett namn på kön. Könamnet måste börja med canvas-live-events.

Ange konfigurationsuppgifter

Ange konfigurationsuppgifter

Ange uppgifterna för Konfigurationen (Configuration). Du kan ange dina inställningar för synlighetstimeout [1], leveransfördröjning [2], väntetid för mottagande av meddelanden [3], kvarhållningsperiod för meddelanden [4] och maximal meddelandestorlek [5].

Ange information om åtkomstpolicy

Ange behörighetsinformation

Ange information om din åtkomstpolicy.

I sektionen Välj metod väljer du alternativet Bas (Basic) [1].

I sektionen Definiera vem som kan skicka meddelanden till kön (Define who can send messages to the queue), väljer du alternativet Endast de specificerade AWS-kontona , IAM-användare och -roller (Only the specified AWS accounts, IAM users and roles) [2].

I fältet Konto-ID anger du kontonumret 636161780776 [3]. Detta kontonummer krävs för att kön ska kunna ta emot data från livehändelser.

Du kan även välja vilka som ska få ta emot meddelanden i sektionen Definiera vem som kan skicka meddelanden från kön (Define who can receive messages from the queue) [4].

Spara kö

Spara kö

Du kan lägga till ytterliga information i inställningarna för Kryptering (Encryption) [1], DLQ-kö (Dead-letter queue) [2] och Taggar (Tags) [3]. Alla dessa inställningar är valfria.

För att skapa kön klickar du på knappen Skapa kö (Create queue) [4].

Visa köbehörighet

Visa köbehörighet

I köinformationsområdet visas behörigheten på fliken Behörigheter (Permissions)

För att redigera behörigheten, klicka på ikonen Redigera (Edit) [1]. För att radera behörigheten, klicka på ikonen Radera (Delete) [2].

Använda SSE-inställningen med din SQS (valfritt)

Tjänsten för Canvas-livehändelser har stöd för SSE aktiverat på SQS. För att SSE ska kunna användas måste följande konfiguration aktiveras på kundens SQS:

1. Skapa en CMK eller anpassad nyckel med denna policy, som kan genereras genom att följa följande steg för att skapa en CMK. Och under steg 4 Definiera nyckelanvändningsbehörigheter (Define Key Usage Permissions), klickar du på "Lägg till ytterligare AWS-konto" (Add another AWS Account) och anger Instructure-kontonumret 636161780776.

{
 "Id": "key-consolepolicy-3",
 "Version": "2012-10-17",
 "Statement": [
 {
 "Sid": "Enable IAM User Permissions",
 "Effect": "Allow",
 "Principal": {
 "AWS": "arn of the customer account root"
 },
 "Action": "kms:*",
 "Resource": "*"
 },
 {
 "Sid": "Allow access for Key Administrators",
 "Effect": "Allow",
 "Principal": {
 "AWS": "arn of admin user"
 },
 "Action": [
 "kms:Create*",
 "kms:Describe*",
 "kms:Enable*",
 "kms:List*",
 "kms:Put*",
 "kms:Update*",
 "kms:Revoke*",
 "kms:Disable*",
 "kms:Get*",
 "kms:Delete*",
 "kms:TagResource",
 "kms:UntagResource",
 "kms:ScheduleKeyDeletion",
 "kms:CancelKeyDeletion"
 ],
 "Resource": "*"
 },
 {
 "Sid": "Allow use of the key",
 "Effect": "Allow",
 "Principal": {
 "AWS": [
 "arn of admin user",
 "arn:aws:iam::636161780776:root" // instructure account
 ]
 },
 "Action": [
 "kms:Encrypt",
 "kms:Decrypt",
 "kms:ReEncrypt*",
 "kms:GenerateDataKey*",
 "kms:DescribeKey"
 ],
 "Resource": "*"
 },
 {
 "Sid": "Allow attachment of persistent resources",
 "Effect": "Allow",
 "Principal": {
 "AWS": [
 "arn of admin user",
 "arn:aws:iam::636161780776:root" // instructure account
 ]
 },
 "Action": [
 "kms:CreateGrant",
 "kms:ListGrants",
 "kms:RevokeGrant"
 ],
 "Resource": "*",
 "Condition": {
 "Bool": {
 "kms:GrantIsForAWSResource": "true"
 }
 }
 }
 ]
}??????????????????????????????????????????????????????????????????????????????

2. Skapa en SQS-kö och aktivera SSE. Tillhandahåll ARN för den nyskapade CMK:en.

3. Skapa en ny IAM-policy som ger åtkomst till kön och nyckeln. Policyn måste se ut exakt så här:

{
 "Version": "2012-10-17",
 "Statement": [{
 "Effect": "Allow",
 "Action": [
 "kms:GenerateDataKey",
 "kms:Decrypt"
 ],
 "Resource": "CMK arn"
 }, {
 "Effect": "Allow",
 "Action": [
 "sqs:SendMessage",
 "sqs:SendMessageBatch"
 ],
 "Resource": "queue arn"
 }]???????????????????????????????????????????????????

4. Skapa en ny IAM-användare och bifoga ovanstående policy. Spara åtkomstnyckeln och den hemliga nyckeln, och tillhandahåll dem till oss som en del av prenumerationen.