From 70b787e286c5e60a86820aeb0609fde578d8ed0f Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Wed, 3 Jun 2026 12:08:27 +0300 Subject: [PATCH 1/3] docs(unreal): macOS Shipping network entitlements requirement --- .../sentry-crash-reporter/index.mdx | 19 +++++++++++++++++++ .../configuration/native-backend/index.mdx | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx b/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx index 89b71ccc59b650..5355c0fb194336 100644 --- a/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx +++ b/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx @@ -116,3 +116,22 @@ After replacing binaries, delete your project's `Build` and `Intermediate` direc The `CRASHPAD_ENABLE_STACKTRACE` feature is experimental. On Linux, it requires the `libunwind-ptrace` development package. + +## Enabling Network Access on macOS + + + +Applies only to **packaged macOS builds in the Shipping configuration**. Editor and Development/Test/DebugGame builds already include the required network entitlements. + + + +The Sentry Crash Reporter uploads the crash envelope to Sentry, which requires the `com.apple.security.network.client` entitlement. On macOS the Crash Reporter is launched as a child process of the game and inherits its network permissions at runtime, so the entitlement needs to be set on the **game's** entitlements file rather than on the Crash Reporter bundle itself. Unreal's default Shipping entitlements file (`Engine/Build/Mac/Resources/Sandbox.NoNet.entitlements`) does **not** include it, so submissions fail with a DNS resolution error. + +To fix this, override the Shipping entitlements in your project's `Config/DefaultEngine.ini` with either the engine-provided `Sandbox.Server.entitlements` (which includes `network.client` and `network.server`) or your own custom file: + +```ini +[/Script/MacTargetPlatformSettings.XcodeProjectSettings] +ShippingSpecificMacEntitlements=(FilePath="/Game/Build/Mac/Resources/Sandbox.Server.entitlements") +``` + +The same setting is available in the Editor under **Project Settings → Platforms → Mac → Entitlements → Mac: Entitlements (Shipping config override)**. diff --git a/docs/platforms/unreal/configuration/native-backend/index.mdx b/docs/platforms/unreal/configuration/native-backend/index.mdx index 7460e01ebe29f1..e156df7d91396b 100644 --- a/docs/platforms/unreal/configuration/native-backend/index.mdx +++ b/docs/platforms/unreal/configuration/native-backend/index.mdx @@ -48,3 +48,22 @@ Available modes: - `Minidump` - Write and send a minidump for server-side symbolication. No client-side stack unwinding is performed. - `NativeStackwalking` - Walk the stack client-side in the crash daemon and send a JSON event with stack traces. No minidump is generated, resulting in faster uploads and smaller payloads. - `NativeStackwalkingWithMinidump` (default) - Perform client-side stack unwinding and also attach a minidump for deep debugging when needed. + +### Enabling Network Access on macOS + + + +Applies only to **packaged macOS builds in the Shipping configuration**. Editor and Development/Test/DebugGame builds already include the required network entitlements. + + + +The native backend's out-of-process crash daemon uploads crash envelopes to Sentry from its own process, which requires the `com.apple.security.network.client` entitlement on the packaged macOS game. Unreal's default Shipping entitlements file (`Engine/Build/Mac/Resources/Sandbox.NoNet.entitlements`) does **not** include it, so uploads fail silently with a DNS resolution error. + +To fix this, override the Shipping entitlements in your project's `Config/DefaultEngine.ini` with either the engine-provided `Sandbox.Server.entitlements` (which includes `network.client` and `network.server`) or your own custom file: + +```ini +[/Script/MacTargetPlatformSettings.XcodeProjectSettings] +ShippingSpecificMacEntitlements=(FilePath="/Game/Build/Mac/Resources/Sandbox.Server.entitlements") +``` + +The same setting is available in the Editor under **Project Settings → Platforms → Mac → Entitlements → Mac: Entitlements (Shipping config override)**. From dd4bd9aa5720402e2b9a378d0efbdaddeaf7ec54 Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Wed, 3 Jun 2026 12:24:54 +0300 Subject: [PATCH 2/3] Update index.mdx --- .../crash-reporter/sentry-crash-reporter/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx b/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx index 5355c0fb194336..b03171f1d2195f 100644 --- a/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx +++ b/docs/platforms/unreal/configuration/crash-reporter/sentry-crash-reporter/index.mdx @@ -130,7 +130,7 @@ The Sentry Crash Reporter uploads the crash envelope to Sentry, which requires t To fix this, override the Shipping entitlements in your project's `Config/DefaultEngine.ini` with either the engine-provided `Sandbox.Server.entitlements` (which includes `network.client` and `network.server`) or your own custom file: ```ini -[/Script/MacTargetPlatformSettings.XcodeProjectSettings] +[/Script/MacTargetPlatform.XcodeProjectSettings] ShippingSpecificMacEntitlements=(FilePath="/Game/Build/Mac/Resources/Sandbox.Server.entitlements") ``` From ae400c4714ad820f3519b97520b59acf5a3f1e6d Mon Sep 17 00:00:00 2001 From: Ivan Tustanivskyi Date: Wed, 3 Jun 2026 12:25:22 +0300 Subject: [PATCH 3/3] Correct Shipping entitlements configuration path Updated the configuration path for Shipping entitlements in the Unreal documentation. --- docs/platforms/unreal/configuration/native-backend/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/platforms/unreal/configuration/native-backend/index.mdx b/docs/platforms/unreal/configuration/native-backend/index.mdx index e156df7d91396b..100ab7284d4454 100644 --- a/docs/platforms/unreal/configuration/native-backend/index.mdx +++ b/docs/platforms/unreal/configuration/native-backend/index.mdx @@ -62,7 +62,7 @@ The native backend's out-of-process crash daemon uploads crash envelopes to Sent To fix this, override the Shipping entitlements in your project's `Config/DefaultEngine.ini` with either the engine-provided `Sandbox.Server.entitlements` (which includes `network.client` and `network.server`) or your own custom file: ```ini -[/Script/MacTargetPlatformSettings.XcodeProjectSettings] +[/Script/MacTargetPlatform.XcodeProjectSettings] ShippingSpecificMacEntitlements=(FilePath="/Game/Build/Mac/Resources/Sandbox.Server.entitlements") ```