Visit the site

Visit the site

Organizations Involved

In this comprehensive case study, we explore a real-world implementation that addresses the critical need for secure REST API authentication within the context of a healthcare organization.

With a focus on optimizing data access, this project centres around the integration of a third-party provider authentication method to safeguard sensitive healthcare information. By seamlessly connecting a Drupal site, an Azure Identity Provider, and a non-Drupal application, the organization aimed to strike a balance between data security, user convenience, and streamlined application interoperability.

About the project

Requirements:

The healthcare organization required a robust and secure method to grant access to its valuable healthcare data. This included patient records and general healthcare information hosted on the Drupal site. 

The key objectives were to:

  • Implement secure REST API communication between the Drupal site and a non-Drupal AI-based patient record processing application (App 1).

  • Enable Single Sign-On (SSO) through Azure Identity Provider for streamlined user authentication.

  • Ensure that the non-Drupal AI application (App 1) could access the Drupal site's APIs securely.

Implementation:

The implementation of the solution involved the collaboration of three key entities: the Drupal site, Azure Identity Provider, and the non-Drupal AI application (App 1).

SSO Setup:

  • With the miniOrange OAuth Client Module, the Drupal site was configured to communicate with the Azure Identity Provider. This allowed users to authenticate themselves once, granting them access to both the Drupal site and the non-Drupal AI application.

User Authentication Flow:

  • Upon successful SSO, the OAuth Client module grants a unique access token for the authenticated user with the help of the OAuth Provider (Azure). This token served as a key for subsequent authentication requests.

API Authentication with miniOrange REST API Authentication Module:

  • With the SSO mechanism in place, users were granted a seamless experience when accessing both the Drupal site and the AI application (App 1).

  • When the user initiated a request from App 1 to access the Drupal site's APIs, the generated access token was included in the request headers.

Token Validation and Authentication:

  • The miniOrange REST API Authentication Module played a pivotal role in this step. It intercepted incoming API requests and extracted the access token from the headers.

  • The module then performed a series of validation checks to ensure the token's authenticity, integrity, and validity 

Access Control and Resource Authorization:

  • If the user was authorized, the module granted access to the requested resource, allowing App 1 to interact with the Drupal site's APIs securely.

  • If the user lacked the required permissions or the token validation failed, the module denied access, ensuring that only authenticated and authorized users could access the sensitive healthcare data.

Conclusion:

By implementing a well-integrated and secure REST API authentication solution, the healthcare organization successfully streamlined access to critical healthcare data. The combination of Drupal's extensibility, Azure Identity Provider's authentication capabilities, and the miniOrange modules' seamless integration empowered the organization to achieve its goals of enhanced security, efficient user authentication, and controlled API access. This case study highlights the importance of utilizing third-party authentication providers and Drupal's capabilities to create a secure and user-friendly ecosystem for healthcare data management.

As the healthcare industry continues to evolve, robust authentication and data access solutions like the one discussed in this case study will remain crucial in ensuring the confidentiality, integrity, and availability of sensitive patient information.
 

Why Drupal was chosen

Drupal's modular architecture, extensibility, and user management capabilities made it an ideal choice for the healthcare organization's data management needs.

The integration of miniOrange's modules seamlessly complemented Drupal's strengths, allowing the organization to meet its security and authentication goals.

Technical Specifications