Privacy policy · Browser extension
Sorvek extension · Data and privacy
Last updated: October 11, 2026 · Written with regard to Quebec's Law 25 and Canada's PIPEDA
This policy supplements Sorvek’s main privacy policy and describes the processing specific to the Sorvek Discovery browser extension.
Table of contents
1. Scope and roles
The Sorvek Discovery browser extension is a security tool reserved for organizations that are Sorvek customers. Your employer or organization (the "organization") decides to deploy it and chooses, feature by feature, what it collects.
Your organization is responsible for the personal information processed by the extension. Sorvek processes it on the organization's behalf, under the contract between them. For any question about how your organization uses this data, contact its IT team first.
This policy applies to the extension on Chrome, Edge, Firefox and other Chromium-based browsers, whether it is installed through a device management policy (Intune, GPO, Jamf) or manually.
2. Data sent to Sorvek
Each feature depends on your organization's policy (section 6). The table describes what is sent to Sorvek when a feature is active, and what stays on your device.
| Function | Data sent to Sorvek | What stays on your device |
|---|---|---|
| Enrollment | At enrollment: your work email address, a random device identifier, the browser type and the extension version. With Microsoft sign-in: a sign-in code that Sorvek exchanges with Microsoft to confirm your address. In managed deployment: your organization's deployment key. | No Microsoft token is kept. |
| Browsing (SaaS visibility feature) | For each page opened, on all sites: the domain name, the navigation type and the time. On a few AI agent platforms (for example chatgpt.com), the page path. The host names of the services contacted by the pages, with the page's domain, grouped every 5 minutes. | The rest of the page address (path, parameters, fragment). |
| Sign-in detection (SaaS visibility feature) | When you sign in to an application: the site, the sign-in methods offered and the one used (password, SSO, social account), the context (sign-in, sign-up, invitation) and the time. The address used is sent only if it has the same domain as your registered work address; otherwise, only the "personal" or "external" label is. | For sign-in detection, the password field is read only to know whether it is empty; only this yes-or-no answer is used. Password checks, described in the next row, depend on a separate setting chosen by your organization. Addresses from a domain other than yours are not sent by sign-in detection. |
| OAuth sign-ins (SaaS Visibility component, Discovery 0.38.0 or later, if your organization enables it) | When you open the “Sign in with Google” or “Sign in with Microsoft” screen of an application: that application's identifier at Google or Microsoft, the originating site and the return site (domain name only), the permissions requested and whether your organization's rule blocked or allowed the sign-in. | The email address you type or that is suggested, the request's tokens, codes and security parameters, and the rest of the page address. |
| Passkey at sign-in (SaaS Visibility component, Discovery 0.38.0 or later, if your organization enables it) | When you sign in to an application with a passkey: the fact that a passkey was used for the sign-in, and whether this was seen on the page or in the browser's sign-in call. | The security challenge, the key identifier, the authenticator model and any other passkey data. |
| Second factor at sign-in (SaaS Visibility component, Discovery 0.40.0 or later, if your organization enables it) | When you sign in to an application: the fact that the application asked you for a second factor (code, text message, email or confirmation on a device) and its type. To know this, the extension looks for code fields and page headings, and notices that you type in the password field, without ever reading what you type. | The code entered, the content of fields and the page text. |
| Mailbox address (SaaS Visibility component, Discovery 0.38.0 or later on Chromium, if your organization enables it) | On Gmail and Outlook on the web: the result of comparing the address of the open account with your registered address (same person, another person in the organization, shared mailbox, personal or external mailbox). The address read is sent only if it belongs to one of your organization's domains, to be compared with the directory; Sorvek does not keep it. | The content, subject and recipients of messages, the page title, and any address from a domain other than your organization's. |
| Password checks (Discovery 0.33.0 or later on Chromium, if your organization enables it) | For work accounts and applications authorized by your organization: the applications involved, the dates, findings of weak or reused passwords and, if enabled, passwords found in a known breach. Depending on the setting, an entry on your organization's Microsoft or Google account can serve as a reference to identify the same password in those applications. Sorvek then receives the reference name and the finding, with a random group identifier. An SSO sign-in alone cannot establish this comparison. An administrator can prepare and confirm a Pulse request to ask for the affected passwords to be changed. | Passwords are compared in memory, never recorded or sent. A key specific to the profile and comparison fingerprints remain in extension storage that web pages and content scripts cannot access. Profiles and devices are not compared with one another. The optional known-breach lookup sends only a five-character prefix to Pwned Passwords; the full comparison stays local (section 8). |
| AI tools (AI analysis feature) | For each message sent to one of the AI tools covered (about fifty dedicated tools, including ChatGPT, Copilot, Gemini, Claude and Mistral, and, unless your organization excludes them, the AI assistants built into Gmail, Outlook, Google Docs, Microsoft 365, Notion, HubSpot and Zoom): the tool, the conversation identifier when the tool shows it in its address, a SHA-256 fingerprint, the length, a preview of the first 200 characters (section 3), the types of sensitive data detected, the outcome (sent, warned, cancelled, masked, blocked) and the justification you type, if any. The first 4,096 characters of the message are also sent for a second analysis, then deleted without being stored. For a cancelled or blocked message, no text is kept. | Text beyond 4,096 characters. However, when masked data (for example a long private key) takes up the start of the message, the 200-character preview may contain text located further on. Responses from AI tools are not collected. |
| Full text of flagged messages (AI Analysis component, Discovery 0.39.0 or later, if your organization enables it) | For a message sent to an AI tool that contains detected sensitive data, or that was sent after a warning or with masking: its first 4,096 characters, with secrets, email addresses and phone numbers masked on your device before sending. The text is encrypted. In the console, only an administrator of your organization who is allowed to view employee data can display it, by giving a reason, and each read is logged. | Messages that are not flagged, attachments and text beyond 4,096 characters. |
| Account type on AI tools (AI Analysis component, Discovery 0.38.0 or later, if your organization enables it) | On ChatGPT, Claude, Gemini and Copilot: the tool, the type of account used (personal, your organization's, another organization's or no account) and the cue that establishes it. The comparison is done in your browser. | The address and identifier of the account, workspace or tenant, and the site's cookies. |
| Files, images and pastes (AI analysis feature) | For a file or image added to an AI tool (by drag and drop, with the file upload button or, for an image, by pasting), when the analysis finds something or a rule of your organization applies: the file name, its type, the result and coverage of the analysis, the types of sensitive data detected, the outcome and, if any, your justification. For pasted text: an event only if the analysis detects high-risk data (for example a key, token, password, credit card number or SIN) or a pattern specific to your organization, with the types detected and the length. | The content of files, images and the text read in images: the analysis, including text recognition, runs on your device. Pasted text is not sent when you paste it; once you send it, it is part of the message ("AI tools" row). |
| Developer consoles (SaaS visibility feature, if your organization keeps API key discovery on, which is the default) | On GitHub, Vercel, AWS, Google Cloud and Cloudflare, when a key or secret is in the page, including in a masked field on a settings page: the secret type, the count, the page address (Sorvek removes its parameters before storing it on its servers) and an excerpt of up to 100 characters, in which the detected secret is reduced to its first 4 and last 4 characters (for a private key, its header is what is reduced). | The full value of the reported secret, unless it appears in the page address. The content of masked fields, read on your device to look for keys, except what goes into the excerpt. The text around the secret in the excerpt (up to 15 characters on each side) is not masked and may contain other information, such as a short password. |
| Extension inventory (SaaS visibility feature) | For each extension installed in the browser: identifier, name, version, description, state, installation type, permissions, permitted sites and home page. | The content and data of other extensions. |
| Organization policy | Your acceptance of your organization's AI acceptable use policy, your requests for access to a tool or site (with your justification), the blocked sites you tried to open and the approved tool you choose among those suggested on the block page. | Nothing else. |
| Technical data | The date of last activity, the extension version and the browser name and version (for example Chrome 141 or a browser with built-in AI), updated at each exchange, send-queue counters and capture health signals (the AI tool visited, its host name and the time, even if no message is sent), without message content. | Nothing else. |
Like any web service, Sorvek's servers see your device's IP address on each exchange, including to rate-limit requests. It is not stored with the extension data. The web server's technical logs may contain the IP address and request addresses.
3. Messages sent to AI tools
The preview kept is the first 200 characters of the message, after masking on your device. A message of 200 characters or less is therefore kept in full, with only the masked items replaced by a marker.
Masked in the preview: common API keys and tokens recognizable by their format (OpenAI, Anthropic, GitHub, Google Cloud, Stripe, Slack, GitLab, Twilio identifiers, the AWS access key ID "AKIA…" and others; the matching AWS secret access key is not recognized in its usual form and may remain readable), private keys, the value of a secret preceded by a keyword such as "password=", valid credit card, SIN, US social security, Canadian bank account and IBAN numbers when written in a recognized format (for example, a SIN written as nine consecutive digits or an IBAN written in groups of four is neither detected nor masked), the Quebec health insurance number together with its context, and high-severity patterns specific to your organization.
Detected but not masked: email addresses, phone numbers, some identification numbers (including the NEQ, the Quebec driver's licence and US identifiers), numbers shaped like a SIN without being one, code excerpts, names of employees of your organization and medium- or low-severity patterns specific to your organization. These items remain readable in the preview.
If the server detects a secret that escaped masking, it replaces the whole preview with a generic notice. The justification you type (up to 2,000 characters) is kept as is, without masking.
No detector targets health information or other sensitive categories in free text. If you write such information in a message, a justification or a file name, it may be kept. Avoid entering it in AI tools.
4. What the extension does not send
- Your sign-in passwords never leave your browser and are never stored. Sign-in detection reads the field only to know whether it is empty. If your organization enables password checks, the extension also compares entries locally, within the authorized scope (section 2). It sends findings, never passwords, the key or the comparison fingerprints.
- Masked fields in developer consoles: on GitHub, Vercel, AWS, Google Cloud and Cloudflare, if your organization keeps API key discovery on (the default setting), the extension also reads, on your device, the masked fields of settings pages, where these consoles show keys and secrets. If a value looks like a key or token, a short, partly masked excerpt may be sent (section 2). Since version 0.31.1, API key discovery reads nothing without the SaaS visibility feature and, before reading anything, skips the fields it recognizes as part of a sign-in, sign-up or password change form, including a password shown with the "show" button. Earlier versions could read on your device the password typed in these forms, for example on the GitHub and Cloudflare sign-in pages; all or part of it could be sent only if it looked like a key or was within 15 characters of a detected key. This exclusion applies to API key discovery; password checks in Discovery 0.33.0 use the separate setting described in section 2.
- Responses from AI tools.
- The content of the files and images you add: it is analyzed on your device. Text you paste is also analyzed on your device, but if it is part of a message sent to an AI tool, it follows the same rules as that message (section 2).
- The content of the pages you visit, except what section 2 describes: the text you send to AI tools, the excerpts around secrets in developer consoles, file names and the address used at sign-in.
- If enrollment fails (network or server unavailable) while AI analysis is checked, a message you then send to an AI assistant built into an application (Gmail, Outlook, Google Docs, Microsoft 365, etc.) may be sent to Sorvek, which rejects it without storing it.
5. Purposes
| Purpose | Data involved |
|---|---|
| Identify the SaaS applications and AI tools used in the organization, and the accounts opened on them | Browsing, services contacted, sign-in detection |
| Prevent data leaks to AI tools and enforce the organization's AI acceptable use policy | Messages, files and pastes in AI tools, acceptances, access requests, blocked sites, approved tools chosen |
| Flag secrets exposed in developer consoles | Secret type, page address, reduced excerpt |
| Identify risky browser extensions | Extension inventory |
| Operate and troubleshoot the extension | Technical data |
6. Choices, consent and managed deployment
Your organization sets each of the two features, SaaS visibility and AI analysis, to one of three values: employee's choice, required or disabled.
Password checks are off by default. Your organization decides whether to enable them and selects the people and applications involved. It must inform its employees of this use. No additional extension, screen or agreement is requested in the extension. Comparison with the Microsoft or Google account is on by default when the feature is enabled; your organization can turn it off. The known-breach lookup is a separate option, off by default. Without an observed password entry, including when using a passkey or an existing SSO session, the account remains unverified. This feature is not supported on Firefox.
On an unmanaged device: the enrollment page shows the features. Optional features are checked by default. Microsoft sign-in confirms your work account; you can then change your choices before confirming their activation. A required feature is normally enabled and you cannot uncheck it; on an unmanaged device, however, "Decline all" still stops SaaS visibility, even when it is required. "Decline all" stops collection for optional features, but not password checks if your organization enables them. If your organization requires AI analysis, what you send to AI tools may still be recorded.
On a device managed by your organization (Intune, GPO or Jamf policy): the extension enrolls itself with the address provided by your organization, both features are enabled according to its policy and you cannot decline them in the extension. A notice describing the collection is shown at enrollment.
Protection rules: once the extension is enrolled, your organization's rules may block a submission that contains sensitive data, warn you or mask that data, even if you have not consented to AI analysis. If that feature is neither enabled by you nor required by your organization, nothing is sent to Sorvek about that submission. Before enrollment, the extension blocks access to dedicated AI tools.
Changing your mind: on an unmanaged device, the extension's "Open settings" button reopens the enrollment page, where you can change your choices or decline everything. Withdrawing consent stops collection for optional features, but not password checks if your organization enables them. If your organization requires AI analysis, what you send to AI tools may still be recorded. As long as the extension remains installed, it also keeps checking your organization's policy, which updates the last activity date and extension version. Uninstalling the extension stops future collection. Neither withdrawing consent nor uninstalling deletes data already sent: see section 11 for that.
7. Data kept on your device
The extension keeps in the browser's local storage, without its own encryption: its installation token, your work email address, your choices, your organization's policy and a queue of events not yet sent.
When sending fails, this queue may contain, for about 7 days, message previews, justifications, file names, the work address used at sign-in and full console addresses with their reduced secret excerpts. The raw copy of the first 4,096 characters, sent for the second analysis, is never put in this queue; of the message text itself, only the 200-character preview can be stored there. The installation token is kept in hashed form on Sorvek's server.
For password checks, the key and comparison fingerprints are kept separately on your device, including across restarts. Web pages and content scripts cannot access them. The affected local data is deleted when this feature is disabled or when the account or authorization changes, once the extension is informed.
If Sorvek is unreachable, the key, fingerprints and reference may remain stored on your device. They are not used while password checks are suspended and remain subject to the retention periods in section 9. After more than 30 days without valid contact with Sorvek, they are deleted at the extension's next check or wake-up, even if the server remains unreachable. If the browser is closed, deletion waits until it resumes. No password value is stored.
8. Hosting and recipients
Extension data is sent over HTTPS to Sorvek's servers, hosted on Amazon Web Services in the Canada region (Montréal, ca-central-1), where it is stored.
The extension communicates with Sorvek's servers and, during Microsoft sign-in, with Microsoft's sign-in service. If your organization enables the known-breach password lookup, it also queries Pwned Passwords at api.pwnedpasswords.com. That service receives the first five hexadecimal characters of the password's SHA-1 hash and your IP address, but no password, email address, cookie or referring page address. The extension requests a response padded with additional values and compares the rest of the fingerprint locally. This lookup is not performed on the Microsoft or Google account password used as a reference. Data held by Sorvek may then be disclosed to the following recipients:
- your organization's Sorvek console users, according to their role (message previews, justifications and access requests are limited to administrators);
- the tools your organization connects itself: its SIEM (without message previews or justification text), its notification channels such as Slack or Teams (an access request is sent there with your address, the target and your justification), and the AI assistants it connects to Sorvek's MCP server, which can read previews and justifications;
- Anthropic, an AI model provider whose servers may be located outside Canada, for some console features: the name and domain of discovered applications, to categorize them; aggregate counters and, if someone with console access asks for them, the profile of named employees with their applications, for the AI assistant; and, if your organization enables it, for the AI audit: the addresses of the employees who sent the most sensitive messages, with their number, plus accounts discovered in applications (address, name, job title, department, last activity), including those detected by the extension at sign-in. Sorvek sends it neither message previews nor justifications.
9. Retention periods
| Data type | Retention period |
|---|---|
| Messages sent to AI tools, files, blocked sites, approved tools chosen and developer console secrets | 90 days by default, adjustable by your organization between 7 and 365 days, then automatic deletion. Some copies last longer: console alerts (your address, the tool and the detected types), which are not deleted automatically, and, if your organization connects a SIEM, its sending queue, for about 30 days. |
| Password observations and Microsoft or Google references | Observations and references are no longer used after 30 days. Sorvek deletes them during its purge runs. On your device, expired items are deleted at the extension's next check or wake-up, even without a valid server response. After more than 30 days without valid contact with Sorvek, the key, fingerprints and remaining references are also deleted at that check or wake-up. If the browser is closed, local deletion waits until it resumes. Disabling the feature or changing authorization prevents the affected findings from being used. Pulse requests and responses keep their own history, without passwords, keys or comparison fingerprints. |
| The first 4,096 characters of a message | Not recorded: deleted after analysis, except for the option described in the next row |
| Full text of flagged messages (if your organization enables it) | Encrypted and kept 14 days by default, adjustable by your organization between 1 and 30 days, then deleted; the rest of the exchange follows the period in the first row. All these texts are deleted as soon as your organization turns the option off. The read log, without the text, is kept 365 days. |
| Browsing, services contacted, detected sign-ins, and the applications and accounts discovered from this data | For the duration of the service. No age-based deletion is scheduled at this time for this data, except for the detailed log of observed sign-ins, which is deleted automatically after 90 days. A discovered application or account may also be removed automatically, for example when it is no longer recognized as a SaaS application. |
| Extension inventory | List of each device's extensions, including those removed since: for the duration of the service, even after the Sorvek extension is uninstalled or the device is revoked. Change log: 180 days. |
| Enrollment, consent choices and their history, AI acceptable use policy acceptances, access requests | For the duration of the service, as an audit trail. No automatic deletion is scheduled. |
| Technical data and monthly compliance reports (statistics and most exposed employees) | For the duration of the service. No automatic deletion is scheduled. |
| Send queue on your device | About 7 days per event, then deleted without being sent. If the browser is closed or the extension is disabled, the deletion happens shortly after they resume. |
At the end of the contract, your organization may request the deletion of all its data. Server backups may contain deleted data for some time. Copies sent to your organization's own tools (SIEM, notification channels) are under its control.
10. Security measures
- Encrypted transmission over HTTPS.
- Masking of secrets and some numbers on your device, before the preview is sent (section 3).
- Second analysis on the server to catch a secret that masking missed.
- Installation token unique to each device, kept hashed on the server and revocable by an administrator.
- Console access depends on role: accounts authorized or invited by your organization, and the Sorvek team for support and operations. By default, a person who signs in with a Microsoft or Google account whose email address belongs to your organization's domain may also automatically get basic access (user role), without an invitation: it includes the application and account inventory and the extension statistics, but not the extension data specific to each employee (their browser inventory, observed sign-in method, sign-in log, alerts naming them), which is limited to administrators.
11. Your rights
Under Quebec's Law 25 and PIPEDA, you can:
- Access: obtain the data about you collected by the extension.
- Correction: have inaccurate data corrected.
- Deletion: request the deletion of your data.
- Portability: receive your data in a structured, commonly used technological format.
- Withdrawal of consent: for optional features, as described in section 6.
Send your request to your organization, which is responsible for this data, or to Sorvek at the address below: we will handle it with your organization and reply within 30 days.
12. Contact us
Organization: Sorvek
Person in charge of the protection of personal information: Florent Vinai
Address: Montreal, Quebec, Canada
Email: contact@sorvek.com
If you believe your rights are not being respected, you may file a complaint with Quebec’s Commission d’accès à l’information (CAI) or the Office of the Privacy Commissioner of Canada (OPC).