Administrators & cloud service providers
Open Source communities & application developers
Data Analytic development framework
AAAaaS is a software component that provides a set of libraries and tools for application developers in need of Authentication, Authorization and Accounting (AAA) services within the scope of their applications (e.g. to authenticate and authorize the end-users of that (or those) application(s).
These AAA services can be deployed and used directly by the software developer, per application or per application set. Eventually, they may also be provided “as-a-service” by an external entity – although this is not the expected usage model in the scope of BIGSEA.
The software provides the general functionalities of traditional AAA and Identity and Access Management (IAM) services, including interfacing with external identity providers, but is deployable and manageable according with cloud principles such as scalability, elasticity and resilience: service instances are deployed in line to the application needs; scale-up/scale-down operations; and the lifecycle management is performed using cloud paradigms.
AAAaaS was developed to be used in the EUBra-BIGSEA use cases. More specifically, it was designed to be used in scenarios where application developers need to use infrastructure-independent AAA and IAM services for their own applications. AAAaaS is also available to the community to be used in other contexts and other sectors.
Developers who need to develop a new cloud-based application which requires authentication of the application users. Instead of adopting a classic AAA library, which will not dynamically scale and fit into the cloud paradigm, they can adopt AAAaaS as its AAA component, in order to authenticate its end users and manage related authorizations for access into the application's data and functionalities. Developers can therefore rely on a ready-to-use service for implementing all the required AAA services within the scope of its service platform, keeping all the information about its users within the boundaries if his application. Optionally, this service and user information can be shared across developers' multiple applications, with the inherent advantages of having a single service point for all necessary AAA services. Moreover, in certain scenarios this AAA services may be shared across multiple domains (e.g. applications from multiple providers) without the need to redevelop the AAA components.
Links to current releases:
GitHub Repository for Docker-compose version of service
GitHub Repository for separate Docker containers’ builds
Docker Hub separate Docker images
Links to documentation:
Deliverable D6.2: AAA provisioning services and mechanisms
GitHub and Docker Hubs pages
The application developer needs to be familiar with AAA functionalities (in order to configure the service according to the needs of his/her application) and will need to use the AAAaaS service management API. Docker and MongoDB experience useful for service management and deployment.
AAAaaS is freely available as open source.
The possible costs associated with running the service are related with SSL certificates. Those can be (optionally) turned to zero at the cost of using free certificates (for the HTTPS protocol).
No pre-requirements, IPR or software dependencies apply.
Paulo Silva: email@example.com
View related publications
--> P. Silva et al., Security and Privacy Solutions in a Europa-Brazil Context for Data Analytics in the Cloud, Security and Privacy Research in Brazil, IEEE Security & Privacy (2018)
--> A. Alic et al., BIGSEA: A Big Data analytics platform for public transportation information, Future Generation Computer Systems, Elsevier (2018)