Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Take a Test est une application UWP basée sur un navigateur qui affiche des évaluations en ligne verrouillées pour les tests à enjeux élevés, ce qui permet aux enseignants de se concentrer sur le contenu d’évaluation plutôt que sur la façon de fournir un environnement de test sécurisé. Pour ce faire, il utilise une API JavaScript que toute application web peut utiliser. L’API Take-a-test prend en charge la norme de l’API de navigateur SBAC pour les tests principaux courants.
Pour plus d’informations sur l’application elle-même, consultez la référence technique De l’application Take a Test . Pour obtenir de l’aide sur la résolution des problèmes, consultez Résoudre les problèmes liés à Microsoft Take a Test avec l’observateur d’événements.
Documentation de référence
Les API Take a Test existent dans les espaces de noms suivants. Notez que toutes les API dépendent d’un objet global SecureBrowser .
| Namespace | Descriptif |
|---|---|
| espace de noms de sécurité | Contient des API qui vous permettent de verrouiller l’appareil à des fins de test et d’appliquer un environnement de test. |
Espace de noms de sécurité
L’espace de noms de sécurité vous permet de verrouiller l’appareil, de vérifier la liste des processus utilisateur et système, d’obtenir des adresses MAC et IP, et d’effacer les ressources web mises en cache.
| Méthode | Descriptif |
|---|---|
| verrouillage | Verrouille l’appareil à des fins de test. |
| isEnvironmentSecure | Détermine si le contexte de verrouillage est toujours appliqué à l’appareil. |
| getDeviceInfo | Obtient des détails sur la plateforme sur laquelle l’application de test est en cours d’exécution. |
| examineProcessList | Obtient la liste des processus utilisateur et système en cours d’exécution. |
| close | Ferme le navigateur et déverrouille l’appareil. |
| getPermissiveMode | Vérifie si le mode permissif est activé ou désactivé. |
| setPermissiveMode | Bascule le mode permissif activé ou désactivé. |
| emptyClipBoard | Efface le presse-papiers du système. |
| getMACAddress | Obtient la liste des adresses MAC pour l’appareil. |
| getStartTime | Obtient l’heure à laquelle l’application de test a été démarrée. |
| getCapability | Interroge si une fonctionnalité est activée ou désactivée. |
| setCapability | Active ou désactive la fonctionnalité spécifiée. |
| isRemoteSession | Vérifie si la session actuelle est connectée à distance. |
| isVMSession | Vérifie si la session active s’exécute dans une machine virtuelle. |
Verrouillage
Verrouille l’appareil. Également utilisé pour déverrouiller l’appareil. L’application web de test appelle cet appel avant de permettre aux étudiants de commencer le test. L’implémenteur est tenu de prendre les mesures nécessaires pour sécuriser l’environnement de test. Les étapes prises pour sécuriser l’environnement sont spécifiques à l’appareil et, par exemple, incluent des aspects tels que la désactivation des captures d’écran, la désactivation de la conversation vocale en mode sécurisé, l’effacement du Presse-papiers système, l’entrée en mode plein écran, la désactivation des espaces dans les appareils OSX 10.7+, etc. L’application de test active le verrouillage avant le début d’une évaluation et désactive le verrouillage lorsque l’étudiant a terminé l’évaluation et est hors du test sécurisé.
Syntaxe
void SecureBrowser.security.lockDown(Boolean enable, Function onSuccess, Function onError);
Paramètres
-
enable- true pour exécuter l’application Take-a-Test au-dessus de l’écran de verrouillage et appliquer des stratégies décrites dans la référence technique de l’application Take-a-Test. false arrête d’exécuter Take-a-Test au-dessus de l’écran de verrouillage et le ferme, sauf si l’application n’est pas verrouillée ; dans ce cas, il n’y a aucun effet. -
onSuccess- [facultatif] La fonction à appeler après que le verrouillage a été activé ou désactivé avec succès. Il doit être de la formeFunction(Boolean currentlockdownstate). -
onError- [facultatif] Fonction à appeler si l’opération de verrouillage a échoué. Il doit être de la formeFunction(Boolean currentlockdownstate).
Exigences
Windows 10, version 1709 ou ultérieure
estEnvironnementSécurisé
Détermine si le contexte de verrouillage est toujours appliqué à l’appareil. L'application web de test appellera ceci avant de permettre aux étudiants de commencer le test et régulièrement pendant le test.
Syntaxe
void SecureBrowser.security.isEnvironmentSecure(Function callback);
Paramètres
-
callback- Fonction à appeler une fois cette fonction terminée. Il doit s’agir du formulaireFunction(String state)dans lequelstatese trouve une chaîne JSON contenant deux champs. Le premier est lesecurechamp, qui s’affichetrueuniquement si tous les verrous nécessaires ont été activés (ou les fonctionnalités désactivées) pour activer un environnement de test sécurisé, et aucun de ces éléments n’a été compromis depuis que l’application a entré le mode de verrouillage. L’autre champ inclutmessageKeyd’autres détails ou informations spécifiques au fournisseur. L’intention ici est de permettre aux fournisseurs de placer des informations supplémentaires qui augmentent l’indicateur booléensecure:
{
'secure' : "true/false",
'messageKey' : "some message"
}
Exigences
Windows 10, version 1709 ou ultérieure
getDeviceInfo
Obtient des détails sur la plateforme sur laquelle l’application de test est en cours d’exécution. Cela permet de compléter toute information qui est discernable de l’agent utilisateur.
Syntaxe
void SecureBrowser.security.getDeviceInfo(Function callback);
Paramètres
-
callback- Fonction à appeler une fois cette fonction terminée. Il doit s’agir du formulaireFunction(String infoObj)dans lequelinfoObjse trouve une chaîne JSON contenant plusieurs champs. Les champs suivants doivent être pris en charge :-
osreprésente le type de système d’exploitation (par exemple : Windows, macOS, Linux, iOS, Android, etc.) -
namereprésente le nom de la version du système d’exploitation, le cas échéant (par exemple : Sierra, Ubuntu). -
versionreprésente la version du système d’exploitation (par exemple : 10.1, 10 Pro, etc.) -
brandreprésente la personnalisation du navigateur sécurisé (par exemple : OAKS, CA, SmarterApp, etc.) -
modelreprésente le modèle d’appareil pour les appareils mobiles uniquement ; Null/non utilisé pour les navigateurs de bureau.
-
Exigences
Windows 10, version 1709 ou ultérieure
examineProcessList
Obtient la liste de tous les processus en cours d’exécution sur l’ordinateur client appartenant à l’utilisateur. L’application de test appelle cette option pour examiner la liste et la comparer à une liste de processus considérés comme non répertoriés pendant le cycle de test. Cet appel doit être appelé à la fois au début d’une évaluation et régulièrement pendant que l’étudiant prend l’évaluation. Si un processus listé par refus est détecté, l’évaluation doit être arrêtée pour préserver l’intégrité des tests.
Syntaxe
void SecureBrowser.security.examineProcessList(String[] denylistedProcessList, Function callback);
Paramètres
-
denylistedProcessList- Liste des processus que l’application de test a refusé.
callback- Fonction à appeler une fois que les processus actifs ont été trouvés. Il doit être au format :Function(String foundDenylistedProcesses)oùfoundDenylistedProcessesse trouve sous la forme :"['process1.exe','process2.exe','processEtc.exe']". Il sera vide si aucun processus figurant sur la liste de refus n’a été trouvé. S’il s’agit de null, cela indique qu’une erreur s’est produite dans l’appel de fonction d’origine.
Remarques La liste n’inclut pas les processus système.
Exigences
Windows 10, version 1709 ou ultérieure
close
Ferme le navigateur et déverrouille l’appareil. L’application de test doit appeler ceci lorsque l’utilisateur choisit de quitter le navigateur.
Syntaxe
void SecureBrowser.security.close(restart);
Paramètres
-
restart- Ce paramètre est ignoré, mais doit être fourni.
Remarques Dans Windows 10, version 1607, l’appareil doit être verrouillé initialement. Dans les versions ultérieures, cette méthode ferme le navigateur, que l’appareil soit verrouillé ou non.
Exigences
Windows 10, version 1709 ou ultérieure
getPermissiveMode
L’application web de test doit l’appeler pour déterminer si le mode permissif est activé ou désactivé. En mode permissif, un navigateur est censé assouplir certains de ses mécanismes de sécurité stricts pour permettre à la technologie d'assistance de fonctionner avec le navigateur sécurisé. Par exemple, les navigateurs qui empêchent agressivement d’autres interfaces utilisateur d’application de se présenter au-dessus d’eux peuvent vouloir se détendre quand ils sont en mode permissif.
Syntaxe
void SecureBrowser.security.getPermissiveMode(Function callback)
Paramètres
-
callback- Fonction à appeler une fois cet appel terminé. Il doit être au format :Function(Boolean permissiveMode)oùpermissiveModeindique si le navigateur est actuellement en mode permissif. S’il n’est pas défini ou null, une erreur s’est produite dans l’opération d’obtention.
Exigences
Windows 10, version 1709 ou ultérieure
setPermissiveMode
L’application web de test doit appeler ceci pour activer ou désactiver le mode permissif. En mode permissif, un navigateur est censé assouplir certains de ses mécanismes de sécurité stricts pour permettre à la technologie d’assistance de fonctionner avec le navigateur sécurisé. Par exemple, les navigateurs qui empêchent agressivement d’autres interfaces utilisateur d’application de se présenter au-dessus d’eux peuvent vouloir se détendre quand ils sont en mode permissif.
Syntaxe
void SecureBrowser.security.setPermissiveMode(Boolean enable, Function callback)
Paramètres
-
enable- Valeur booléenne indiquant l’état du mode permissif prévu. -
callback- Fonction à appeler une fois cet appel terminé. Il doit être au format :Function(Boolean permissiveMode)oùpermissiveModeindique si le navigateur est actuellement en mode permissif. S’il n’est pas défini ou null, une erreur s’est produite dans l’opération de définition.
Exigences
Windows 10, version 1709 ou ultérieure
emptyClipBoard
Efface le presse-papiers système. L’application de test devrait l’appeler pour effacer les données qui peuvent être stockées dans le Presse-papiers système. La fonction lockDown effectue également cette opération.
Syntaxe
void SecureBrowser.security.emptyClipBoard();
Exigences
Windows 10, version 1709 ou ultérieure
getMACAddress
Obtient la liste des adresses MAC pour l’appareil. L’application de test doit appeler ceci pour faciliter les diagnostics.
Syntaxe
void SecureBrowser.security.getMACAddress(Function callback);
Paramètres
-
callback- Fonction à appeler une fois cet appel terminé. Il doit être au format :Function(String addressArray)oùaddressArrayse trouve sous la forme :"['00:11:22:33:44:55','etc']".
Remarques
Il est difficile de s’appuyer sur des adresses IP sources pour faire la distinction entre les ordinateurs des utilisateurs finaux au sein des serveurs de test, car les pare-feu/nats/proxys sont couramment utilisés dans les écoles. Les adresses MAC permettent à l’application de distinguer les ordinateurs clients finaux derrière un pare-feu commun à des fins de diagnostic.
Exigences
Windows 10, version 1709 ou ultérieure
obtenirHeureDeDébut
Obtient l’heure à laquelle l’application de test a été démarrée.
Syntaxe
DateTime SecureBrowser.security.getStartTime();
Rendre
Objet DateTime indiquant l’heure de démarrage de l’application de test.
Exigences
Windows 10, version 1709 ou ultérieure
getCapability
Interroge si une fonctionnalité est activée ou désactivée.
Syntaxe
Object SecureBrowser.security.getCapability(String feature)
Paramètres
feature - Chaîne permettant de déterminer la fonctionnalité à interroger. Les chaînes de capacité valides sont « screenMonitoring », « printing » et « textSuggestions » (sans égard à la casse).
Valeur de retour
Cette fonction retourne soit un objet JavaScript, soit un littéral sous la forme : {<feature>:true|false}.
true si la fonctionnalité interrogée est activée, false si la fonctionnalité n’est pas activée ou si la chaîne de capacité n’est pas valide.
Exigences Windows 10, version 1703 ou ultérieure
setCapability
Active ou désactive une fonctionnalité spécifique sur le navigateur.
Syntaxe
void SecureBrowser.security.setCapability(String feature, String value, Function onSuccess, Function onError)
Paramètres
-
feature- Chaîne permettant de déterminer la fonctionnalité à définir. Les chaînes de capacité valides sont"screenMonitoring","printing"et"textSuggestions"(sans distinction de casse). -
value- Paramètre prévu pour la fonctionnalité. Il doit être"true"ou"false". -
onSuccess- [facultatif] Fonction à appeler une fois l’opération définie terminée. Il doit s’agir du formulaireFunction(String jsonValue)où jsonValue se trouve sous la forme :{<feature>:true|false|undefined}. -
onError- [facultatif] Fonction à appeler si l’opération de définition a échoué. Il doit s’agir du formulaireFunction(String jsonValue)où jsonValue se trouve sous la forme :{<feature>:true|false|undefined}.
Remarques
Si la fonctionnalité ciblée est inconnue du navigateur, cette fonction passe une valeur de undefined à la fonction de rappel.
Exigences Windows 10, version 1703 ou ultérieure
isRemoteSession
Vérifie si la session actuelle est connectée à distance.
Syntaxe
Boolean SecureBrowser.security.isRemoteSession();
Valeur renvoyée
true si la session active est distante, sinon false.
Exigences
Windows 10, version 1709 ou ultérieure
isVMSession
Vérifie si la session active s’exécute dans une machine virtuelle.
Syntaxe
Boolean SecureBrowser.security.isVMSession();
Valeur renvoyée
true si la session active est en cours d’exécution dans une machine virtuelle, sinon false.
Remarques
Cette vérification de l’API ne peut détecter que les sessions de machine virtuelle en cours d’exécution dans certains hyperviseurs qui implémentent les API appropriées
Exigences
Windows 10, version 1709 ou ultérieure