Jump to content


Check out our Community Blogs

Register and join over 40,000 other developers!


Recent Status Updates

View All Updates

Photo
- - - - -

Implement server - choice of platform and authentication?

android authentication

  • Please log in to reply
2 replies to this topic

#1 svante

svante

    CC Lurker

  • Just Joined
  • Pip
  • 1 posts

Posted 13 December 2010 - 07:04 AM

Hi.

I am developing a client-server application in my spare time. Can anyone help me with suggestions:
  • What implementation platform/language to use.
  • How to authenticate the users.

About me
  • I am from Sweden :-)
  • I prefer a Linux server.
  • I know Apache, Perl, some RubyOnRails, C/C++, C#, JavaSE, Java Servlets, JavaEE (some old knowledge), MySQL, XML.
  • I don't know so much about: SOAP, AJAX, Spring, WebServices, Microsoft products (except Visual Studio and Windows)

The server
Needed actions:
  • add/remove users: [name, password, access-rights, user details, current status]
  • authenticate user
  • change user record details
  • receive files: store in users area, and commit. 3-100 files in a named "file-collection"
  • send user his own user-details
  • send user a listing of file-collections (own or other users)
  • send user a file-collection
  • report to admin e.g. "bad behavior"
  • report to user e.g. weekly activity or mail confirmations
  • scalable up to 500 users

Suggestions:
  • LDAP.
  • MySQL for users data.
  • MySQL for files uploaded by user (too much probably).
  • User records in files.
  • Uploaded user files stored as files.
  • Client-server communication with SOAP.
  • RubyOnRails for server implementation.
  • Java Servlets for server implementation.
  • JaveEE, ejb 3.0 for server implementation (user records as entity beans).
  • Apache and mod_perl.

The clients
Today no client has any network interface. List of clients:
  • Windows client, in C# and C++ (ready)
  • iPhone client, in Objective-C and C++ (started)
  • Mac OS X client, in Objective-C and C++ (future goal)
  • Android client, in Java (future goal)


/Svante
  • 0

#2 null

null

    CC Addict

  • Advanced Member
  • PipPipPipPipPip
  • 128 posts

Posted 01 June 2011 - 11:38 PM

For authentication of users you should use some sort of digital signature (like an RSA signature). The program should contact the server by HTTPS as it is more secure.
  • 0

#3 N4G

N4G

    CC Lurker

  • Just Joined
  • Pip
  • 2 posts

Posted 10 June 2011 - 12:54 AM

Platform: Linux is prefered. Most of people running on Linux. Windows Server 2008 license price is around 800usd so Linux platform can help somebody to save some money.
However there is a luck of good IDEs for Linux ( as for me ) so I would like to start on Windows and then port the things to Linux after have server working.

Lenguage: C++

Authtification: it depends on your product, under what kind of license are you going to disrtribute etc. There is OpenSSL lib - but again it makes you GPL. If you are willing to ellaborate and be independent (which is important) you can implement some key exchange protocol , hook encription and signatures.
  • 0





Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download