Security & Sharing

Salesforce Platform Security Requirement Update (October 2026): 5 Changes, Dates and What to Do

By Rishabh Panwar · Published 14 October 2026 · 8 min read · Intermediate

From 16 October 2026, Salesforce can freeze an integration user in production in the middle of a sync, without anyone in your team changing a setting. That’s the first of five changes in the October 2026 Salesforce Platform Security Requirement Update, the email Salesforce sent on 14 October to everyone listed as an admin or security contact for an org.

The five changes have very different weight. Two need no work from most teams. One, the new rules for the SOAP API login() call, can quietly break a job that only runs a few times a year. Here’s each one in deadline order, what it means in practice and what I’d check.

If you look after integrations, also read our summary of the Salesforce OAuth security changes for 2026–2027. Salesforce sent those as a separate email, and they cover different login methods.

The five changes at a glance

ChangeAreaKey datesWhat you need to do
Suspicious API data access can end sessions and freeze usersThreat DetectionSandbox 9 Oct 2026; production 16 Oct 2026Know how to unfreeze a user; make integrations log in again cleanly
Single Sign-On Required permission replaces the legacy SSO setupIdentityAvailable 23 Oct 2026 (sandbox), 6 Nov 2026 (production); auto-migration 1–9 Dec 2026 (sandbox), 4–22 Jan 2027 (production)Usually nothing; review provisioning
New SOAP API login() requirements, then retirementIdentity1 Dec 2026; 15 Dec 2026 (sandbox) and 31 Jan 2027 (production); Summer ‘27Find every caller and move it to OAuth
Guest users can no longer see most User fieldsExperience CloudAvailable Winter ‘27; enforced Spring ‘27Test public pages that show user details
Guest user access to the GraphQL APIExperience CloudWinter ‘27Check the default suits your site

1. Salesforce can freeze users over suspicious API activity

Salesforce now watches how data is read through its APIs. If something looks suspicious, it can end the session, freeze the user and email the org’s admins. After a session ends, the user just logs in again. A frozen user stays locked out until an admin unfreezes them.

This applies to every org except Government Cloud Plus and Government Cloud Plus Defense. It reached sandboxes on 9 October 2026, before the email went out, and production on 16 October 2026. If an integration user was frozen on or after those dates and nobody can explain why, this is a likely cause.

The email doesn’t explain what Salesforce treats as suspicious. My guess is that integration users reading large volumes of data are the most likely to trip it, but that’s a guess, and Salesforce hasn’t said so.

What I’d do:

  • Check that the org’s admin email address goes to an inbox someone reads. A freeze notice sitting in a former colleague’s mailbox is how an overnight sync stays broken until Monday.
  • Write down the unfreeze steps for whoever supports your integrations: Setup → Users → open the user → Unfreeze.
  • Look at how each integration reacts when its session ends. A REST call on a dead session returns INVALID_SESSION_ID with the message “Session expired or invalid”. A good client logs in again and retries once. If the user is frozen, that login fails too, so the client should stop and alert someone instead of retrying in a loop.

2. A new Single Sign-On Required permission

Before this change, forcing a user to log in only through SSO took a mix of org-wide settings plus the Is Single Sign-On Enabled permission. Salesforce is replacing that mix with one user permission, Single Sign-On Required, and will move eligible orgs over automatically. Salesforce says no action is needed and it expects no disruption.

Your org is in scope only if it has this exact setup:

  • Disable login with Salesforce credentials is turned on
  • Delegated Gateway URL is empty
  • At least one user has Is Single Sign-On Enabled

If that’s you, those users get the new permission during the migration window: 1–9 December 2026 in sandboxes and 4–22 January 2027 in production. Orgs that use delegated authentication, where a Delegated Gateway URL is set, aren’t part of it.

One thing worth a look afterwards: any provisioning script, permission set group or onboarding Flow that gives Is Single Sign-On Enabled to new starters. The email doesn’t say whether the migration updates that kind of automation, so check it yourself. The knowledge article linked from the email explains what changes after migration.

3. SOAP API login(): new rules before it’s retired

This is the change most likely to cause an outage. The SOAP login() call (API versions 31.0 to 64.0) is retired in Summer ‘27, and three new rules arrive before that.

DateRule
1 Dec 2026The user calling login() needs the Use Any API Auth permission
15 Dec 2026 (sandbox), 31 Jan 2027 (production)login() from a very broad IP range (larger than /8 for IPv4, or /29 for IPv6) needs a security token
15 Dec 2026 (sandbox), 31 Jan 2027 (production)login() is turned off in orgs with no SOAP login() activity in the last 6 months
Summer ‘27SOAP login() retired

You can test the permission rule now through its Release Update in Setup.

The 6-month rule is the one that catches people out. Think of a year-end reconciliation or an annual data export. If nothing in the org has called login() for six months before the cut-off, Salesforce turns the call off, and that job fails the next time it runs. Often nobody notices until the person who needed the output asks where it is.

The IP range rule is less clear. The email doesn’t say which setting it checks. My reading is that it targets trusted IP ranges so wide that the security token stops meaning anything, because a trusted range is what normally lets a login skip the token. Check the knowledge article before you change Network Access or the login IP ranges on profiles.

Salesforce lists third-party and ISV apps, middleware, the Salesforce Connect Cross-Org Adapter and rarely run jobs as the usual callers. To find yours, check two places:

  • Login History (Setup → Login History). Look for Login Subtype SOAP API. The Application column usually shows N/A for these.
  • The API Total Usage event log. Look for rows with API_FAMILY = SOAP, API_RESOURCE = login and an empty CONNECTED_APP_ID.

To list the event log files through the API:

SELECT Id, LogDate, LogFileLength
FROM EventLogFile
WHERE EventType = 'ApiTotalUsage'
ORDER BY LogDate DESC

Download each file’s LogFile content as a CSV and filter on those three columns. Event log files are only kept for a short time, so use Login History to look back over the full six months.

Giving users Use Any API Auth gets you past 1 December 2026, and that’s all it does. Salesforce’s advice is to move to External Client Apps with OAuth 2.0 now, so you do the work once instead of twice. We covered how to migrate, and which OAuth flow suits which kind of integration, in integration logins failing after the SOAP login() retirement. For packaged apps and middleware, ask the vendor which version stops using SOAP login() and when it’s available.

4. Guest users lose access to most User fields

In Winter ‘27, admins get a separate control for which User fields unauthenticated guests can see. It doesn’t change what logged-in portal users see. In Spring ‘27, Guest User External and Personal Information Management becomes mandatory, and nearly every User field is hidden from guests by default. You then unmask the fields you actually need.

There are two items to find in Setup → Release Updates:

  • Independent Guest Field Masking switches on the separate guest control.
  • Conceal Personal Information Fields from Guest Users has its own testing and activation steps.

This affects LWR, Aura and Visualforce sites that have the Guest User Profile enabled.

Before Spring ‘27, find the public pages that show anything from a User record. Common examples are a knowledge article’s author, a case owner’s name, or a “posted by” label. Once the change is enforced, those values come back hidden unless you unmask them. Turn on the release updates in a sandbox, browse the site as a guest and see what disappears. Then unmask only what each page needs. For a wider review of guest access, our Experience Cloud guest user hardening checklist walks through the rest of the guest profile.

5. Guest user access to GraphQL becomes a setting

From Winter ‘27, admins can decide in Setup whether unauthenticated guests can use the GraphQL API. The starting value depends on your org’s history:

  • New orgs, and orgs where guests haven’t used GraphQL since March 2026: off.
  • Orgs where guests have used GraphQL since March 2026: on, so nothing changes for them.

Like the field masking change, this affects LWR, Aura and Visualforce sites with the Guest User Profile enabled.

If your org starts with guest access turned on, find out why. A public LWC that uses the GraphQL wire adapter is a fair reason. A guest profile with API Enabled that nobody meant to leave on is a problem. GraphQL was one of the routes used to pull data out of badly configured guest profiles during the 2026 scanning campaign. If no public component needs it, turn it off.

A short checklist

  1. Make sure the org’s admin email goes to an inbox someone reads, and share the unfreeze steps with whoever supports integrations.
  2. Pull six months of Login History and list every SOAP login() caller, including jobs that only run once a year.
  3. Turn on the Use Any API Auth release update in a sandbox before 1 December 2026 and run each caller against it.
  4. Plan the move to OAuth for every caller before 31 January 2027.
  5. Add the two guest user release updates to your Winter ‘27 sandbox testing, and decide whether guests need GraphQL.

Salesforce keeps the full list on its Salesforce Platform Security Requirement Updates page, linked from the email, with a release note or knowledge article for each change. If anything here differs from those pages, go with Salesforce.

Frequently asked questions

What is the Salesforce Platform Security Requirement Update?

It's an email Salesforce sends to the admin and security contacts of each org, listing upcoming security changes in one place. The October 2026 edition covers API threat detection, a new SSO permission, SOAP login() restrictions and two Experience Cloud guest user changes.

Why was my Salesforce integration user frozen?

Since 9 October 2026 in sandboxes and 16 October 2026 in production, Salesforce can end sessions and freeze users when it spots suspicious API data access, and it emails the org's admins. An admin unfreezes the user from the user record in Setup, and the integration then has to log in again.

What is the Use Any API Auth permission?

From 1 December 2026, a user needs the Use Any API Auth permission to log in with the SOAP API login() call. Granting it only buys time, because SOAP login() is retired in Summer '27; integrations should move to OAuth 2.0 through an External Client App.

Will Salesforce disable SOAP login() if my org doesn't use it?

Yes. From 15 December 2026 in sandboxes and 31 January 2027 in production, SOAP login() is turned off in orgs with no SOAP login() activity in the last 6 months. Jobs that run once or twice a year are the usual casualty.

Do I need to do anything for the Single Sign-On Required permission?

Usually not. Salesforce auto-migrates orgs that have Disable login with Salesforce credentials turned on, an empty Delegated Gateway URL and at least one user with Is Single Sign-On Enabled, between December 2026 and January 2027.

What changes for Experience Cloud guest users in Spring '27?

Guest User External and Personal Information Management becomes mandatory, and nearly all User fields are hidden from unauthenticated guests by default. Admins have to unmask the specific fields their public pages need.