generated from camaraproject/Template_API_Repository
-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
Problem description
lack of a lifecycle status for the dedicated network accesses (DN_A)Expected behavior
add lifecycle in DN_A like: Pending, Active, Inactive, Suspended, Revoked, Failed, Decommissioned. It could be done adding in the yaml file a new component like the one managing network statu in dedicated-network.yaml file:AccessNetworkStatus:
description: |
The current status of the access request for the dedicated network. The status can be one of the following:
* `PENDING` - The access is requested, but not yet approved or provisioned. Possible Transitions: ACTIVE (if approved). FAILED (if the provisioning process encounters an error). REVOKED (if the request is explicitly denied).
* `ACTIVE` - The access is fully approved and currently enabled. Possible Transitions: INACTIVE (manual or automated deactivation after inactivity). SUSPENDED (temporary suspension due to security or billing issues). REVOKED (permanent withdrawal of access). DECOMMISSIONED (final retirement of access, often after a lifecycle end).
* `INACTIVE` - The access is no longer actively used and is pending deletion. Possible Transitions: ACTIVE (reactivated if needed). DECOMMISSIONED (if truly obsolete and removed). REVOKED (if a decision is made to deny future access).
* `SUSPENDED` - The access is temporarily disabled (e.g., for maintenance or security reasons) but not permanently revoked. Possible Transitions: ACTIVE (restored if the issue is resolved). REVOKED (if an investigation concludes access should be withdrawn). DECOMMISSIONED (if the access is ultimately retired and cleaned up).
* `REVOKED` - The access is permanently withdrawn; reactivation requires a new request.
* `FAILED` - The provisioning or approval process encountered an error or was explicitly rejected. Possible Transitions: PENDING (in some cases, if an automated retry is possible).
* `DECOMMISSIONED` - The access has reached its end of life, with all related resources cleaned up. Reactivation is not possible.
type: string
enum:
- PENDING
- ACTIVE
- INACTIVE
- SUSPENDED
- REVOKED
- FAILED
- DECOMMISSIONED
Alternative solution
without a state in DN_A we have a device which could be in or out so only with a binary alternative. This could raise concerns related to security and operation, user experience...Additional context
Example of concerns:Potential security concerns:
- unauthorized access:
if a device is either “authorized” or “not,” there is limited granularity to manage security. For example, if a device should be blocked temporarily (e.g., suspected compromise, unusual behavior), security rules might force a permanent removal, losing any future ability to re-enable it securely. Allowing a “quarantine” approach may avoid this issue. - security loopholes:
If a device that was “off” (when it should have been simply "revoked"), it could potentially be re-added, without passing thorough the correct process and related auditing (i.e. identifying correctly the reason for removal). - data protection:
a device that was simply turned “off” might still hold sensitive data or keys, while a “decommissioned” or “expired” state, may trigger an automatic process to remove or rotate credentials, keys, or data backups…
Potential operational concerns:
- Downtime & Availability: as for the network itself, an incomplete transaction may affect the service context for the device.
- Overload & Inefficiency: if devices can be in inactive or suspended states when not in use, we may prevent unnecessary resource consumption
- Scalability: a single binary state leads to repeated manual interventions and potential mistakes when the number of devices scales, automated transitions between states may streamline operation and reduce manual activities.
- decommissioned hardware management: a dedicate status can handle the need to manage the end of support for a device.
User transparency:
When users or administrators see only two states, the “off” state by itself do not clarify why or what is needed to get it back “on”, but adding distinct states like pending, failed, expired provides transparent feedback about why a device is not active (making easier the troubleshooting) and the lifecycle can drive “how” it can be reactivated.
Metadata
Metadata
Assignees
Labels
No labels