640 likes | 662 Views
Technology Models For Integrated Enterprise Architectures. T E C H N O L O G Y. Ad Hoc/EDI. Immediate Solution Simple Point to Point No Enterprise Strategy No Common Metadata No Common Schema No Re-Use. Hub & Spoke. Technology Solution Virtual Point to Point
E N D
Technology Models For Integrated Enterprise Architectures
T E C H N O L O G Y
Ad Hoc/EDI • Immediate Solution • Simple Point to Point • No Enterprise Strategy • No Common Metadata • No Common Schema • No Re-Use
Hub & Spoke • Technology Solution • Virtual Point to Point • Centralized Data/Metadata • Centralized Services • Brokered Metadata Broker Data
Department of Motor Vehicles Criminal History Repository Department of Corrections Translation Push/Pull State Police Supreme and Appellate Courts
SOA • Business Solution • Common Point to Point • Enterprise Metadata Registry • Centralized Registry • Distributed/Re-Usable Services Broker Registry Metadata Data
Find Publish Bind Discovery Agents Service Description Service Requestor Client Service Provider Service Service Description
What is a Web Service? • Many definitions • A standard way of requesting a computer system to perform some action on your behalf, and for the requested computer to return a response. • “www for applications” • At a minimum, however, a web service is a piece of self-contained software that works over the Internet and uses a standardized XML-based messaging system
An Example of What They Are Doing Today King County SO ??? John Doe UDDI Bellevue PD Tukwila PD
Two Aspects to Web Services • Use web services that others have created (consumption) • Create your own web services for others to use (publishing)
Application Server Internet Client Application Web Service How Does It Work? • A request is sent to a computer system to perform some action on your behalf, and for the requested computer to return a response. • XML is used to encode all communications • XML can be based on standards such as GJXDM
Client Application Application Server Web Services Interaction GetTemperature( “92010” ) GetTemperature( “90210” ) Return( “65” ) Return( “65” ) Process returned Value
How Do They Help Me? • Provide access to a wider range of information and services than a web site. • No need to copy data locally as it is always available across the Internet. • Software systems can reap the same benefits as web client users. • Facilitates electronic collaboration between (disparate) systems.
How Does This Help Justice? • Existing agencies already form the hubs for justice related information. • Large amounts of useful information already exist, but in disparate systems.
Where Can an Officer Look for Information? • Existing systems provide access to information stored locally within an agency.
Some agencies offer information services via a web portal of some kind.
What is UDDI? • Web Service Registry • Stores which web services are being provided by a given Provider • Stores a list of web service standards(T-Models), and which web services implement each standard.
What is SOAP? • A lightweight, XML-based protocol for exchanging information in a decentralized, distributed environment. • SOAP allows objects (or code) of any kind -- on any platform, in any language -- to cross-communicate.
What is WSDL? • An XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. • It can describe information such as the access point (i.e., URL), protocol (SOAP, HTTP, or MIME) and message format (such as XML Schema) of the Web service.
Web Service Security • Web services can use the same security technologies as the www. • Identity theft still remains the biggest security hole. • Use Defense In Depth
Web Service Enhancements • 1.0 provides support for security features such as digital signature and encryption, message routing capabilities, and the ability to include message attachments that are not serialized into XML. • 2.0 provides policy, security, messaging, and more
Consuming Web Services • Universal Description, Discovery and Integration (UDDI) registries can be used to catalogue available Web Services • Use an XML-RPC or SOAP toolkit for your platform and your preferred programming language • Build your application logic around data retrieved from many different organizations through their published Web Services
Publishing Web Services • Create your Web Service using your preferred programming language and either the XML-RPC or SOAP toolkit for your platform • Use the Web Service Description Language (WSDL) to describe your Web Service to other software systems • Allow others to discover your Web Service by publishing to a UDDI server
Web Services in Justice • An ideal platform for data sharing without the need to gather data in one place • Present information obtained from multiple agencies in a unified view • Can be real time • Available 24 hours a day
What’s Good About WS ? • Shares many similarities with existing web based interaction (http/s, firewalls, etc) • Clients and servers can be created using unrelated technologies • Supports all web site security models (http/s, certificates, LDAP etc.) • Offers additional security features beyond that of web sites (WS Security).
Pitfalls • Massively distributed, therefore no standards for error management • Far greater need for security • Response time cannot be guaranteed if using the standard Internet as the transport mechanism
Service-Oriented Architecture
What is SOA? • SOA - (Service Oriented Architecture) A system for linking resources on demand, where resources are made available to other participants in the network as independent services that are accessed in a standardized way. This provides for more flexible loose coupling of resources than in traditional systems architectures
What is SOA? • At its simplest, SOA is just designing your architecture to best work in a Web service environment, based on the consumer-provider model.
Find Publish Bind Discovery Agents Service Description Service Requestor Client Service Provider Service Service Description
User Interface - Presentation Front End APPS Web Browser Email Client Telecom Wireless Assurance Registries Workflow Access UDDI Metadata Exchange Collaboration Gateway LE RMS LE CAD CMS Court CC/DOC Common Services WSDL- Web Services Enterprise Information Services Layer Common Communications HTTP - SOAP - XML Back End Justice Applications & Functions
Why is SOA Important? • The nature of e-business is changing • Agencies are experiencing an explosion of interactions both internally and externally • Need for dynamic A2A relationships that drive agencies to employ reusable, flexible, adaptive software services for the creation of their CJIS solutions.
What Benefits Does SOA Offer Business Functions? • Concentrate development efforts on building services that drive effectiveness • Evolve business models and relationships • Reduce costs of internal integration • Establish interactions with CJ community more efficiently • Deliver business functions to a broader set of users • Outsource IT skills that provide no business value-add
What Benefits Does SOA Offer IT Staff? • Easier development, service, and upgrade of solutions • Reuse of existing, proven assets • Reduced dependence on implementation specifics
SOA Summary • Decouple applications and infrastructure • Allows agencies to quickly build and deploy solutions based on reusable components (internal or external) • Change the target/nature of interactions based on changing business conditions • Leverage flexible business models • Maximize reach to users & partners • Minimize costs and development time
Security Issues in Service Oriented Architecture InternalNetwork Hey, What do you know about this guy who was arrested? Hey, What do you know about this guy who was tried? Court database Sheriff’s database
UDDI UDDI WSDL WSDL Security Issues in Service Oriented Architecture • Registry of Services • --- • --- Internet or Intranet I have info you might be interested in! So do I! SOAP/XML over HTTP Court database Sheriff’s database
The Need In integrated justice applications, the security problems often surface as a byproduct of implementation
Prevention Protected communications Authentication Authorization Access control enforcement Non-repudiation Transaction privacy Detection and Recovery Audit Intrusion detection and containment Proof of Wholeness Restore ‘secure’ state Supporting Services Identification (& naming) Cryptographic key management Security administration System protections An Ontology of Security Services
Secure Information Sharing:3 Basic Properties • Confidentiality • Integrity • Availability SSL Digital Signature PKI VPN I&A