for the privacy issues and for part of the security i would do this:
setup the microsoft certificate server on a box behind the firewall.
setup the main web area to use SSL - use any standard SSL vendor.
then issue a client cert from the ms cert server and put the name of the user and the pc name in the cert address info.
then on the web site add the "require client cert" flag.
then in your asp.net master page you demand the cert and read it's attributes.
this alows you to verify the login - username and password
AND the machine used to make the login.
in your site management you then have to talk to cert server to revoke certs when the member is closed and or when the member stops using a given pc.
given that you need high security - due to the subject matter and who uses the site this bit of hassle should be worth the time.
show them that you are beeing carefull and that even a username and password by it's self will not give access to the confidentail data.