General
P: ¿El LMS implementa políticas de cuota u otras restricciones de uso, como límites de tasa, para las solicitudes de extensión?
R: Sí y no. Para LTI Advantage 1.3, los extremos de LTI para AGS y NRPS se limitan por la tasa exactamente de la misma manera que las API de Brightspace. La limitación de tasa se define por cada integración, no por usuario. Los resultados de LTI 1.1 preexistente no se limitan por la tasa.
P. Estoy recibiendo una “entidad no procesable 422” cuando envío un puntaje de LineItem desde una herramienta a la plataforma.
R. Este mensaje de error se envía cuando una herramienta intenta enviar un puntaje de LineItem para un usuario que no se puede calificar; esta funcionalidad está controlada por la opción Pueden calificarse en Calificaciones. Esto se puede encontrar navegando a Roles y permisos > Editar configuración > Opciones de comportamiento de la herramienta.
Autenticación
P: Recibo un error 404 cuando intento volver a iniciar la plataforma.
R: Es obligatorio incluir todos los parámetros (incluido el estado opcional) cuando se realiza un nuevo inicio para vincular la solicitud.
P: ¿Qué valores se requieren en la solicitud de un token de autenticación?
R: Se requieren los siguientes valores:
- iss: un ID único de quién emitió el JWT. El valor de client_id de la plataforma. Igual que sub.
- sub: al igual que el valor iss, es el client_ID de OAuth de la plataforma.
- aud: identificadores de servidor autorizados; proporcionado por la plataforma.
- iat: marca de tiempo del momento de creación del JWT.
- exp: marca de tiempo del momento en que vencerá el JWT.
- jti: un identificador único (potencialmente reutilizable) para el token.
https://www.imsglobal.org/spec/security/v1p0#using-json-web-tokens-with-oauth-2-0-client-credentials-grant
P: ¿Brightspace admite claves públicas y privadas de una herramienta?
R: No. Conforme a las prácticas recomendadas, Brightspace decidió admitir solamente el conjunto de claves de JWK de la herramienta.
P: Me aparece el mensaje “error_description”: “Error de validación de aserción: No se encontró el KeyID en el token”.
R: Brightspace admite las rutas JWKS de la herramienta. La clave debe estar envuelta en un arreglo de claves según el estándar JWKS.
P: Me aparece un mensaje “error”:“Invalid_client”.
R: El iss debe ser el ID del cliente, que es el mismo que el sub. Esto fue una adición tardía a la especificación.
P: Cuando solicito un token de acceso para el servicio LTI, recibo una falla que indica algo como:
{"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: “Kid” debe incluirse únicamente en el encabezado, nunca en la carga útil.
P: A veces, el envío de una solicitud al servicio de autorización falla con un error desconocido, como:
{"error":"server_error","error_description":"An unexpected exception occured"}
R: Este es un error que proviene de nuestro servicio de autenticación, lo cual puede ser difícil de depurar. Por lo general, los errores son más claros, pero en los casos en que no lo son, la mejor opción es que la herramienta recupere la solicitud y nos envíe para que depuremos el problema.
P: ¿La plataforma admite GET o POST para autorizar direcciones URL de redirección?
R: Tanto GET como POST son métodos compatibles
P: ¿La plataforma admite claves públicas de un solo uso o URL de JWKS?
R: Admitimos el uso de URL de JWKS para las claves de la plataforma y para recuperar las claves de la herramienta.
P: ¿Qué algoritmos de firma se admiten: RS225 o RS512?
R: RS256
P: ¿Qué tamaño de la clave se admite: 1024 o 2048?
R: 2048
P: ¿Cuál es el extremo de recuperación de tokens para la plataforma?
R: URL de acceso de Oauth2 de Brightspace: https://auth.brightspace.com/core/connect/token
P: Recibo una mensaje de solicitud incorrecta.
R: Compruebe la bitácora del sistema de D2L para detectar cualquiera de los siguientes mensajes:
- Sugerencia de mensaje no válida: La sugerencia no existe.
- Sugerencia de mensaje vencida: Esta sugerencia venció. Las sugerencias tienen un plazo de vencimiento de diez minutos para el inicio de sesión inicial.
- No se pudo analizar la sugerencia del mensaje: La sugerencia no tiene el formato correcto. Consulte la especificación.
Servicio de asignaciones y calificaciones
P: ¿Qué flujos o grant types de OAuth2 admite la plataforma para el servicio de Asignaciones y calificaciones?
R: Seguimos la especificación de seguridad Flujo de credenciales de cliente de OAuth2.
P: Mi herramienta muestra una calificación, pero el cuaderno de calificaciones no se actualiza.
R: El cuaderno de calificaciones de Brightspace solo refleja las calificaciones de la herramienta que tengan el estado Calificación completa.
P: Mi pase de LineItem hacia atrás está fallando o no se está creando cuando lo agrego a través de Insertar objetos o del enlace rápido profundo del generador de cursos.
R: D2L recomienda usar un enlace rápido en lugar de un LineItem. Para el flujo de trabajo del generador de cursos, si hace clic en el enlace del panel derecho, la herramienta puede enviar la información para crear el LineItem.
P: “El LineItem no se puede asociar con un ID de enlace de recursos context_launch de componente”.
R: se aceptan LineItems independientes, pero no se puede asociar un LineItem con un componente en Brightspace.
Nombres y roles
P: No recibo usuarios desconocidos para mi herramienta de la lista de clases cuando uso la extensión Nombres y roles.
R: Hay varios factores que podrían afectar la forma en que la plataforma decide enviar a los usuarios:
- Botón de alternancia “Enviar usuarios desconocidos”: La opción más obvia es el botón de alternancia de nivel de implementación que determina si una herramienta está autorizada para recibir usuarios que no conoce. A partir de la versión 20.20.11 de Brightspace, con “Listado de alumnos con usuarios desconocidos para esta implementación”, una solicitud de NRPS de la herramienta genera automáticamente un ID de usuario de LTI para cualquier usuario que nunca haya abierto un enlace de LTI en Brightspace.
- Estructura de su GET: Algo del lado de la herramienta es que es posible solicitar el listado de la clase en vistas filtradas que no solicitan “todos los usuarios”. Las herramientas deben asegurarse de que su solicitud esté estructurada para obtener cualquier usuario en un curso determinado a través de su llamada de API de N&R.
Enlace profundo
P: Recibo un mensaje “IDX10511: Error en la validación de la firma”.
R: En este caso, el módulo comenzó con 00. Hay un error en .NET que le impide manejar esto, y el byte adicional debe eliminarse antes de la codificación.
P: La devolución durante el flujo de trabajo de enlaces profundos me devolvió un Error interno o 500.
R: El KID debe incluirse en el encabezado del JWT.
P: El retorno de enlace profundo está fallando sin errores.
R: Siempre revise la bitácora del sistema. Se podrá ver más información, incluido el mensaje, en el registro del sistema para ayudar a solucionar el problema.
Ejemplo: No se pudo encontrar la clave pública con el ID, lo que significa que el KID del JWT no aparece en el JWKS.
P: Recibo un error de Solicitud incorrecta cuando envío datos de vuelta desde mi herramienta.
R: La sugerencia del mensaje caduca después de seis horas. Si pasa más de seis horas en la herramienta antes de devolver los datos, la sugerencia del mensaje caduca y se genera un error de Solicitud incorrecta.
Migración de API
P: Tengo un componente personalizado con LTI 1.1. ¿Puedo migrarlo con la API a 1.3?
R: No. Recomendamos volver a crear el componente utilizando el flujo de trabajo de colocación de LTI 1.3.