PM-35191: feat: Add support for FedRAMP applinks (#7137)

This commit is contained in:
David Perez authored and GitHub committed 2026-07-02 18:59:02 +00:00
1 parent 849217c79a
commit 3ece24b0fd
9 files changed
+24 -38

No files matched your search

-21
View File
@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application tools:ignore="MissingApplicationIcon">
<activity
android:name=".MainActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" />
<data android:host="*.bitwarden.pw" />
<data android:pathPattern="/redirect-connector.*" />
</intent-filter>
</activity>
</application>
</manifest>
@@ -29,6 +29,7 @@
<domain includeSubdomains="true">bitwarden.com</domain>
<domain includeSubdomains="true">bitwarden.eu</domain>
<domain includeSubdomains="true">bitwarden.pw</domain>
<domain includeSubdomains="true">bitwarden-gov.com</domain>
<trust-anchors>
<!-- Only trust pre-installed CAs for Bitwarden domains and all subdomains -->
<certificates src="system" />
-14
View File
@@ -7,20 +7,6 @@
<meta-data
android:name="firebase_crashlytics_collection_enabled"
android:value="false" />
<activity
android:name=".MainActivity"
tools:ignore="IntentFilterExportedReceiver">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" />
<data android:host="*.bitwarden.pw" />
<data android:pathPattern="/redirect-connector.*" />
</intent-filter>
</activity>
</application>
</manifest>
@@ -18,6 +18,7 @@
<domain includeSubdomains="true">bitwarden.com</domain>
<domain includeSubdomains="true">bitwarden.eu</domain>
<domain includeSubdomains="true">bitwarden.pw</domain>
<domain includeSubdomains="true">bitwarden-gov.com</domain>
<trust-anchors>
<!-- Trust pre-installed CAs for Bitwarden domains and all subdomains -->
<certificates src="system" />
+3
View File
@@ -83,6 +83,8 @@
<data android:scheme="https" />
<data android:host="*.bitwarden.com" />
<data android:host="*.bitwarden.eu" />
<data android:host="*.bitwarden.pw" />
<data android:host="*.bitwarden-gov.com" />
<data android:pathPattern="/redirect-connector.*" />
</intent-filter>
<intent-filter>
@@ -171,6 +173,7 @@
<data android:host="bitwarden.com" />
<data android:host="bitwarden.eu" />
<data android:host="bitwarden.pw" />
<data android:host="bitwarden-gov.com" />
<data android:pathPattern="/duo-callback" />
<data android:pathPattern="/sso-callback" />
<data android:pathPattern="/webauthn-callback" />
@@ -5,7 +5,12 @@ import android.net.Uri
import androidx.browser.auth.AuthTabIntent
import com.bitwarden.annotation.OmitFromCoverage
private val BITWARDEN_HOSTS: List<String> = listOf("bitwarden.com", "bitwarden.eu", "bitwarden.pw")
private val BITWARDEN_HOSTS: List<String> = listOf(
"bitwarden.com",
"bitwarden.eu",
"bitwarden.pw",
"bitwarden-gov.com",
)
private const val APP_LINK_SCHEME: String = "https"
private const val DEEPLINK_SCHEME: String = "bitwarden"
private const val CALLBACK: String = "duo-callback"
@@ -11,7 +11,12 @@ import java.net.URLEncoder
import java.security.MessageDigest
import java.util.Base64
private val BITWARDEN_HOSTS: List<String> = listOf("bitwarden.com", "bitwarden.eu", "bitwarden.pw")
private val BITWARDEN_HOSTS: List<String> = listOf(
"bitwarden.com",
"bitwarden.eu",
"bitwarden.pw",
"bitwarden-gov.com",
)
private const val APP_LINK_SCHEME: String = "https"
private const val DEEPLINK_SCHEME: String = "bitwarden"
private const val CALLBACK: String = "sso-callback"
@@ -12,7 +12,12 @@ import kotlinx.serialization.json.put
import java.net.URLEncoder
import java.util.Base64
private val BITWARDEN_HOSTS: List<String> = listOf("bitwarden.com", "bitwarden.eu", "bitwarden.pw")
private val BITWARDEN_HOSTS: List<String> = listOf(
"bitwarden.com",
"bitwarden.eu",
"bitwarden.pw",
"bitwarden-gov.com",
)
private const val APP_LINK_SCHEME: String = "https"
private const val DEEPLINK_SCHEME: String = "bitwarden"
private const val CALLBACK: String = "webauthn-callback"
@@ -29,6 +29,7 @@
<domain includeSubdomains="true">bitwarden.com</domain>
<domain includeSubdomains="true">bitwarden.eu</domain>
<domain includeSubdomains="true">bitwarden.pw</domain>
<domain includeSubdomains="true">bitwarden-gov.com</domain>
<trust-anchors>
<!-- Only trust pre-installed CAs for Bitwarden domains and all subdomains -->
<certificates src="system" />