Skip to content

Javascript API SafeExamBrowser object not being set consistently #1443

@ntbutler-nbcs

Description

@ntbutler-nbcs

Describe the Bug
We've noticed some inconsistent behaviour when trying to do config key verification using the Javascript API. We've just implemented verification via this method instead of the browser headers, and we're deploying a new .seb file to our loan devices.

When launching SafeExamBrowser with the new config, we were inconsistently seeing errors from our system that the configuration key could not be verified. After tweaking things we were able to narrow down the issue to the javascript object "SafeExamBrowser" (and therefore SafeExamBrowser.security) were 'undefined'.

Excerpt from the verification page:

(function () { 
    function verify() {
            document.getElementById('progressInfo').innerHTML += '.'
            if (typeof SafeExamBrowser === 'undefined') {
                redirectToWarning('SEB undefined');
                return;
            }
            if (typeof SafeExamBrowser.security === 'undefined') {
                redirectToWarning('SEB.security undefined');
                return;
            }
           return verifyConfig(SafeExamBrowser.security);
    }
    
    document.addEventListener('DOMContentLoaded', verify);

}());

Error message from our verification page:
Image

After quitting the browser and immediately re-launching, the verification tests pass and we reach the login system of our examination platform. We've seen this behaviour on a number of separate devices - e.g. out of 30 devices (all running Windows 64bit SEB 3.10.1 with the same .seb file), around 8-10 experienced this issue.

Steps to Reproduce
(inconsistent) Steps to reproduce the behavior:

  1. Install seb file to C:\ProgramData\SafeExamBrowser\SebClientSettings.seb
  2. Launch SafeExamBrowser
  3. Launch page tests to see if (typeof SafeExamBrowser === 'undefined')
  4. If true, quit browser and relaunch, and test again which seems to work the second time

Expected Behavior
(typeof SafeExamBrowser === 'undefined') should not return true when the page is loaded inside SafeExamBrowser

Version Information

  • OS: Windows 11 Education 24H2
  • SEB-Version Windows 64bit 3.10.1

Additional Context

Log files from two clients that exhibited this issue
2026-04-17_11h15m35s_Client.zip

2026-04-17_09h48m26s_Client.zip

SEB config file:
SebClientSettings.zip

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions