Guida Deep Link Security

Configurare Deep Link sicuri su iOS e Android

La verifica del dominio non valida ogni route; ogni link resta input non affidabile.

LaunchLint Academy

18 min di letturaRevisionato dal team editoriale di LaunchLint
Dominio verificato collega percorsi iOS e Android sicuri all'app
Universal Links e Android App Links collegano HTTPS a un'app verificata senza validare il contenuto della route.
TL;DR

La risposta breve

  • Universal Links e Android App Links collegano HTTPS a un'app verificata senza validare il contenuto della route.
  • Tratta ogni link come input non affidabile, limita le destinazioni e richiedi autenticazione e conferma per azioni sensibili.
  • Questa checklist non è un controllo una tantum. Eseguila prima del primo upload, dopo modifiche rilevanti a dipendenze o configurazione e subito prima della pubblicazione. Sviluppo, prodotto e responsabile della console devono valutare lo stesso build. I segnali statici sono riproducibili, ma non dimostrano runtime o risposte backend. Abbinali ai test dell'artefatto firmato, alle dichiarazioni ufficiali e a una decisione tracciata.

1. Inventariare link e minacce

Elenca scheme, domini, path, parametri e azioni sensibili.

Tratta inventariare link e minacce come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di inventariare link e minacce identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

2. Stabilire la fiducia

Associated Domains e intent filter usano dominio e identità corretti.

Tratta stabilire la fiducia come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di stabilire la fiducia identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

3. Pubblicare le associazioni

AASA e `assetlinks.json` richiedono contenuto, HTTPS, identità e cache corretti.

Tratta pubblicare le associazioni come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di pubblicare le associazioni identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

4. Validare gli input

Normalizza URL, rifiuta parametri sconosciuti e consenti solo schermate previste.

Tratta validare gli input come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di validare gli input identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

5. Proteggere le azioni

Un link non esegue da solo pagamento, eliminazione o privilegi.

Tratta proteggere le azioni come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di proteggere le azioni identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

6. Progettare i fallback

Copri app assente, token scaduto, account errato, offline e vecchia versione.

Tratta progettare i fallback come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di progettare i fallback identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

7. Separare gli ambienti

Staging non reclama link o token di produzione.

Tratta separare gli ambienti come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di separare gli ambienti identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

8. Testare la matrice

Copri cold start, background, reinstallazione, browser, messaggi e redirect.

Tratta testare la matrice come una proprietà verificabile del candidato esatto. Collega la decisione al file, al campo dello store o a un test riproducibile. Separa risultato previsto e osservato, assegna un responsabile e ferma la pubblicazione finché resta una contraddizione di sicurezza o review.

Prove per approvare la release

  • Stato di produzione di testare la matrice identificato
  • File o campo responsabile collegato
  • Controllo ripetuto su dispositivo pulito
  • Differenze iOS e Android documentate
  • Ogni dubbio ha responsabile e data
  • Prova senza secret o dati personali

Domande frequenti

Sono sicuri automaticamente?

No. Verificano dominio e app, non autorizzazione.

Rimuovo gli scheme?

Preferisci HTTPS verificato e valida il resto.

Magic link fa login?

Solo con token breve, unico e validato server.

LaunchLint apre tutti i link?

No. Controlla la configurazione statica.

Fonti ufficiali

Questo articolo usa le seguenti fonti primarie ufficiali. Le regole possono cambiare: verifica sempre la versione corrente prima dell’invio.