Notification Service Azure Provider Changes

Merged Komal Makkar requested to merge service_account_accesstoken_generation into master

Description

The changes for Azure provider implementation for Notification service.

  • Functionally, the AAD JWT token generation is facilitated by the changes.
  • Caching of jwt token, tenant etc are added.
  • All DIs are done for the interfaces in notification-core.

Closes issue(s)

The changes that are planned for the same issue/feature, in different MRs.

  • The PubSub Authentication will be a different MR and is marked as TODO as of now
  • Role-based auth, basic authZ, and AuthZ (securityConfig) is to be added.

How to test / repro

  • Deploy the services locally run integration Tests

Changes include

  • Bugfix (non-breaking change that solves an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (change that is not backwards-compatible and/or changes current functionality)

Checklist

  • Added Unit Tests, wherever applicable.
  • Updated the Readme
  • Existing Tests pass
  • Verified functionality locally
  • Self Reviewed my code for formatting and complex business logic.

Other comments

  • Data partitioning in azure cosmos DB: currently data from all the tenants are being stored in a single cosmos DB instance, partitioned by the dataPartitionId of that tenant. This model might change in the future, and the changes will follow in the Notification Service.
  • Integration test config requires refactoring in the notification-core. The IT for notification-azure will consumable post that.

FYI @dkodeih @danielscholl

Edited by Komal Makkar

Merge request reports