eclipse-tractusx / sig-release

https://eclipse-tractusx.github.io/sig-release
Apache License 2.0
9 stars 10 forks source link

Automatic Credential Renewal/Rotation #291

Open jjeroch opened 1 year ago

jjeroch commented 1 year ago

Summary:

Development of an automated backend logic inside the issuer component for the re-issuance of BPNL and Membership credentials prior to their expiration. The system will incorporate a scheduled job to run nightly, identifying credentials expiring the next day and re-issuing them automatically, while adhering to defined business rules and workflows.

Components:

1. Scheduled Job Implementation

2. Automatic Re-Issuance Logic

3. Data Privacy and Security Compliance

4. Documentation Update

5. Integration with Existing Systems


Test Cases

Scheduled Job Implementation Test Cases

  1. TC1: Job Schedule Execution

    • Verify that the scheduled job runs at the specified nightly time without fail.
  2. TC2: Credential Expiry Identification

    • Validate that the job accurately identifies all credentials due to expire the next day.

Automatic Re-Issuance Logic Test Cases

  1. TC3: Re-Issuance Trigger

    • Confirm that the re-issuance process triggers automatically for credentials expiring the next day.
  2. TC4: Approval Workflow Integration

    • Test that the renewal process correctly follows the predefined approval workflows.
  3. TC5: Renewal Confirmation

    • Check that users receive confirmation of their credential renewal.
  4. TC6: Load Testing

    • Perform load testing to ensure the system can handle a high number of renewals simultaneously.

Data Privacy and Security Compliance Test Cases

  1. TC8: Access Control Checks

    • Verify that only authorized personnel/systems have access to the re-issuance process.
  2. TC9: Audit Log Accuracy

    • Check that all actions taken by the re-issuance process are accurately logged for audit purposes.

Milestones:

  1. Design phase completion.
  2. Development of scheduled job and re-issuance logic.
  3. Initial round of testing (unit and integration).
  4. Documentation updates.
  5. Security compliance audit.
  6. Final testing with edge cases and failure modes.
  7. Deployment to production.
  8. Monitoring phase and post-deployment review.

Additional information

stephanbcbauer commented 5 months ago

Hello @jjeroch , @evegufy

Since the feature is a 24.05 feature and the development phase for 24.08 is coming to an end, we need a status on the feature. Can you please update the status?

If you need any clarification, please get in touch, thank you very much.

Stephan

jjeroch commented 4 months ago

Feature moved to next PI. Implementation was already approved and is supposed to be available by August. Working on the details. Ownership: stays with me; Evelyn and Max will take over the feature review, maintenance, etc.

Phil91 commented 2 months ago

@jjeroch we have one huge problem which currently isn't solved. To be able to automatically retrigger the creation we need the credentials of the wallet for the holder. We do have the issuer wallet credential so the reissuance itself isn't a problem. But the import into the holder wallet can't be made since the current process deletes the credentials to be able to communicate with the holder wallet. We could change the process in a way that we don't delete the credential information from the database, which would still leave us with the existing credentials being not existing in the database...

I guess it would make sense to align in a meeting on how that should be solved?

@MaximilianHauer fyi

MaximilianHauer commented 1 month ago

refinement day feedback: