A Single Login Web Service Integrator -- WebEntrance


Yan Zhao
IBM Corporation
zhaoy@vnet.ibm.com



Abstract

This paper introduces a single login web service integrator, named WebEntrance. It provides an aggregated web service on top of existing web service systems (as compomemts) with a centralized access control and content customization facility, though each service system may have its own access control facility and provide its own independent service. It implements a flexible and dynamic component bundling mechanism, and can provide personalized service with user selected component sets. WebEntrance provides a convenient way for new components to be plugged in and be played. The owner of the aggregated web service can decide to keep each component's original branding, add more information, filter out certain content, or customize the presentations. WebEntrance also provides a single user registration and authentication interface for all of its user-selectable service components. WebEntrance currently accommodates web service components invoked via HTTP protocol (i.e. under a web server) and service components invoked directly from local or remote APIs. Other component interfaces will be implemented later with consideration of CORBA compliance.

1. Introduction

The mechanism for invoking a service component via local or remote APIs is readily available in current software implementations. For this reason, this paper emphasizes the integration of web service components that can be reached via HTTP protocol. The web service components mentioned in this paper include both static HTML based service systems and web application systems that involve computation logic for dynamic web content generation based on web client requests.

The trend of web service commercialization and personalization usually involves user access control. That means user registration is required to obtain a service, and users need to be authenticated each time to access the services, e.g. by providing the user ID and password. Due to a growing number of web services and with each providing their own authentication facilities, it has been inadvertently inconvenience to the web users. For example, a user’s ID in one system can not be used in another system due to duplication, and the password validation policy (e.g. the lasting time period, character restrictions, etc.) in one system may be different from another. Consequently, a user has to have multiple user IDs and passwords, and must be authenticated many times to access different services. These multiple user IDs and passwords are inconvenient to use and difficult to manage. WebEntrance can solve this problem by providing one common entrance for a user to access all of the web service components. That means a user needs to register and be authenticated only once at the entrance. Then, the WebEntrance takes care of user registration and authentication to the other corresponding web service components. WebEntrance also provides the users with the convenience of finding all of the interested web services in one place thus saving the users exploration time.

smoke fetish archive Avril lavigne pussy genie in a string bikinie cast Girls fuck horses stories pornstars xxx babes Nikki schieler ziering nude dickies jeans Skinny teen bitches hentai sex videos free Little girls sex nude pot Boob tube High school musical vanessa nude pics free artistic nude photos pussy prowler Gayforit watch free lesbian videos free teen celebs nude Bikini dare galleries spiritual sport fucking Big and beautiful porn stars
faked nude Sleep nude girls nature nude video Catfight nude nude asian sluts nude ladies pussy Sara roemer nude asian girls non nude School girls nude pics gay nude workout Nude nudist pamela anderson playboy nude pics Kathrine heigel nude Free nude hentai fairies nude swedish blonde nude Nude celebrity videos for free nude celebrities miley cyrus nude south african men Free hardcore nude nude cellphone pictures Bollywood nude boobs
blowjobs gallery Jim hardick free porn videos no credit card Creatine sex milfporn star aluminium essex Free video sex positions ultrapasswords xxx Xxx teen britney spears blowjob video Facts teenagers curfews natural hairy pussy Amature women Edwin carungay fuckyourtube sexproadventures Free kinky sex tips rave sex porn lyrics sexy back Better than sex cake recipe final fantasy rikku xxx Paris hilton blowjob
free yno sex video 3d young art sex phone web cam sex Amature woman sex party free home-made sex clips young sex in america Free dirty sex pictures best sfrican sex movies He she sex pics picts of amature sex Julie michaels sex scene bible view on sex Sex tv tv show Extreme insertion sex 6 fee animal sex vids sex girls piss tube Thai pussy sex porn sex 3d fantasy pics sex mature woman jokes Jeremiah birthday sex bio tulsa police sex registration Sex vedeo stream chat
independent sex scenes Racist daughter sex clearanced sex toys K9 sex clips britney sex movies black sex squirt Awsome hard sex manson sex onstage Nimpho sex classifieds sex offenders index Nomid animal sex hardcore lezbo sex Oral sex possitions Out sex videos sly fox sex famos toon sex Only ebony sex anette dawn sex extent sex pill Mature hairy sex asian sex french Kim kardishan sex
education research group Ari banerjee yankee group ancestry group Randy orton group free group sex porno group insurances Galleon group hedge fund rubber fab technologies group Attorneys group group b infection Risk retention group insurance the rules support group Green resources group Group dynamics team r46b group high five amateurs group Amazing group sex on demand color group lesbian group gallery Campy centaur group accept group Group of deer is called
fucking machine xxx College sex xxx chobits xxx Iran xxx sexo xxx enanas collection xxx Eve angel xxx pork xxx Older women xxx download free psp xxx Xxx sluts videos swingers xxx free Free bi xxx Photos xxx free harecore xxx xxx porn passwords Rapes xxx xxx adult dvd xxx gratis con putas Web site xxx free xxx mangas Alena seredova xxx
ball dragon porn video The thrills music video woman squirting free video Roma video card e pci video mtv jam video Apartment mikes picture video paris hilton video stills Big cock homemade movie council meeting video Studio telescope video converter ipod ora video Victoria pink videos Uk movies cussler movie new video releases 2005 Conferencing live video violence video games children tasha nelson video Rv video camera movie graber Adam sandler secret video
teacher sex crazydumper Sex health video marriage with sex Celebrity sex viceos busty office sex shove bull sex Football sex rio free sex shots Consensual submission sex free sex gemes Mauritius sex site hardcore sex mp3 Barbarella sex machine Hunting sex jessica alien sex gaems free sex xxx Muscular sex pictures ass booty sex dogpound group sex Anail sex videos vitamins before sex Brewster sex stories
asians sex Haveing sex with a man lesbien sex xxx Hypno girl sex arabic sex 9356 biker girls sex Guilty gear sex mature free sex tube Nude girls having sex with boys ray j and kim kardashian full sex tape for free Cyber sex forum what is angry sex Sex while pregnant pictures When can i have sex and not get pregnant home made amateur sex tapes dog sex beastality Sex games online for women clips cartoon sex taboo charming mother sex Girl sex pose hardcore gothic sex Best sex teacher
love sex relatioships Historical books sex pegging sex literature Sex story community sex bites torrent long sex trailors Gonzo rawr sex carrie bradshaw sex Voung teen sex home sex stream Kinky sex forum savvanah gold sex Anal sex wide Crushing for sex comic sex jokes mermaid sex videos Pet sex foram ali sheffield sex cancer sex partners Calforina sex retreat mini teens sex Anal sex cum
victorian xxx Xxx sci fi sexy photos xxx Xxx video play xxx babe videos animail xxx All xxx tube tilf 2 xxx Xxx puzzle black porno xxx 3gp xxx wap videos streaming xxx Free xxx moves Muscle gay xxx free gothic xxx video naruto xxx Xxx pass free best xxx movie 2008 xxx dog clips Xxx free e cards xxx porn full videos Xxx stone
porn movie theaters Morgan lane porn catherine porn Porn mom son sex mommy and daddy porn kasumi porn Find porn torrents rumania porn Xxx pictures porn black porn videos free Discipline porn biggest penis porn Littel girl porn Porn leg warmers tiny tits porn movies top 10 porn clips Free lovemaking porn homemade mexican porn vanessa raia porn Muslim porn sex free high definition porn streaming James nichols gay porn
fuck me gay Vulva fuck sexy fuck movie Mother lets son fuck her fuck you mom and dad mommy fuck son Father son fuck girl porn to fuck Fuck off letter fuck my boob Megaupload fuck i fuck my mother inlaw Doggy style fuck videos Woman looking to fuck shemales fuck girls movies kama sutra fuck Fuck you love mother daughter fuck boyfriend fuck church Dog fuck woman movies the fuck buttons Man fuck his dog
Blowjob And Cum Swallow mom giving son blowjob Preggo Blowjob free blowjob compilations blowjob mature Blowjob Guys blowjob fantasies 18 Avatar Blowjob sister gave me a blowjob Tickling Blowjob blowjob at school Hentai Porn Blowjob Fake Blowjob girl pukes during blowjob blowjob tryouts Guys Blowjob japanese girl giving blowjob most famous blowjob Gay Horse Blowjob double blowjob vids Blowjob Outdoor
Youngest Girl Porn Ever plus size sexy school girl Flavor Flav Girl Poops all girl sex videos girl porche Baby Girl I Want You gossip girl on tv com Hey Hey Baby Will You Be My Girl naked girl shitting Little Girl Photos ghetto black girl Go Go Girl Adult Girl Psp Theme girl for sale on ebay pin up girl hats Little Monster Girl naked teen girl pics black girl actress Sleeping Girl Gets Raped how to approach a girl online Girl And Girl Haveing Sex
Ink bitch webbie gutta bitch Lyrics to five star bitch bitch in french Badd bitch quotes cant trust no bitch Bitch asian im a pretty bitch Kristen stewart is a bitch a bitch slap G unit fat bitch Shut up bitch download im in san diego bitch cock hungry bitch Teeh fuck the bitch is kristen stewart a bitch bitch milfs Lyrics to bitch by meredith brooks foot fetish bitch Shake that ass bitch and let
paris hilton beach sex Cocksucker snake girls xxx Nude booty poppin little teens pics most extreme porn list Audience analysis heather locklear nude Porn star named madison lolita preteens Cheyanne bride black cock joelle amateur Nude christina aguilera Nice nude teen photo gallery hot cab mature sex sites Fucked by my dog mpegs massive tits men fucking boys Swedish porn galleries amateur nudes Sexy superheroes
bbw nude women Nude pussy cum naomi nude Nude asian americans courtney smith nude sienna guillory nude Girls basketball nude kate bosworth nude fakes Amateur wife nude photos ukraine nude teen Big black ass nude kiera knightley nude pics Nude russians Sleep nude chris brown rihanna nude photos pic of nude girls Bollywood nude images sexy and nude pics free nude college girl videos Nude dads and daughters ameture nude pictures Serena williams nude pix
1st Anal Sex what is an anal prolapse Types Of Anal Sex gay anal sex technique gay anal fisting videos Why Does Anal Sex Feel Good video double anal Lesbian Teens Anal largest anal dildo Lesbian Anal Toy anal sex poop videos Anal Hidden Cam Amateur Interracial Anal amy amour anal how to anal intercourse Anal Sex Condoms eyaculacion anal free anal streaming Anne Hathaway Loves Anal mini anal Unnatural Anal Insertions
Anal Guest free full anal movies Manual Anal 1st anal video shits herself anal Couple Anal Sex roxy renolds anal Sara Jay First Anal Scene anal destruction casedy Como Hacer El Sexo Anal anal sex effects Anal Cancer Blog Anal Toys Lesbian ice la fox anal scene lesbian anal vid Rough Anal Sex Clips wet anal double anal sex movie Palin Anal really painful anal Shitty Anal Fuck
rodox sex mpg Shower sex how penis breasts sex Sex malam pertama random sex videos exsplicit sex videos Sex lubrication silicone i post sex Sex fat chick celebriies having sex Adult sex animations sex and motorcycles Adult sex therapy Laura cover sex fucking having sex sex vacation caribbean Pool sex orgasm women barbershop sex office sex gay Secretaire office sex black sex vod Rainbow mika sex
Rock cock jock cock robin when your Wife big cock huge cock free pics Mature sucking black cock cock docking clips Hardcore riding cock cock sucking whores Fuck you cock sucker cock fighting rules Big cock hardcore Hubby loans to black cock milf sucking young cock two cock in pussy Cock sucker t shirt two cock fucking cock pierced Tila tequila suck cock largest cock videos White teen black cock
miss teen usa south carolina Fucking boobs thumbnails free videos of gay black me gandbang Senior sex trailer sophie monk nude nude music videos Britney spears porn video maggie grace nude Preteen bikini movies xxx Sexy pamela anderson vanessa new nude photos Aisha tyler nude pics Gametophyte produces male female sex mate plants toothless blowjob monthly membership streaming porn Pinkpanteens preteens in thongs lingerie nudecollege students Fat mature sex teen monologues Ebony muff diving
sex with hookers Free jaybee sex sex with redheads Cartoons about sex usa sex forum retarted girls sex Photo booth sex gay virgin sex Female sex chromosome sex teen candy Teenage sex story sex feet tingle Celebrity sex sces Flex girl sex lesbian sex galerii work at sex Rough sex free roug gangbang sex hypnosis sex best Sex trek 6 teens wating sex Ssecretary sex videos
1st Anal Sex what is an anal prolapse Types Of Anal Sex gay anal sex technique gay anal fisting videos Why Does Anal Sex Feel Good video double anal Lesbian Teens Anal largest anal dildo Lesbian Anal Toy anal sex poop videos Anal Hidden Cam Amateur Interracial Anal amy amour anal how to anal intercourse Anal Sex Condoms eyaculacion anal free anal streaming Anne Hathaway Loves Anal mini anal Unnatural Anal Insertions
In addition, WebEntrance empowers a web aggregation service provider by not only providing single login entrance for users, but also being able to change web service components’ original branding, customize the presentation, filter out certain content, and put in his own advertisements. Contents from different web service components are made accessible to the aggregation service provider via WebEntrance prior to sending them to the end users. This allows the aggregation service provider to customize the content. Through WebEntrance, the aggregation service provider can also provide personalized services. Customers can select what pre-bundled web service component groups they want via initial registration, and they can change their selections any time afterwards. With the use of the WebEntrance's GUI based administration sub-system, an aggregation service provider can add or remove a web service component easily to or from his service site. Also, he can dynamically bundle the service components into different groups, and manage user information and accessibilities to the different groups. Of course, the web service component's update and dynamic bundling will not interrupt customers services.

Two WebEntrance application scenarios are described as follows:

The WebEntrance adopts object oriented architecture and design. It is based on the object oriented java web servers and is implemented purely in Java language [1] [2], therefore, it is platform independent. Currently, it is implemented on Jeeves [4], and will be ported to other java web servers as well.

2. Architecture

As shown in Figure 2.1, the WebEntrance mainly consists of three sub-systems: a user registration sub-system, a service engine, and an administration sub-system. The User Registration Sub-system coordinates user registration information with the corresponding service components. The Service Engine accepts requests from web browsers and passes them to the corresponding service components, obtains responses from the components and sends them back to the web browsers. Also, it conveys user authentication information to the corresponding components, and provides various service options. The Administration Sub-system is implemented with a GUI, which provides a convenient mechanism for managing users and web service components, as well as for service and web content customization. There is also a Data Manager which maintains a repository for user, service component, user access group, and component bundling information. It also manages a set of persistent objects to accommodate repository accesses from different threads and processes. This data manager and relevant persistent objects are implemented on the top of JDBC[7], therefore can facilitate the plugging in to different database products.


A user needs to be registered to get services from WebEntrance. The user registration information is propagated to the user selected web service components or applications by the registration sub-system. Initial groups of service components can be selected during registration. After registration, a user is granted a user ID, a password and a certificate if there is a SSL (Secure Socket Layer) authentication involved in a selected web service component. Then, the user can login to the member service provided by WebEntrance. After user login, the service engine will authenticate the user and provide a personalized home page to the user which includes all service components the user has selected. When the user clicks a component's hyper-link, the request is sent to the service engine. The service engine first compares the user's access to the accessibility requirements possessed by the requested service component. If the user has the correct accessibility, the service engine will get the web content according to the requested URL, and send it back to the user. Also, users may select to post content to the system of a web service component. Optionally, the service engine can also support usage logs and reporting, and an interface to a billing/payment sub-system.

The WebEntrance administration sub-system is implemented in two versions, a server based java application version and a web browser viewable java applets version. The user interface is basically the same in these two versions.

3. User Registration Sub-system

The user registration sub-system allows users to register themselves. Also, it provides to a user with an initial list of selectable service groups. Each group has a list of service components, and each component can reside in multiple groups. Also, a user can access multiple groups. The user registration information is stored in a persistent repository (i.e. a database) via the data manager. This registration information is propagated to the access control systems of user selected service components. Therefore, only one registration is necessary to access all service components that are routed to the WebEntrance. It also enables a single user authentication interface, i.e. a user needs only to login once to access all of the services provided by selected service components. A sample user registration form is shown in Figure 3.1.

Figure 3.1. A sample user registration form


3.1. Registration Mechanisms

WebEntrance provides two types of user registration mechanisms, automatic registration and administrator assisted registration via Email. In the automatic registration mechanism, a user fills in a registration form like the one shown in Figure 3.1. Then, the registration form is sent to the registration sub-system via a URL. The registration sub-system parses the users information, and saves it directly to the persistent data repository through the data manager.

If a proofing procedure needs to be performed before a user can be registered, the administrator assisted registration mechanism can be applied. In this registration mechanism, user's registration forms are routed to a system administrator via Email.

3.2. Registration Synchronization

Basically, the registration synchronization between WebEntrance and other web service components is achieved by propagating user registration information in WebEntrance to other user selected service components via the regular registration channel of these components, usually via HTML forms. This means, after a user registered to the WebEntrance, a number of registration forms are dynamically generated which correspond to the web service components that the user has selected. Each registration form is generated from a pre-defined template that is derived from the registration form of the corresponding web service component.

Each time a user updates his/her service component group selection list, his/her registration information will be sent to the newly selected components, and de- registration information will be sent to the components that the user de-selected.

Some web service components may require more specific information than the general registration information that WebEntrance provides. In this case, an additional request form will prompt to a user by WebEntrance after the user selects these specific service components.


4. WebEntrance Service Engine

The architecture of the WebEntrance Service Engine is shown in Figure 4.1. The Service Engine provides a gateway entrance for all of the web service requests. It accepts requests from web browsers, parses the requests and dispatches them to the corresponding service components. Then, it obtains responses from the components, processes the contents, transforms the URLs by redirecting them to the service engine, and sends the processed contents back to the web browsers. A dispatcher and a transformer are involved for URL redirection computing during the service. This enables all web service requests and the fed back contents go through the service engine, more exactly, the web service coordinator in Figure 4.1.


The web service coordinator manages the workflow among the different components inside the service engine. The access authenticator checks a user's credentials (e.g. user ID and password) and his/her service request. If the accessibility matches, the access authenticator send a “true” to the web service coordinator, if not match a "false" is sent. Based on the authentication information sent from the access authenticator, the web service coordinator either sends the web client request to the dispatcher, or sends back alert information to the user to inform them of the access violation. A cache manager is implemented to enhance the performance. It caches the persistent data for the web service components and the recently visited users.

For maximum performance, the WebEntrance service engine is implemented using a client/server approach. The web service client is very thin and resides under the HTTP server. It is invoked by requests from web clients. One web service client instance is created by the HTTP server to handle a single user request. The WebEntrance service engine is operated using multiple threads and the threads can run in separate physical machines for scaleability. The connection between a web service client and a WebEntrance service engine instance is established by the connection manager . Both the connection manager and the WebEntrance service engine run continuously. After receiving a request from a web browser, the web service client sends a request to the connection manager to ask for connection to a WebEntrance service engine instance. The connection manager tries to find an available engine instance and make the connection. If no engine instance is available, the connection manager will put the web service client process to sleep. The connection manager knows how many engine instances exist and which ones are available. When an engine instance is available, the connection manager will wake up a sleeping web service client and establish the connection. After the client/server connection is established, the web service client sends the web browser request to the WebEntrance service engine, and the engine returns a data stream to the application client in web browser viewable syntax. Then, the web service client sends this data stream back to the web browser.

An instance of the WebEntrance service engine can be added or removed by an administrator based on the user volume of requests. This service scale adjustment operation will not interrupt the services. A similar client/server implementation can be found in both IBM Digital Library Internet Connection [3] and Sun's Java Web Server - Jeeves [4] [5].

4.1. Access Authenticator

There are several different types of user authentication mechanisms, e.g. basic authentication, digest authentication, SSL authentication, HTML form based authentication, etc.. A service component's authentication type is stored in the repository as one of its attributes. After a user is authenticated by the WebEntrance, his/her credential is sent to the requested service component based on the component's authentication type. For example, for a basic or a digest authentication, the user's ID and password obtained from the header of his/her request will be passed to the requested service component; for a SSL authentication, instead of sending a password to the requested service component, a certificate will be sent out; for a HTML form based authentication, an appropriate query string will be sent. For the SSL authentication, a user only needs one certificate for the WebEntrance service engine. The WebEntrance service engine has all certificates to the different web service components that use SSL authentication.

4.2. Web Request Dispatcher

After conducting an authentication, the web service coordinator sends the user request to the web request dispatcher. The dispatcher constructs a URL based on a parameter string passed by the user requested URL and the server map information stored in the repository. Then, the dispatcher sends the constructed URL to a corresponding web service component, gets response content back and sends it to the web service coordinator.

4.3. Web Content Transformer

After the web service coordinator obtained the returned content from the corresponding web service component via dispatcher, it checks through the content and performs the follow operations:


5. Administration Sub-system

The GUI based administration sub-system provides system administrators with a convenient tool for the management of end users and web service components, as well as for the web aggregation service customizations. It is implemented in two versions, java application that is based on the WebEntrance server, and java applets that can be accessed from any java enabled web browser. Its major functions are:


6. Conclusion

We have described a web service integration system in this paper, the WebEntrance. It is to provide an aggregated web service by bringing other web service systems, we call them the web service components, into the service site. Although each web service component may have its own user registration and authentication facilities, the integrated service system performs user information and credential coordination activities and provides a single registration and login capability to its users. The aggregated web service provides convenience to users by providing all their interested services in one place, and accessing all the services by a single login. For a web service provider, the aggregation of web service components from other web sites can broaden his content, enrich his portfolio, and add attractiveness to his web site.

The system is implemented purely in java with java servlets [4] [5] [6] under a HTTP server, JDBC for repository or database access, and java applets for the administration sub-system.

The project will continue to add new features, e.g. an advertisement system, usage logs and reporting, billing/payment sub-system, etc..


Acknowledgments

This work was supported by the Telecommunications and Media Solutions Unit of IBM. I would like to thank my colleague Khalid Asad for his contribution to the conceptual architecture and implementation tools during his initial involvement to this project. I would like to thank Denny Zhang, Chris Demas and others for their implementation work. Also, I would like to thank Paul Grandin, Chris Demas, and Andrea Macaluso for proof reading of this paper. I especially would like to thank Frank Stein, my manager, for giving me the opportunity to lead this project.


References

[1] David Flanagan, Java in a Nutshell, O'Reilly & Associates, Inc., 1996.
[2] Patrick Niemeyer and Joshua Peck, Exploring Java, O'Reilly & Associates, Inc., 1996.
[3] Yew-Huey Liu, et al. "Web Server CGI Connection Manager/Cache Manager Interface", IBM Corp. 1997.
[4] "Overview of the Java HTTP Server Architecture", Sun Microsystem.
[5] "Java Servlet Application Programming Interface White Paper", Sun Microsystem.
[6] Netscape Enterprise Server Programmer's Guide for UNIX, Netscape Communications Corporation 1996.
[7] Brian Jepson, Java Database Programming, Wiley Computer Publishing, John Wiley & Sons, Inc., 1997.




Yan Zhao, Ph.D
6710 Rockledge Drive
Mail Drop A3
Bethesda, MD 20827

Phone: 301-803-6133
Fax: 301-803-6565
Email: zhaoy@vnet.ibm.com




Return to Top of Page
Return to Posters Index