Hvordan oppretter jeg en SQS-kø i Amazon Web-tjenester for å motta direktehendelses-data fra Canvas?

Skal du motta data fra Canvas må du opprette og vedlikeholde en kø i Amazon Web Services. I tillegg må du gi køen de nødvendige tillatelsene til å motta data.

Når du har konfigurert en kø med de riktige tillatelsene, kan du abonnere på hendelser i Data Services og begynne å motta data.

Merknader:

  • FIFO-køer støttes foreløpig ikke.
  • Når du konfigurerer en SQS-kø, kan du aktivere lang polling i en standardkø. Lang polling bidrar til å eliminere antall tomme svar og falske tomme svar. Vil du ha mer informasjon om lang polling, kan du se Dokumentasjon for lang polling på Amazon SQS.

Åpne Amazon SQS-konsollet

I Amazon Web-tjenester-konsollen åpner du Simple Queue Service (SQS)-konsollen ved å skrive navnet i feltet Tjenester (Services) [1]. Klikk på navnet [2] når Simple Queue Service dukker opp på listen. 

Opprett Ny kø

Opprett Ny kø

Klikk på tasten Opprett kø (Create queue) på Amazon SQS-konsollet.

Velg standard kø

Velg standard kø

Velg alternativet Standard i Type-seksjonen.

Merknad: FIFO-køer støttes foreløpig ikke.

Angi køens navn

Angi køens navn

Opprett et navn på køen. Navnet på køen må begynne med canvas-direktehendelser.

Angi konfigurasjonsdetaljer

Angi konfigurasjonsdetaljer

Angi konfigurasjonsdetaljene. Du kan angi preferanser for tidsavbrudd for synlighet [1], leveringsforsinkelse [2], ventetid for mottak av meldinger [3], lagringsperiode for meldinger [4] og maksimal meldingsstørrelse [5].

Angi detaljer om retningslinjer for tilgang

Angi detaljer om tillatelse

Angi detaljer om retningslinjer for tilgang.

Velg alternativet Grunnleggende (Basic) [1] i seksjonen Velg metode.

I seksjonen Definer hvem som kan sende meldinger til køen (Define who can send messages to the queue), velger du alternativet Kun de spesifiserte AWS-kontoene, IAM-brukerne og rollene (Only the specified AWS accounts, IAM users and roles) [2].

Angi kontonummeret 636161780776 [3] i konto-ID-feltet. Dette kontonummeret er nødvendig for at køen skal kunne motta Direkte-hendelser-data.

Du kan velge hvem som skal motta meldinger i seksjonen Definer hvem som kan motta meldinger fra køen (Define who can receive messages from the queue) [4].

Lagre køen

Lagre køen

Du kan legge til ekstra detaljer i innstillingene Kryptering (Encryption) [1], i innstillingene Kø for tapte brev (Dead-letter queue) [2], og i innstillingene Tagger (Tags) [3]. Alle disse innstillingene er valgfrie.

Klikk på tasten Opprett kø (Create queue) [4]for å opprette køen.

Vis tillatelser for køen

Vis tillatelser for køen

I området for kødetaljer vises tillatelsen i fanen Tillatelser (Permissions).

Klikk på ikonet Rediger [1] for å redigere tillatelsen. Hvis du vil slette tillatelsen, klikker du på ikonetSlett [2].

Bruke SSE-innstillinger med SQS (valgfritt)

Tjenesten Canvas-direktehendelser støtter SSE aktivert på SQS. For at SSE skal kunne brukes, må følgende oppsett være aktivert på kundens SQS:

1. Opprett en CMK eller egendefinert nøkkel med disse retningslinjene, som kan genereres ved å følge trinnene for å opprette en CMK, og i trinn 4 (Definer tillatelser for bruk av nøkkelen) klikker du på "Legg til en annen AWS-konto" og angi 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-konto
 ]
 },
 "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-konto
 ]
 },
 "Action": [
 "kms:CreateGrant",
 "kms:ListGrants",
 "kms:RevokeGrant"
 ],
 "Resource": "*",
 "Condition": {
 "Bool": {
 "kms:GrantIsForAWSResource": "true"
 }
 }
 }
 ]
}??????????????????????????????????????????????????????????????????????????????

2. Opprett en SQS-kø og aktiver SSE. Oppgi ARN for den nyopprettede CMK-en.

3. Opprett en ny retningslinje for IAM som gir tilgang til køen og nøkkelen. Retningslinjen må se nøyaktig slik ut:

{
 "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. Opprett en ny IAM-bruker og legg til retningslinjen ovenfor. Lagre tilgangsnøkkelen og den hemmelige nøkkelen, og send dem til oss som en del av abonnementet.