Hoe maak ik een SQS-wachtrij aan in Amazon Web Services om gebeurtenissen over Live Evenementen van Canvas te ontvangen?

Als je gegevens van Canvas wilt ontvangen, zul je een wachtrij in Amazon Web Services moeten instellen en onderhouden. Daarnaast zul je de juiste machtigingen aan de wachtrij moeten verlenen om gegevens te ontvangen.

Nadat je een wachtrij met de juiste machtigingen hebt ingesteld, kun je je abonneren op evenementen in Data Services en gegevens gaan ontvangen.

Opmerkingen:

  • FIFO-wachtrijen worden momenteel niet ondersteund.
  • Wanneer je een SQS-wachtrij instelt kun je long-polling in een standaard wachtrij inschakelen. Long-polling helpt het aantal lege reacties en valse lege reacties te elimineren. Raadpleeg de Amazon SQS Long Polling documentatie voor meer informatie over long-polling.

Open de Amazon SQS-console

Open in de Amazon Web Services-console de Simple Queue Service (SQS)-console door de naam in het veld Services [1] te typen. Klik op de naam wanneer de Simple Queue Service in de lijst wordt weergegeven [2]. 

Nieuwe wachtrij maken

Nieuwe wachtrij maken

Klik in de Amazon SQS-console op de knop Wachtrij maken (Create queue).

Een standaard wachtrij selecteren

Een standaard wachtrij selecteren

Selecteer in de sectie Type de optie Standaard (Standard).

Opmerking: FIFO-wachtrijen worden momenteel niet ondersteund.

Een naam voor de wachtrij invoeren

Een naam voor de wachtrij invoeren

Voer een naam voor de wachtrij in. De naam van de wachtrij moet beginnen met canvas-live-events.

Configuratiedetails invoeren

Configuratiedetails invoeren

Voer de Configuratiedetails in. Je kunt je voorkeuren invoeren voor de zichtbaarheidstime-out (visibility timeout) [1], leveringsvertraging (delivery delay) [2], wachttijd voor ontvangen berichten (receive message wait time) [3], rententieperiode berichten (message retention period) [4] en de maximale berichtgrootte (maximum message size [5].

De details van het toegangsbeleid invoeren

Machtigingsdetails invoeren

Voer de details voor je toegangsbeleid in.

Selecteer in de sectie Kies methode (Choose method) de optie Basic [1].

Selecteer in de sectie Definieer wie berichten naar de wachtlijst kan sturen (Define who can send messages to the queue) de optie Alleen de gespecificeerde AWS-accounts, IAM-gebruikers en rollen (Only the specified AWS accounts, IAM users and roles) [2].

Voor in het veld voor de account-ID het accountnummer 636161780776 in [3]. De wachtrij heeft dit accountnummer nodig voor het ontvangen van gegevens over Live Evenementen.

Je kunt ook selecteren wie de berichten ontvangt in de sectie Definieer wie berichten uit de wachtrij kan ontvangen (Define who can receive messages from the queue) [4].

Wachtrij opslaan

Wachtrij opslaan

Je kunt aanvullende details toevoegen in de instellingen voor de Codering (Encoding) [1], de instelling voor de Dode-letterwachtrij (Dead-letter queue) [2] en de instellingen voor Labels (Tags) [3]. Al deze instellingen zijn optioneel.

Klik op de knop Wachtrij maken (Create queue) [4] om je wachtrij te maken.

Wachtrijmachtigingen bekijken

Wachtrijmachtigingen bekijken

In het gebied met de details van de wachtrij, worden de machtigingen weergegeven in het tabblad Machtigingen.

Klik op het pictogram voor Bewerken [1] om de machtiging te bewerken. Klik op het pictogram voor Verwijderen [2] om de machtiging te verwijderen.

De SSE-instelling gebruiken met je SQS (Optioneel)

De Canvas Live Evenementen-service ondersteund SSE op SQS. Om SSE te kunnen gebruiken moeten de volgende instellingen zijn ingeschakeld op de SQS van de klant:

1. Maak een CMK of aangepaste sleutel met dit beleid. Deze kan worden gegenereerd via de volgende stappen voor het maken van een CMK. Daarbij klik je tijdens stap 4 (Machtigingen voor gebruik van de sleutel definiëren) Define Key Usage Permissions) op "Een ander AWS-account toevoegen" ("Add another AWS Account") en voer je het Instructure-accountnummer 636161780776 in.

{
 "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. Maak een SQS-wachtrij en schakel SSE in. Verstrek de ARN van de zojuist gemaakte CMK.

3. Stel een nieuw IAM-beleid op dat toegang verleent tot de wachtrij en de sleutel, het beleid moet er precies zo uitzien:

{
 "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. Maak een nieuwe IAM-gebruiker aan en voeg het bovenstaande beleid bij. Sla de toegangssleutel en geheime sleutel op en geef ze aan ons als onderdeel van het abonnement.