Hvordan opretter jeg en SQS-kø i Amazon Web Services for at modtage data om live-begivenheder fra Canvas?

For at modtage data fra Canvas skal du oprette og vedligeholde en kø i Amazon Web Services. Derudover skal du give de relevante tilladelser for, at køen kan modtage data.

Når du har oprettet en kø med de relevante tilladelser, kan du abonnere på begivenheder i datatjenester og begynde at modtage data.

Bemærkninger:

  • FIFO-køer understøttes ikke i øjeblikket.
  • Når du opsætter en SQS-kø, kan du aktivere lang polling i en standardkø. Lang polling hjælper med at eliminere antallet af tomme svar og falske tomme svar. For mere information om lang polling henvises der til  dokumentationenAmazon SQS lang polling.

Åbn Amazon SQS Console

I Amazon Web Services-konsollen skal du åbne Simple Queue Service-konsollen (SQS) ved at skrive navnet i feltet Tjenester (Services) [1]. Når Simple Queue Service vises på listen, skal du klikke på navnet [2]. 

Opret ny kø

Opret ny kø

I Amazon SQS-konsollen skal du klikke på knappen Opret kø (Create queue).

Vælg standardkø

Vælg standardkø

I sektionen Type skal du vælge indstillingen Standard.

Bemærk: FIFO-køer understøttes ikke i øjeblikket.

Indtast navn på køen

Indtast navn på køen

Indtast et navn på køen. Navnet på køen skal begynde med canvas-live-events.

Indtast konfigurationsdetaljer

Indtast konfigurationsdetaljer

Gå ind i Konfiguration (Configuration). Du kan indtaste dine præferencer for synlighedstimeout [1], leveringsforsinkelse [2], ventetid for modtagelse af meddelelse [3], opbevaringsperiode for meddelelse [4] og maksimal meddelelsesstørrelse [5].

Indtast oplysninger om adgangspolitik

Indtast tilladelsesoplysninger

Indtast detaljerne for din adgangspolitik.

I afsnittet Vælg metode skal du vælge indstillingen Grundlæggende (Basic) [1].

I sektionen Definer, hvem der kan sende beskeder til køen, skal du vælge indstillingen Kun de angivne AWS-konti, IAM-brugere og roller (Only the specified AWS accounts, IAM users and roles) [2].

Indtast kontonummeret i konto-ID-feltet 636161780776 [3]. Dette kontonummer er påkrævet, for at køen kan modtage data om live-begivenheder.

Du kan også vælge, hvem der skal modtage beskeder i sektionen Definer, hvem der kan modtage beskeder fra køen (Define who can receive messages from the queue) [4].

Gem kø

Gem kø

Du kan tilføje yderligere detaljer i Kryptering (Encryption) [1], Inaktiv brevkø (Dead-letter queue) [2] og Tags [3]. Alle disse indstillinger er valgfrie.

For at oprette din kø skal du klikke på knappen Opret kø (Create queue) [4].

Se køtilladelse

Se køtilladelse

I området med kødetaljer vises tilladelsen på fanen Tilladelser.

For at redigere tilladelsen skal du klikke på Rediger-ikonet [1]. For at slette tilladelsen skal du klikke på Slet-ikonet [2].

Brug af SSE-indstilling med din SQS (valgfrit)

Canvas-tjenesten for live-begivenheder understøtter SSE aktiveret på SQS. For at SSE kan bruges, skal følgende opsætning være aktiveret på kundens SQS:

1. Opret en CMK eller brugerdefineret nøgle med denne politik, som kan genereres ved at følge trinene for at oprette en CMK og under trin 4 (Definer nøglebrugstilladelser) skal du klikke på "Tilføj en anden AWS-konto" og indtaste Instructure-kontonummeret 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. Opret en SQS-kø, og aktiver SSE. Angiv ARN for den nyoprettede CMK.

3. Opret en ny IAM-politik, som giver adgang til køen og nøglen, politikken skal se præcis sådan ud:

{
 "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. Opret en ny IAM-bruger, og vedhæft ovenstående politik. Gem adgangsnøglen og den hemmelige nøgle, og giv dem til os som en del af abonnementet.