SAP BTPCAPSAPUI5Build Work Zone

Manufacturer Analytics Portal

Architected a centralized secure entry point for external manufacturers, replacing legacy Power BI portals with a unified SAP BTP ecosystem.

Advanced Identity Federation

Implemented a seamless SSO experience by federating Okta with SAP Cloud Identity Services (IAS).

Mapped custom Okta attributes (Manufacturer_ID, Region_Code) to SAML assertions.

Configured SAP IAS as the proxy to pass these attributes into the BTP XSUAA service.

Implemented Attribute-Based Access Control (ABAC) in the CAP layer to restrict data visibility based on these passed attributes.

Identity Governance Suite: 3 Apps Integrated

The Process

Project Lifecycle

01
Discovery

Analyzed existing Power BI workflows and mapped data requirements for external manufacturer personas. Identified security gaps in cross-platform authentication.

02
Architecture

Designed a robust architecture using SAP BTP Cloud Foundry. Implemented SAP Build Work Zone and custom SAPUI5 applications for the frontend and SAP CAP (Node.js) for the service layer.

03
Development

Led a team to develop 15 custom SAPUI5/Fiori applications. Integrated SAP Datasphere for real-time analytics and implemented Okta for secure external identity management.

04
Deployment

Managed a phased rollout strategy reaching go-live in December 2025. Established CI/CD pipelines to ensure zero-downtime updates for the manufacturer community.

Technical Deep Dive

Project Details

Multi-Tenant Analytics Architecture
SAPUI5 Apps
Build Work Zone
SAP CAP Services
XSUAA
SAP IAS
Okta
Manufacturer Data

Built on SAP BTP, this architecture enables secure, multi-tenant access...

javascript
Implementation
// CAP CDS Service for Manufacturer Analytics
  service ManufacturerService @(path: '/api/v1/analytics') {
    @readonly
    entity SalesPerformance as select from db.Sales {
      key ID,
      manufacturerName,
      productCategory,
      monthlyRevenue,
      growthPercentage,
      virtual marginIndicator : String
    };
  
    annotate SalesPerformance with @(
      requires: 'authenticated-user',
      restrict: [{ grant: 'READ', where: 'manufacturerId = $user.id' }]
    );
  }

Measurable Outcomes

Results

Key Impact

22 Custom Apps Deployed

22

Applications Built

+40%

User Adoption

40

Legacy Portals Retired