Authentication Proxy for the VistA Hospital Information System William Majurski Information...

Post on 13-Jan-2016

215 views 1 download

Tags:

Transcript of Authentication Proxy for the VistA Hospital Information System William Majurski Information...

Authentication Proxy for the VistA Hospital Information

System

William Majurski

Information Technology Laboratory

RDOH’98

Department of Veterans Affairs Hospital System

• Serves medical needs of veterans

• 170+ medical centers

• 400+ outpatient locations

• Organized by region

RDOH’98

VistA

• Veterans Health Information Systems and Technology Architecture

• DHCP (Decentralized Hospital Computer Program)

• Server written in M (MUMPS)– Timesharing– Client/Server

• Administration - site/region

RDOH’98

Installed NT Network

• Currently supports administrative functions

• Uses NT Domain Model– Domain Controller– Centralized administration

RDOH’98

Basic Client/Server

ClientWS

M Server Native ORB

RDOH’98

Problem Statement

• User population more mobile– Providers & patients dealing with more than

one site

• VistA network of computing services becoming more tightly integrated.

• Current authentication scheme (userid/password) poses problems.

RDOH’98

Problem Statement (cont.)

• Each user must have account on each system associated with his patients.

• Must remember account names & passwords.

• Repeated authentication is time consuming and distracting.

RDOH’98

Approach

• Authentication Proxy – Network service that bridges security

environments of• Underlying network environment (NT)

• Hospital information system

• Solves– Multiple account – Repeated Authentication problems.

RDOH’98

Approach Specifics

• Authentication Proxy that translates NT authentication into VistA authentication

• Map NT user identity -> VistA user identity

• Automatically creating map

• Event log

RDOH’98

NT Authentication

• NT Domain– Collection of workstations and servers– Identified by domain name– managed from single administrator’s account

• User login– To domain– Servers trust domain controller– Servers can identify user account

RDOH’98

Critical Technology

• Security Support Provider Interface (SSPI)

• API to integrated security services

• Accessibility:– direct calls to API– RPC– Distributed Common Object Model (DCOM)

RDOH’98

Authentication Proxy

• Runs on server running NT

• Talk SSPI to client via DCOM

• Tightly coupled with M Server

RDOH’98

Architecture

ClientWS

AuthenticationProxy

M Server

DCOM

NTNT (maybe)

NT

RDOH’98

Userid/Password

ClientWS

M Server

NT (maybe)

Setup =><= Challenge

Userid/password =><= Valid

RDOH’98

Authenticate with Proxy

ClientWS

AuthenticationProxy

M Server

1. Auth[user] =>

2. Auth(NT user,Token)

NT User -> M User

3. <= Token

4. Token =>

DCOM

Token, NT user, expiration

RDOH’98

User Map Initialization

• NT identity from Authentication Proxy

• M Server identity from login/password

RDOH’98

Proxy Initialization

• M Server administrator must trust proxy

• On M Server– Special account with password– Security key (controls access to map object)

• On proxy– Install account/password

RDOH’98

Multiple M Servers

• Authentication Proxy can handle multiple M Servers

• M Server can trust multiple Authentication Proxies

RDOH’98

Event Logging

• Each authentication attempt is logged

• Information:– NT user – M user – Application context (application object)– Patient

RDOH’98

Object Technology +• All the detail protocol handling

– Provided by vendors– Managed by objects.

• Very small amount of code to be maintained– 200 lines M Server– 300 lines Proxy.

• Value of objects - packaging for reuse.

RDOH’98

Object Technology -• Must understand many aspects of object

– methods, initialization, interactions

• New uses for old objects– Documentation from “wrong angle”

• Comes with much integration (context)– Good as long as it is the right integration.

• Reuse battle has just begun

RDOH’98

Thank You.