pub struct SecurityConfig {
pub csp: Option<Csp>,
pub dev_csp: Option<Csp>,
pub freeze_prototype: bool,
pub dangerous_disable_asset_csp_modification: DisabledCspModificationKind,
pub dangerous_remote_domain_ipc_access: Vec<RemoteDomainAccessScope>,
pub dangerous_use_http_scheme: bool,
}
Expand description
Security configuration.
See more: https://tauri.app/v1/api/config#securityconfig
Fields§
§csp: Option<Csp>
The Content Security Policy that will be injected on all HTML files on the built application.
If dev_csp
is not specified, this value is also injected on dev.
This is a really important part of the configuration since it helps you ensure your WebView is secured. See https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP.
dev_csp: Option<Csp>
The Content Security Policy that will be injected on all HTML files on development.
This is a really important part of the configuration since it helps you ensure your WebView is secured. See https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP.
freeze_prototype: bool
Freeze the Object.prototype
when using the custom protocol.
dangerous_disable_asset_csp_modification: DisabledCspModificationKind
Disables the Tauri-injected CSP sources.
At compile time, Tauri parses all the frontend assets and changes the Content-Security-Policy to only allow loading of your own scripts and styles by injecting nonce and hash sources. This stricts your CSP, which may introduce issues when using along with other flexing sources.
This configuration option allows both a boolean and a list of strings as value. A boolean instructs Tauri to disable the injection for all CSP injections, and a list of strings indicates the CSP directives that Tauri cannot inject.
WARNING: Only disable this if you know what you are doing and have properly configured the CSP. Your application might be vulnerable to XSS attacks without this Tauri protection.
dangerous_remote_domain_ipc_access: Vec<RemoteDomainAccessScope>
Allow external domains to send command to Tauri.
By default, external domains do not have access to window.__TAURI__
, which means they cannot
communicate with the commands defined in Rust. This prevents attacks where an externally
loaded malicious or compromised sites could start executing commands on the user’s device.
This configuration allows a set of external domains to have access to the Tauri commands. When you configure a domain to be allowed to access the IPC, all subpaths are allowed. Subdomains are not allowed.
WARNING: Only use this option if you either have internal checks against malicious external sites or you can trust the allowed external sites. You application might be vulnerable to dangerous Tauri command related attacks otherwise.
dangerous_use_http_scheme: bool
Sets whether the custom protocols should use http://<scheme>.localhost
instead of the default https://<scheme>.localhost
on Windows.
WARNING: Using a http
scheme will allow mixed content when trying to fetch http
endpoints and is therefore less secure but will match the behavior of the <scheme>://localhost
protocols used on macOS and Linux.
Trait Implementations§
Source§impl Clone for SecurityConfig
impl Clone for SecurityConfig
Source§fn clone(&self) -> SecurityConfig
fn clone(&self) -> SecurityConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more