Domanda

Sto sviluppando un nuovo sito Web (ASP.Net, codice VB dietro le pagine, .Net 3.5) per sostituire un "Classic ASP". sito.

Alcune pagine sono "pubbliche" e le altre richiedono autenticazione, in questo caso si legge leggendo le carte CAC emesse dal DoD tramite la tastiera.

Ora, per 'produzione', configurano IIS in modo che faccia la sfida di autenticazione (leggendo la scheda e richiedendo un PIN) quando colpisce una certa directory (/ sicura in questo caso) in modo che tutte le pagine in quell'albero siano garantito.

Sto arrivando al punto in cui ho bisogno di vedere alcune delle informazioni sulla scheda, ma quando ho "F5" nel sito Web che sto sviluppando, tutto il materiale Request.Clientcertificate è vuoto: non si verifica alcuna "sfida" con il server di sviluppo ASP.Net di Cassini.

Vedo riferimenti a " configura IIS per mettere SSL nella directory di destinazione " - ma non sto eseguendo IIS su questo PC di sviluppo (né l'altro sviluppatore lo vedrà tra poco). Le persone di supporto di rete lo faranno quando il sito verrà infine copiato in produzione, ma ora devo provare alcune funzionalità di sicurezza.

Come posso configurare il server fornito con VS2008 per leggere la scheda CAC e 'caricare' le variabili server / sessione che devo interrogare? In alternativa, c'è qualcosa che posso inserire nelle stesse pagine .aspx o .aspx.vb che può simulare o innescare la sfida della sicurezza?

Grazie in anticipo.

È stato utile?

Soluzione

Risposta breve. Cassini non supporta questo tipo di sicurezza.

Altri suggerimenti

Spero che tu abbia trovato una soluzione a questo ormai ... ma per ogni evenienza, ti dirò che faccio uno sviluppo simile e ho riscontrato lo stesso problema. L'unica "soluzione" Ho scoperto che era semplicemente pubblicare il sito Web / la pagina Web su un server con IIS configurato per richiedere certificati client, ecc ...

Ovviamente, questo ti impedisce di usare il " debug " in Visual Studio, ma esiste sempre il metodo per iniettare le istruzioni di debug nel codice [ad esempio: response.write () seguito da response.end () se necessario]. .. Ho anche creato una pagina che ho usato per enumerare tutte le stringhe disponibili da request.clientcertificate () , e anche successivamente l'ho espanso per eseguire un regex fornito per la ricerca dell'intero certificato ...

Spero che queste idee si rivelino utili!

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