Come installo un certificato utente?


21

Ho il mio certificato radice che firma i certificati utente.

Ho un sito che ti consentirà solo con un certificato utente che è firmato dalla radice ca.

Sono riuscito a far funzionare questo sito in Ios e Windows, ma non riesco a farlo funzionare da Android (4.2.2)

Ho provato molti metodi diversi per importare il certificato, inclusa la conversione tra formati: arriva fino a quando viene riconosciuto e "installato", ma in realtà non sembra mai essere installato o essere visibile ovunque (controllato sotto credenziali attendibili> utente).

Ho letto qui e le uniche soluzioni sembrano comportare il download / modifica dei file e il re-caricamento, quindi il riavvio - o il firmware modificato / simile .... Voglio davvero un modo supportato per farlo e non voglio davvero prendere in considerazione un hack poiché ho bisogno di una soluzione scalabile.


Benvenuto negli appassionati di Android! Hai avuto la possibilità di vedere Come installare un certificato web su un dispositivo Android ? Mentre la domanda è vecchia, la risposta migliore è ancora valida per Android 4.4.
dotVezz,

Ciao, sì, l'ho fatto ... su un dispositivo HTC, mi chiede se voglio usarlo come "VPN o (non ricordo) certificato" o "Certificato wireless", quindi dice che è installato ma non fa nulla ... .. Su un telefono Samsung, non ho più opzioni dopo l'installazione / dicendo che è stato installato e, di nuovo, non succede nulla.
William Hilsum,

@dotVezz Quella domanda riguarda l'installazione del certificato di un web server. Il sig. Hilsum chiede informazioni sull'utilizzo di un certificato client per l'autenticazione su un server.
Dan Hulme,

Cosa succede quando provi a visitare il sito? In Chrome> = 27.0.1453.49, dovrebbe essere richiesto di selezionare il certificato quando il server Web richiede tale metodo di autenticazione. Firefox non supporta questo.
Dan Hulme,

1
@Dave Devi fare una nuova domanda per vedere se qualcuno lo sa. L'aggiunta di una domanda nei commenti significa che la maggior parte delle persone che possono rispondere non la vedranno.
Dan Hulme,

Risposte:


2

Da StackOverflow: come installare un certificato CA affidabile sul dispositivo Android?

Ho trascorso molto tempo a cercare una risposta a questo (ho bisogno di Android per vedere i certificati StartSSL). Conclusione: Android 2.1 e 2.2 consentono di importare certificati, ma solo per l'utilizzo con WiFi e VPN. Non esiste un'interfaccia utente per l'aggiornamento dell'elenco di certificati radice attendibili, ma si discute sull'aggiunta di tale funzione. Non è chiaro se esiste una soluzione alternativa affidabile per l'aggiornamento e la sostituzione manuali del file cacerts.bks.

Dettagli e collegamenti: http://www.mcbsys.com/techblog/2010/12/android-certificates/ . In quel post, vedi il link al bug 11231 di Android: potresti voler aggiungere il tuo voto e chiedere a quel bug.

11231 è stato chiuso nel novembre del 2011 e lo stato è stato rilasciato per Android 4.0 ICS.

Ecco le note associate allo stato Rilasciato :

ICS tenta la maggior parte se non tutti gli elementi di questo problema. Se ho perso qualcosa, aprirò problemi più specifici per colmare le lacune.

Di seguito alcuni dettagli, pianifico un post sul blog più formale in seguito. Quanto segue dovrebbe essere visibile nell'SDK di Android 4.0 se si desidera provarli e fornire feedback.

Modifiche nelle impostazioni:

  • le autorità di certificazione del sistema (CA) sono ora visibili in Impostazioni> Sicurezza> Credenziali attendibili.
  • Le CA di sistema possono ora essere disabilitate e riattivate
  • gli utenti possono installare le proprie CA da Impostazioni> Sicurezza (così come altri meccanismi come tramite browser o apertura dall'allegato e-mail.
  • le CA degli utenti possono essere visualizzate ed eliminate in Impostazioni> Sicurezza> Credenziali attendibili
  • invece di un PIN separato di 8 caratteri per l'archiviazione delle credenziali, l'accesso è ora controllato tramite la schermata di blocco

Nuova API KeyChain

  • KeyChain.createInstallIntent consente alle applicazioni di richiedere l'installazione delle credenziali, rendendo sostanzialmente pubblica l'interfaccia utilizzata da Settings per richiedere l'installazione. gli utenti devono confermare le richieste di installazione come prima.
  • KeyChain.choosePrivateKeyAlias ​​/ getPrivateKey / getCertificateChain consente alle applicazioni di richiedere chiavi private e i relativi certificati associati per l'uso dell'applicazione. un caso d'uso comune sarebbe per l'autenticazione del certificato client con https.

E-mail

  • La posta elettronica ora utilizza l'API KeyChain per consentire l'autenticazione del certificato client per gli account Exchange

Browser

  • Il browser ora utilizzerà KeyChain per richiedere un certificato client quando il server ne richiede uno per l'autenticazione.

Nel mese di marzo 2014, una richiesta di miglioramento è stato creato Consenti agli utenti di installare propri certificati CA .

Molti utenti (comprese le società) utilizzano certificati autofirmati per SSL / TLS, sia perché non vogliono pagare per questo o perché non si fidano di altre società e vogliono farlo da soli (in realtà, non c'è motivo di acquistare un certificato quando non è richiesto che gli utenti anonimi di Internet si fidino del proprio server).

Al momento, è possibile installare un certificato CA personalizzato in Android, ma viene rilevato come "certificato utente" che sembra destinato ai certificati lato client. Di conseguenza, questi certificati vengono visualizzati come "certificati utente" nella GUI e da Android 4.4 è stata implementata una terribile "Rete che può essere monitorata".


4
Questa è un'ottima risposta ma per la domanda sbagliata. La domanda chiede come installare un certificato client per l'autenticazione del certificato client (raro per i siti Web). Questa risposta spiega come installare una nuova CA principale, che è diversa.
jtolds,

2

Vai su Impostazioni> Sicurezza> Archivio credenziali> Installa da scheda SD. In caso contrario, potresti aver bisogno di una versione Android più recente o di una soluzione alternativa che non conosco.


0

Puoi installare il certificato di root fornito dal sito su Android. Vai su Impostazioni nel tuo telefono Android, tocca su Installa credenziali dalla scheda SD.

Assicurati di scaricare il certificato sulla tua scheda SD


1
Cerchiamo risposte che spieghino a fondo le cose. Potresti espandere un po 'la tua risposta?
Dan Hulme,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.