Skip to content

[Story: ] As a Margo WFM Vendor, I would like to understand how Device Identity will be obtained and used in the REST based communication with a Margo Device Client #363

Description

@nilanjan-samajdar

Description

Margo Device Identity SUP proposes replacing device-id with a SVID, which can be obtained as part of x.509 certificate provided in the mTLS setup.

The following information needs to be captured for a reference implementation using the SPIRE framework for SPIFFE.

  1. How does SPIRE interact with the WFM Services ?
  • How do WFM Microservices extract the WFM Client Id for a mTLS/REST session with a Margo Device Agent ?
  • Is there a need for one of the WFM Microservices, acting as the API gateway, to forward either the x.509 certificate in X-Forwarded-Client-Cert HTTP header to the other Microservice
    OR
    the WFM Microservices, acting as the API gateway, extracts the SPIFFE Id and sends it in the x-spiffe-id HTTP Header to the other Microservice ?
  1. Is there any need for the Device Client to follow the 'attestation' procedure with a SPIRE Server ?
    The Device Identity / MIAF SUP provides a system for discovery and trust-bundle download.
    Hence with SPIRE, we would want to follow the discovery / trust-bundle download procedure & use the proposed endpoints instead of attestation. Is this possible ?
  2. How are the x.509 certificate lifecycle procedure - revocation, renewal and re-issuance performed for a device-agent deployed in production, does it take place in the mTLS connection ?
    With SPIRE, do we have a ready way to implement using the SPIRE client/mTLS, as required by MIAF SUP ?
    [Assuming that in PR2 phase, the enrollment phase happens "out-of-band" before the device and WFM are deployed, full support with automation of enrollment comes in PR3]

Expected Output :

  • Create a prototype to evaluate the answers to these questions using SPIRE and a mock Device-Client/WFM Server.
  • Create relevant ladder/flow diagram as design inputs

Raised by (email-id)

nilanjan.samajdar@capgemini.com

Type of Story

Prototyping

Related product requirements

Device Identity SUP

MIAF SUP

Definition of Done

In case of any prototyping activity, the evaluation, design and outcomes need to be documented
API updates need to be updated in swagger (or other) files

Estimated Story-points

10

Impacted artifacts

  • API Documentation (Swagger)
  • User Docmentation
  • Reference Implementation Code
  • Test Automation

Metadata

Metadata

Labels

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions