<div dir="ltr">First, I want to clarify that, I am not against what you said<br>To release inventory, asset server become independent ones is also what I have been working on.<br><br>I am just trying to introduce my thoughts:<br>
>>[solution:]<br>>>* add a new table for inventoryserver, 2 fields, useruuid, userserver_url, everytime inventoryserver<br> >>  extract "session_id", "user_id" from the request, get "userserver_url" by "user_id", then check the<br>
>>  identity of "user_id" from "userserver_url" (call check_auth_session)<br>>I
really think rather than the inventory server calling a authenticate
method on the user server. That<br>>the user server should send a sessionid
to the inventory server when a new login happens. I guess<br>>your idea of
the userserver_url was something silmilar in that the userserver would
update it when<br>>a user logs in? Otherwise if it was just "hardcoded" in
the db then it wouldn't solve anything.<br><br>sorry for the lack of explanation of the new table, temporary let me call it "userserver_dictionary".<br>* "userserver_dictionary" is a table always together with inventoryfolers, inventoryitems<br>
* "userserver_dictionary" has 2 column: user_id pkey, userserver_url<br>// user registration<br>when a new user registered at a GridService G1, the user will possibly have its account on G1's<br>userserver U1, then, no matter which inventoryserver the user is using(or going to use), assume it is called InvN,<br>
InvN's "userserver_dictionary" would be added 1 record <"uid", U1's url>,<br>// user login to VW<br>* user get authentication at U1, get "session_id"<br>* user login into a regionserver, regionserver gets user's profile and extract user's inventoryserver InvN from its profile.<br>
* regionserver requests getInventory("session_id", user.uuid) from InvN.<br>* InvN gets "U1's url" by user.uuid from "userserver_dictionary"<br>* InvN requests check_auth_session("session_id", user.uuid) from "U1's url"<br>
//<br>in this case, dose InvN satisfies what you want ?<br>* InvN is separate from any other server<br>* InvN is independent, not rely on any userserver, it pull identity under user's specification(get "userserver_url" by uuid)<br>
* InvN can store users from different gridsevices<br><br>-- <br>Lulurun
</div>