Domanda

Ho un po 'un problema.

Abbiamo un motore di un'interfaccia centralizzata che parlare con un servizio web che fornirà informazioni complemento e consentire di presentare richiesta di sistemi esterni. Tutto questo è buono e bene fino a quando dobbiamo integrare questo con la sicurezza richiesta da questo fornitore.

Si rilasciano i certificati distribuiti tramite smart card (chiave USB) che l'utente finale deve utilizzare per avere il software di interagire con detto sistema (servizi web). Essi insistono sul fatto che la firma (a volte più) essere fatto contro il certificato finali gli utenti sulla sua chiave USB. La chiave privata è, naturalmente, protetto da password.

Come faccio a collegare Axis2 che in ultima analisi, di gestire tutto questo per i certificati che si trovano sul computer di fine gli utenti.

Il sistema è in gran parte legato applicazione di spessore cliente in Delphi 5, i interagisce motore di interfaccia per lo più con il database. Ora siamo riusciti a collegare un pezzo di codice che collega in modo efficace la stazione finale gli utenti al server di interfaccia tramite un socket TCP semplice.

---- Modifica ----

Abbiamo implementato la soluzione con intercettore firma personalizzata all'interno di CXF (abbiamo cambiato da Axis) che ha inoltrato il contenuto del messaggio a un proxy firma che a sua volta trovare e collegare il servizio di firma destra in esecuzione sul sessione utente-interattiva in cui la richiesta originale venire da.

ho accettato la risposta di Eugenio perché, anche se non abbiamo usato i componenti ha precisato che abbiamo fatto implementare la soluzione che ha seguito le linee guida generali della sua proposta.

non può sfuggire il fatto che la firma deve essere fatto in una sessione utente interattiva a causa del token USB. Ulteriori vincoli sono state imposte a causa del fatto che abbiamo usato i sistemi legacy e per la necessità di avere il lavoro del sistema in un ambiente condiviso (server di desktop remoto). Anche se è possibile che non è naturalmente supportato dai quadri servizio Web o librerie di crittografia.

È stato utile?

Soluzione

Se avete il certificato residente sul token USB del cliente, poi la firma (come operazione di crittografia) devono essere eseguite sul lato client. Se è possibile modificare questa applicazione Delphi, quindi è possibile utilizzare SecureBlackbox per la firma. Non so niente di Axis2, ma se permette la creazione e collegando moduli crittografici personalizzato, quindi fate uno che avrà un hash (che è ciò che è effettivamente firmato) e inviarlo al cliente per la firma.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top