1 / 17

A Distributive Server

Alberto Pareja-Lecaros. A Distributive Server. Introduction. Uses of distributive computing - High powered applications - Ever-expanding server so there’s never a limit - Speed RMI, JAAS, Kerberos will be used exclusively with JAVA. JAAS (JAVA Authentication and Authorization Service).

rhudgins
Download Presentation

A Distributive Server

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Alberto Pareja-Lecaros A Distributive Server

  2. Introduction • Uses of distributive computing -High powered applications - Ever-expanding server so there’s never a limit - Speed • RMI, JAAS, Kerberos will be used exclusively with JAVA

  3. JAAS (JAVA Authentication and Authorization Service)

  4. Authentication • Check client exists • Make sure client has sufficient access (passwords, etc.)

  5. Authorization • Determine credentials of authenticated client (permissions, etc.) • Allow client access only to what it has permission to access • Sample shows allowing to find java.home property, root.home property, and allowing to determine whether a file exists in the directory

  6. Why useful? • JAAS uses security protocol Kerberos • Allows for different users with different access (admins, regular users) • Allows the banning of users

  7. RMI (Remote Method Invocation)

  8. What’s RMI? • Allows remote execution of code • Provides security of code • Provides for permissions needed to access the code

  9. Why Useful? • Allows clients to become servers by executing remote server code (essential for distributive computing) • Allows execution to be done in a secure environment • Integrated into JAVA so its easy to use

  10. RMI vs Serializing over the stream • RMI is much faster • No huge chunks of data are being sent over the network • No copies of objects, objects are accessed remotely • Serializing has its problems

  11. Kerberos

  12. What’s Kerberos? • Quite simply, it’s a security protocol • Allows for protection of clients/servers • Keeps sensitive information encrypted and never stored/transmitted

  13. Why useful? • Helps prevent hacking into the client/server • Allows for safe connections using JAAS • Provides safety when allowing clients to access remote code with RMI

  14. Results so far • One connection to server per client • Set permissions of clients via a permission file • Never send passwords over a stream (Let Kerberos encrypt it) • Main server holds all information and relays clients to their designated server (determined by the main server) • Clients only connect to the main server directly

  15. Current design • Game Client connects to a Game Server • A Main Server keeps track of all Game Servers in a Server Map. • Game Servers listen for Game Clients and connects them • Game Clients send objects called Messages which tells the Server what to execute • The Server sends back any execution results

  16. Messages • Objects containing different types of data for the server to interpret • Server takes these messages and executes them depending on the message type

  17. Darkstar • A new client/server library released by Sun • Connections handled transparently • Different levels of security (authorization, authentication, etc.) • Fast, reliable way of handling client server applications • Extremely new library (3/28/06) and will be implemented to speed up design

More Related