CentralCSP
FeaturesBuildersConnection-Allowlist

Review destinations

On the Review destinations step, decide which origins go into your Connection-Allowlist. Redirects, sections, site patterns, filters, and the details panel.

Last update:

The Review destinations step of the Connection-Allowlist builder lists every destination your pages tried to reach. Each row carries a decision, Add or Reject. The list on the deploy step contains only the added rows, and any script on your pages can send data to them, so allow only what you recognize.

The Review destinations step with the Redirects setting above the table, a WebRTC row, and a site section where one wildcard pattern covers three dimmed subdomains

Redirects

The Redirects card above the table decides whether the browser follows a redirect from a destination your list allows. It offers Allow and Block, and starts on Block.

Blocking redirects means an open redirect on an allowed site cannot carry data to a site you never listed. Select Allow only if your pages rely on a redirect through another site, such as a sign-in or payment step. Allow adds redirects=allow to the list. Block is the browser's default, so it adds nothing.

If you started from a pasted list that holds redirects=allow, the card starts on Allow. Auto leaves this setting as it is.

Sections

The table groups its rows into sections, in this order:

SectionWhat it holds
Your starting listThe entries of the policy you started from, such as response-origin
WebRTCOne WebRTC connections row, when browsers reported WebRTC connections
A site, such as https://example.comThe subdomains of a site with three or more reported subdomains, led by a pattern row
WebSocketsws:// and wss:// destinations that are not part of a site section
Other destinationsEvery other reported destination

After Your starting list and WebRTC, the site, WebSockets, and Other destinations sections follow their report count, the busiest first. Inside a site section, the pattern row comes first, then the subdomains by report count.

Site pattern rows

A site gets its own section once browsers reported three or more of its subdomains on the default port. The section opens with a pattern row, such as https://*.example.com, flagged Recommended. One pattern replaces an entry for each subdomain, and it also allows any other subdomain of the site.

The pattern row starts added when three or more of those subdomains are allowed. While it is added, the subdomains it covers are locked. They show Allowed by the site pattern, stay dimmed, and their own decision cannot change. To decide on each subdomain alone, reject the pattern row.

A pattern never covers the site itself or a subdomain on another port. https://example.com and https://api.example.com:8443 keep their own rows and their own decisions, even inside the site section.

Columns

The table has one row per entry or destination, with these columns:

ColumnMeaning
SiteThe section the row belongs to
DestinationThe entry or the origin, such as https://api.example.com, or WebRTC connections
SourceWhere the row comes from, as listed in Row sources
FlagsWhat the row needs you to know, as listed in Flags
ReportsHow many reports named this destination in the period, empty for entries of your starting list
DecisionAdd to put the row in the list, or Reject to leave it out

Rejected rows stay in the table, dimmed, so you can add them back. To sort, select the Reports or Decision column header.

Row sources

The Source column shows one of three labels:

LabelMeaning
DefaultThe response-origin entry, when you started from Only your own origin
From your policyAn entry of the list you pasted, kept as it is
From reportsA destination browsers reported in the period, or a site pattern built from them

Flags

The Flags column shows these chips:

FlagMeaning
RecommendedA site pattern row, offered because three or more subdomains of the site were reported
Already allowedYour starting list already allows this destination, so nothing needs adding
Allowed by the site patternThe site pattern, or another entry of the list, allows this destination whatever its own decision
NoiseReported fewer than 10 times in the period

Default decisions

The builder decides every row before you touch it:

  • Entries of the starting list start added.
  • Reported destinations start added, including WebRTC, which then sets webrtc=allow.
  • Destinations flagged as noise start rejected, unless your starting list already allows them.
  • A site pattern starts added when three or more of its subdomains are added.

Your own decisions always win over these defaults. They also survive a change of period on the first step, so you can widen the period without losing your work.

Rejecting a destination that an entry of your starting list names exactly takes that entry out of the list too. Adding the entry back allows the destination again.

Filters

The toolbar narrows the table with a search field and three filters:

  • The search field matches the destination and the section name.
  • All sources shows one row source.
  • All flags shows one flag.
  • Any report count shows destinations with at least, or fewer than, 10, 100, or 1,000 reports, such as Only 10+ reports. Entries of your starting list have no report count, so this filter hides them.

The source and flag filters offer only the options the table holds.

Auto

The Auto button puts every row back to its default decision. The builder allows every destination that is not noise, rejects noise, restores every entry of the starting list, and turns each site pattern back to its default. A notification says how many destinations were allowed and rejected. The Redirects setting does not change.

Export

The Export button downloads the rows the filters keep as a CSV file, in table order. The file has the Site, Destination, Source, Flags, Reports, and Decision columns, with Added or Rejected as the decision. Each export is recorded in the audit log, with the row count and the active filters.

Details panel

Selecting a row opens its details panel. The panel gathers the evidence behind the row, so you can decide whether your pages really need it. For a reported destination, it holds these sections:

SectionWhat it showsWhat it tells you
Why it looks like noiseWhy the destination was flagged as noise, such as its low report countWhether the evidence is too thin to trust
Why it was suggestedHow many connections browsers blocked or reported, and what adding the row writesWhether the destination is new, already allowed, or covered by a site pattern
Your answerA yes or no question, such as whether your pages connect to that destinationYes adds the row and No rejects it, the same as the Decision column
In numbersThe report count, the share of all blocked connections, the connection types, the browsers, the mode, and the last time it was reportedWhether the destination is steady traffic or a one-off
Top 10 pages where it happenedThe ten pages that triggered the most reportsWhether the connection starts from pages you know, such as your checkout
Blocked URLsThe full URLs browsers reported for this originWhich endpoint on the destination your pages call

Your answer is absent on a row your starting list already allows, and on a subdomain a site pattern covers. On a very busy period, the page list can be replaced by This period holds too many reports to rank its pages. Pick a shorter period to see them.

A pattern row shows What this entry allows, Why it was suggested, Your answer, and Subdomains it covers, the reported subdomains with their report counts. An entry of your starting list shows What this entry allows and Why it is here.

The details drawer for the https://*.website.com pattern, explaining what it allows, why it was recommended and the three subdomains it covers

Decide whether to allow a destination

Allow a destination when your pages need it. Reject it when your pages do not need it, or when you do not know where it comes from. A rejected destination is blocked once you enforce the list, so rejecting one your pages need breaks them. Rejecting an unknown destination is how the list protects you: a skimmer on your page has nowhere to send what it collects.

Allow the destination in cases like these:

DestinationEvidence in the details panelDecision
https://api.example.comThousands of reports, from the pages that call your API, last seen todayAdd, it is your own backend on another subdomain
https://*.example.com patternSubdomains it covers lists api, assets, and cdn, which you run yourselfAdd, one pattern for your own subdomains
https://www.google-analytics.comReported across your top pages, with blocked URLs on the analytics collection pathAdd, if your team runs that analytics tag
wss://chat.example.netReported on your support pages, where a chat widget loadsAdd, it is your chat vendor
WebRTC connectionsReported on the pages of your video consultation featureAdd, your pages make calls

Reject the destination in cases like these:

DestinationEvidence in the details panelDecision
An origin reported 3 timesFlagged as noise, from a single pageReject, the evidence is too thin
An origin you do not recognizeReported only on your checkout, with a blocked URL path you cannot explainReject, then investigate it as a possible skimmer
WebRTC connections on a site with no callsReported on pages that have no video or voice featureReject, WebRTC is a channel data can leave through
A https://*. pattern on a shared hosting domainOther customers can create subdomains under that siteReject the pattern, then add only the subdomains you use
A vendor your team removed last monthReported only in the first days of the periodReject, or pick a period that starts after the change

Do not allow a destination only to silence a report. The report may be the only sign that a script sends data there. To tell a vendor change from an injection, refer to Vendor update or injection.

Notes

Destinations that belong to a browser extension are set aside, and a note under the table gives their count. An extension runs on the visitor's machine, so it is not your site's traffic.

Next steps

On this page