Général
Q : Le SGA a-t-il instauré des politiques de quota ou toute autre restriction en matière d'utilisation comme des limites de taux pour les demandes d'extension?
R : Oui et non. Pour LTI Advantage 1.3, les points d'extrémités IOA pour AGS et Service de provisionnement de noms et rôles ont des taux limités de la même façon que les API Brightspace. La limite de taux est basée sur l'intégration et non sur l'utilisateur. Les résultats de l'ancien LTI (IOA) 1.1 ne sont pas de limite de taux.
Q : Le message « Impossible de traiter l’entité 422 » s’affiche lorsque j’envoie la note d’appréciation d’un élément de ligne d’un outil à la plateforme.
R : Ce message d’erreur s’affiche lorsqu’un outil tente d’envoyer la note d’appréciation d’un élément de ligne pour un utilisateur ne pouvant être noté. Cette fonctionnalité est contrôlée par l’option Peut être notée dans Notes. Voici comment y accéder : Rôles et autorisations > Modifier les paramètres > Options de comportement de l’outil.
Authentification
Q : Je reçois le message d’erreur 404 lorsque j'essaie de relancer la plateforme.
R : Vous devez inclure tous les paramètres (y compris l'état facultatif) lorsque vous relancez la plateforme afin d’associer la demande.
Q : Quelles sont les valeurs requises dans la demande d'un jeton d'authentification?
R : Voici les valeurs requises :
- iss : Un identifiant unique pour la personne qui émet le JWT. La valeur du client_id de la plateforme. Identique à sub.
- Sub : identique à iss, la valeur client_id de OAuth de la plateforme.
- aud : identificateur(s) du serveur autorisé, fourni(s) par la plateforme.
- Donné dans l'enregistrement de l'outil par le biais de l'interface utilisateur.
- URL : https://api.brightspace.com/auth/token Ils ne vont pas ici; utilisez seulement cette valeur dans aud claim.
- Iat : horodatage où le JWT a été créé.
- Exp : horodatage où le JWT expire.
- Jti : Identificateur unique (potentiellement réutilisable) du jeton.
https://www.imsglobal.org/spec/security/v1p0#using-json-web-tokens-with-oauth-2-0-client-credentials-grant
Q : Brightspace prend-il en charge les clés publiques et privées d'un outil?
R : Non; conformément aux meilleures pratiques, Brightspace ne prend en charge que la clé JWK de l’outil.
Q : Je reçois le message : "error_description" : "Error validating assertion: KeyId not found in token".
R : Brightspace prend en charge les itinéraires JWKS de l'outil. La clé doit respecter la norme JWKS.
Q : Je reçois le message : "error" :"invalid_client"?
R : L'iss doit être l'ID client, et le même que le sub. Il s’agit d’un ajout tardif à la spécification.
Q : Lors de la demande d'un jeton d'accès pour le service LTI, je reçois un message d’échec comme :
{"error" :"invalid_grant","error_description":"Client is not authorized to set a 'kid' claim"}
{"error" :"invalid_grant","error_description":"Error validating assertion: KeyId not found in token"}
R : L’ID de clé ne doit être inclus que dans l’en-tête et non dans la charge utile.
Q : Parfois, l'envoi d'une demande au service d'authentification échoue, et je reçois un message d’erreur comme :
{"error" :"server_error","error_description":"An unexpected exception occured"}
R : Ce message étant déclenché par notre service d'authentification, il peut être difficile à régler. Généralement, les messages d’erreur sont plus clairs; lorsqu’ils ne le sont pas, demandez à l'outil de récupérer la demande et de nous l'envoyer pour qu’on règle le problème.
Q : La plateforme prend-elle en charge GET ou POST pour autoriser les URL de redirection?
R : Les méthodes GET et POST sont toutes deux prises en charge.
Q : La plateforme prend-elle en charge les clés publiques uniques ou l'URL JWKS?
R : Nous prenons en charge l'utilisation des URL JWKS pour les clés de la plateforme et pour récupérer les clés de l'outil.
Q : Quels algorithmes de signature sont pris en charge : RS225 ou RS512?
R : RS256
Q : Quelle est la taille de la clé prise en charge : 1024 ou 2048?
R : 2048
Q : quel est le point d’extrémité de récupération de jetons pour la plateforme?
R : URL de Oauth2 Access Token de Brightspace : https://auth.brightspace.com/core/connect/token
Q : Je reçois un avis de Requête incorrecte.
R : consultez le journal de système de D2L pour vérifier s'il comprend l'un des messages suivants :
- Indice de message non valide : l'indice n'existe pas.
- Indice de message expiré : cet indice est expiré. Pour la connexion initiale, les indices expirent après dix minutes.
- Echec de l'analyse de l’indice de message : le format de l'indice n'est pas valide. Reportez-vous aux spécifications.
Service Travaux et notes
Q : quel type d’autorisation OAuth 2 la plateforme prend-elle en charge pour le service Travaux et notes?
R : Nous suivons la spécification de sécurité : identifiants du client servant à autoriser l’octroi du code OAuth2.
Q : Mon outil indique une note, mais le carnet de notes n'est pas mis à jour.
R : Le carnets de notes de Brightspace ne reflète que les notes de l'outil dont l'état est entièrement noté.
Q : La transmission de mon élément de ligne échoue ou n'est pas effectuée lorsque j’utilise le lien rapide Inclure quelque chose ou le lien profond du créateur de cours.
R : D2L recommande d'utiliser un lien rapide si un élément de ligne LineItem est requis. Pour le flux de travail du créateur de cours, le fait de cliquer sur le lien à la droite du panneau permet à l'outil d'envoyer l'information pour créer l’élément de ligne.
Q : « L’élément de ligne ne peut pas être associé à l’ID de lien de ressource context_launch d’un composant graphique ».
R : Les éléments de lignes seuls seront acceptés, mais ne peuvent pas être associés à un composant graphique dans Brightspace.
Noms et rôles
Q : Je n'obtiens pas d'utilisateurs inconnus provenant de la liste des inscrits au cours lorsque j'utilise l'extension Noms et rôles.
R : Quelques raisons peuvent affecter la façon dont la plateforme envoie des utilisateurs :
- Bouton d’activation Envoyer les utilisateurs inconnus : ce bouton détermine si un outil est autorisé à recevoir des utilisateurs inconnus. Depuis la version 20.20.11 de Brightspace, si l’option « Inclure les utilisateurs inconnus dans le déploiement de la liste des inscrits au cours » est activée, une requête du Service de provisionnement de noms et rôles de l'outil générera automatiquement un ID utilisateur LTI pour tout utilisateur qui n'a jamais lancé un lien LTI dans Brightspace.
- Structure de votre GET : Il est possible d’accéder à la liste des inscrits au cours dans les vues filtrées qui ne demandent pas « Tous les utilisateurs ». Les outils doivent s'assurer que votre demande est structurée de manière à obtenir tous les utilisateurs d'un cours donné au moyen de leur appel d'API N&R.
Liaison profonde
Q : Je reçois le message : "IDX10511 : Signature validation failed."
R : Dans ce cas, le module a commencé par 00. Il y a un bogue dans .NET qui ne peut pas gérer ceci et l'octet supplémentaire doit être supprimé avant l'encodage.
Q : la publication au cours du processus de liaison approfondie a généré une erreur interne ou un code d’erreur 500.
R : KID doit être inclus dans l'en-tête du JWT.
Q : la liaison profonde échoue sans message d’erreur.
R : vérifiez toujours le journal du système. Des informations supplémentaires, y compris le message, seront visibles dans le journal du système pour vous aider à résoudre le problème.
Exemple : le message « Could not find public key with id » signifie que KID dans le JWT n'apparaît pas dans le JWKS.
Q : Je reçois un avis de requête incorrecte lorsque j'envoie des données provenant de mon outil.
R : L'indice de message expire après six heures. Si vous êtes dans l'outil pendant plus de six heures avant de renvoyer les données, l'indice de message expire et génère un avis de requête incorrecte.
API de migration
Q : J'ai un composant graphique personnalisé qui utilise LTI 1.1. Puis-je le migrer vers la version 1.3 à l'aide de l'API?
R : Non; nous vous recommandons de recréer le composant graphique à l'aide du flux de travail de LTI 1.3.