Rivet Logic and Crafter Profile
Rivet Logic plans to announce the release of Crafter Profile at MongoSV 2012. Crafter Profile is the latest addition to the open source Crafter Rivet web content management solution. MongoDB developers building Web CMS applications will find Crafter Profile especially useful.
Built on MongoDB, Crafter Profile will allow developers to easily add a scalable user repository and user profile management to their Java/Spring-based web applications. Nearly every website today requires user engagement features, so providing user login, extensible user profiles, and secure user authentication is a must-have feature in modern web applications. With Crafter Profile, MongoDB developers will get a free, open source, and easy to use application to deploy and extend as needed.
More technically, Crafter Profile provides a schema-extensible user repository for managing user accounts with arbitrary meta-data. It allows for local authentication and authorization or proxy authentication to existing authentication authorities. It also provides a robust ReST API.
The Crafter Profile open source project consists of a server, a Java-based client library for easy integration, a Spring-based Auth provider, and a basic sample administration application. The project also ships with a sample Spring app to help developers get up and running quickly.
Crafter Profile’s server is a headless Spring application backed by MongoDB. The ReST API to manage the services includes:
- Profile CRUD (create/read/update/delete)
- User activation/deactivation
- Addition/removal of arbitrary attributes
- Authentication and ticket management (per user)
- Authentication and ticket management (per client application that’s using the Profile server)
More info on the API is available here.
The Spring Auth provider allows easy integration to the Profile server when building Spring web applications. The sample administration application uses the ReST API to manage the users and their attributes. And the sample Spring application uses the Profile server to authenticate users before showing them privileged content and allows them to edit their profiles.
For managing user profiles, developers can get started with the default user profile attributes:
- UserName (required)
- Password (optional, used only if not proxy-ing to remote authentication authority)
- Role (optional, roles are defined and used by the application)
- Active (active/inactive)
- Created (datetime created)
- Modified (datetime last modified)
User profile Attributes may be easily extended with key-value pairs of arbitrary string:string user attributes, where the order is defined as a prefix for lexicographical sorting.
Crafter Profile fully leverages MongoDB for high performance and highly scalable website applications. Rivet Logic will be demonstrating Crafter Profile at MongoSV, along with the entire suite of Web CMS capabilities offered by the full Crafter Rivet solution. Crafter Profile will be released under the GPL v3 open source license.