SafeExamBrowser 4+

Secure Web-Based E-Assessment

ETH Zurich

    • 1.3 • 24 Ratings
    • Free



SEB 3.3 improves accessibility and security and allows to export SEB settings as configuration links or QR codes. Optionally: Full SEB Server integration with Moodle.

SafeExamBrowser (SEB) is a secure kiosk web browser environment used to carry out e-assessments that run on exam servers. SEB opens a web browser without an address and search bar, loads a pre-configured webpage and locks an iPad (or iPhone or iPod Touch) into a single app kiosk mode. This mode prevents students from switching to other apps, accessing websites and communicating with other students during an exam. SEB enables secure exams on unmanaged iOS devices like students' own iPads as well as on iOS devices owned and managed by an institution. SEB doesn't use a centralized server or cloud service; it can be configured with an API, configuration files, links and QR codes. It can be used with most web-based quiz and e-assessment systems. For improved security and usability, some exam systems provide additional built-in support for SEB. Currently, SEB integrates especially well with learning management systems (LMS) such as Moodle, ILIAS, OpenOLAT and with several non-commercial and commercial exam systems, such as Inspera Assessment, Dugga, or EvaExam.

SEB uses one of the single app modes provided by iOS. After an exam is submitted, SEB can automatically end the app self-lock kiosk mode (an exam invigilator could also use a quit password to end the SEB exam session and unlock the device if necessary).

SEB features an optional Dock displaying buttons for various commands. Instead or in addition, a left slider menu shows a list of open browser tabs and commands which can be used to (if enabled in settings) quit an exam session, jump back to the start page of an exam, reload a web page, and navigate back/forward in the browsing history.

SEB for iOS uses the same format for encrypted .seb configuration files as the SEB versions for other platforms. Those config files allow to individually configure SEB to display the start page of an exam system or an exam portal page with a list of links to current exams. If SEB for iOS is installed using a mobile device management (MDM) system, its initial configuration can easily be deployed using the "MDM Managed Configuration" feature. You can also directly start an exam with an individual configuration in SEB for iOS using a special config hyperlink. This link can be opened by examinees from Safari, Mail or a messenger app. In addition, you can use QR codes containing SEB links or even full, individual configurations. An exam can directly be started in SEB by using the iOS Camera app or the built-in QR code scanner.

SEB also works together with Apple Classroom, teachers can start individually configured exams on all student devices. See for more information.

SafeExamBrowser for iOS was developed by Daniel R. Schneider, ETH Zurich, Educational Development and Technology (LET), based on the original idea of Safe Exam Browser by Stefan Schneider, University of Giessen
Project concept: Thomas Piendl, Daniel R. Schneider, Damian Büchel, Andreas Hefti, Nadim Ritter, Dirk Bauer, Michael Kern, Kai Reuter, Tobias Halbherr, Karsten Burger, Marco Lehre, Brigitte Schmucki, Oliver Rahs.

Safe Exam Browser is released as freeware. The code is subject to the Mozilla Public License Version 1.1 (the "License"); you may only use these files in compliance with the License. You may obtain a copy of the License at .

Important parts of this project have been carried out as part of the program "AAA/SWITCH – e-Infrastructure for e-Science" led by SWITCH, the Swiss National Research and Education Network and the cooperative project "Learning Infrastructure" (part of the CRUS program "Information scientifique: accès, traitement et sauvegarde") coordinated by SWITCH, and was supported by funds from the ETH Board and the State Secretariat for Education, Research and Innovation (SERI).

What’s New

Version 3.3

• Accessibility improvements: Added dynamic type font scaling to side menu, Initial Configuration Assistant, About SEB and lock screen views.
• Now also supporting Increase Contrast mode and Bold Text in side menu.
• Improved VoiceOver feedback when opening new screens/views.
• Now supporting QR codes containing full, compressed SEB configuration, for internal SEB QR code reader and for QR codes scanned with iOS Camera App. It's no longer necessary to store a config file on a server.
• Now it's possible to generate and share QR codes containing full SEB configurations directly as PNG image files from the in-app settings menu.
• Added support for config links (URLs) containing full SEB configurations (similar to the new QR codes).
• Added option to export SEB settings as an unencrypted plist file for the MDM Managed Configuration feature.
• New setting for removing default key/values from shared (exported) config files, which decreases size significantly (for example removing default prohibited processes). This is by default used for generated QR code and config link configurations and helpful for MDM configuration for example with Jamf.
• Improved comparing settings from MDM server with current settings by also correctly comparing single prohibited processes.
• Now gzip compressing also unencrypted config files. Only MDM config files are saved uncompressed.
• Changed title of Config Files settings page to Configurations and updated terminology.
• Changed default value for SEB Config purpose to Starting an Exam.
• Added separate allow downloads/uploads settings (allowDownloads = default true, allowUploads = default true), using AND with existing, but deprecated setting allowDownUploads.
• Added option to block uploads and file/photo selection dialog for "Choose File" button in modern WebView (iOS).
• Now keeping 20 log files instead of 7 (max. disk space: 20 MB).
• Fixed logging in Swift classes and log level Error not working.
• Now preventing that a web application can close the SEB main browser tab (the one containing the exam page).
• Added missing classic WebView WebUIDelegate webViewClose: method (event handler called when web application attempts to close a WebView).
• Fixed a possible crash in CustomHTTPProtocol (when using classic WebView on iOS).
• Now using ConfigKey to identify stored running exam session for lock screen. This should avoid unnecessary lock screens if a new exam is opened, which is using the same start URL as an older locked exam.

Optional features which need to be individually configured and are disabled by default:

• App Signature Key functionality, which allows automated application integrity checks similar to the manual use of the Browser Exam Key (no copy-paste of hash string necessary).
• New server-driven Browser Exam Key which can be used for improved SEB Server integration with LMS/assessment systems like Moodle.
• Now showing "Disconnecting" window when quitting SEB Server session, for user feedback in case of connection issues.
• Added error message alerts when specific steps of the connection process to a SEB Server exam fail, with more status messages in the SEB Server connection window.
• Improved logging of SEB Server connections and fixed some error messages being too general.
• Fixed a concurrency crash when quitting SEB with still active SEB Server connection when connection token may already have been invalidated.

Ratings and Reviews

1.3 out of 5
24 Ratings

24 Ratings

✋😅🤚 ,

Too complex

If this is for exams or quizzes, THANK YOU SO MUCH that you invent it. The thing is when I click the file, the file didn’t open and it skip to a page with Microsoft apps, it took me more than 5 mins to went back to the quiz because the button were so strange. How much time do students have in one quiz? Rly mad at it.

Paul10J ,

Shot blows

Doesn’t even load the rest of the half of the page so you can’t move on to the examine after trying so hard on learning how to work it. Very user unfriendly.

James u9he ,

Horrible app

Doesnt work garbage ap my teacher force us use i DONt like its a disgrace to the App Store disturbing me in class and bother some annoying mess 🦍

App Privacy

The developer, ETH Zurich, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Not Collected

The developer does not collect any data from this app.

Privacy practices may vary, for example, based on the features you use or your age. Learn More

More By This Developer


You Might Also Like