You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

References

CPS-2249 - Getting issue details... STATUS  

Assumptions


AssumptionNotesSign-off
1

Scope:

  •  CPS-E-05
    • Update
    • Create
    • Delete
This does not affect (bulk/batch) Read

 

2Conflict Management Interface uses FDNConflict Management can supports ANY format the Altenate ID can support (FDNs and/or URI-FDNs)

 

Issues & Decisions


IssueNotes Decision
1

Uplift Ericsson source code (need permission)

CPS not allowed to lift // proprietary codes, we need to use pseudo code Gergely/team to support CPS with these codes
2

Implement in REST or Service Layer ?

This is currently implemented as an in the Service layer in // 
3

Publish public


Conflict Interface as part of NCMP (Concerns new generic interface)? 

NCMP shall own and document.
4

Could we make this more generic to suit non-conflict-management use i.e. tbac...

Agreed to make it more generic to suit ALL the use cases 
5Private properties are used to get FDN at the moment.

Will // provide us with Alternatid? Opensource does not support private property Peter Turcsanyi to revert TBC


6NCMP to Support New 3GPP sync single FDN request

CPS-1992  - When delivered, this should also support conflict management & TBC -Kolawole and Gerard

7Legacy and ongoing bulk/batch interface (dataJobs CPS-1964) are not in scope



8Name for more generic interfaceSuggestion: External Validation


9External Validation Request formatPOST operation, all parameters in body, URL ?


10Enable/service name discoveryconfig parameter with service name/address.
Blank to disable ?


11case sensitvity of parameters (payloadType, decsision etc.)e.g. accept 'allow', 'Allow', 'ALLOW' or only acept only oen well define case senistive variation and anything else is a error scenario?!


Requirements

Functional: new generic 'External Validation' REST interface 

This interface wil NOT be implemented by CPS team except a stub for testing purposes


InterfaceRequirementAdditional InformationSignoff
1NEW

Documentation

NCMP own and clearly document interface using OpenAPI and RTD

2NEW

Input Parameters:

  • Bearer Token (header information?)
  • Payloadtype 
  • Decisiontype
  • Payload
    • resourceIdentifier
    • targetFdn
    • changeRequest

Payloadtype can only be 'CM_Write' for now

Payloadtype can only be 'Allow' for now

Exact Payload to be defined during study but should be well defined and cannot depend on Java interface (even if it is the same now)

3NEW

Output  Parameters;

  • Decision (enum: "allow", "deny")
  • Message - Should return a 409. Standard HTTP response
  • Decision id (String)

This is a New Generic interface that can support 'confllict handling'. 

Functional: CPS Impacts


InterfaceRequirementAdditional InformationSignoff
1CPS-E-05

Write operations are intercepted and validated using the new external service.
No effect on existing behavior if the result is 'Allow'



2CPS-E-05When the External validition is negative NCMP REST Response should be '409 Conflict'.  The HTTP status message should contain the message and decision id from the external validation service.NCMP interface validation shall be done before the external validation (Conflict management)

Error Handling


ScenarioExpected BehaviorNotes
1External validation service does not respond (in time)configurable default answer
2unrecognized response from External Validation

Characteristics


ParameterExpectationNotesSignoff
1



2



3



Out of Scope

  1. Batch (bulk) interface methods and Execute a data operation for group of cm handle ids
  2. Data job interface

Solution Proposal

External Validation REST Interface

URI

TBC

Input Parameters


NameParentTypeExampleNotes
1Bearerheader?String (encoded?)
required for tracking/ (future)authentication
2payloadTypebodyString CM_Write'CM_Write' currently, only support value
3

DecisionType

bodyStringAllow'Allow' currently, only support value 
4

payload

bodyObject

5

targetFdn

payloadString
FDN to 'CM-Handle' ?!
6

resourceIdentifer

payloadString
Remainder of FDN ?
7

changeRequest

payloadString
the change value

Output Parameters


NameParentTypeExampleNotes
1decisionIdbodyString
UID
2decisionbodyStringDenycurrently only 'Allow' and 'Deny' are supported
(case sensitive ?!)
3messagebodyString 


  • No labels