Project

General

Profile

Actions

Task #259

closed

ReadOnly system

Added by Radek Tomiška over 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Radek Tomiška
Category:
Provisioning
Target version:
Start date:
01/04/2017
Due date:
% Done:

100%

Estimated time:
24.00 h
Owner:

Description

Implement readOnly system.

Requirements:
  • serialize provisioning operations - no provisioning operation will be executed on target system.
  • serialize provisioning operations could be run again or cancel in defined order.
  • should be combined with "brake" mechanism
  • ...
  • test and documentation
Actions #1

Updated by Radek Tomiška over 7 years ago

  • % Done changed from 0 to 50
Basic redonly system is implemented. Some features will be added after consultations:
  • account attributes will be saved too
  • processed provisioning operation will be archived in separate table
  • GuardedString will be removed from persistent state - ConfidentialProxyString will be added
  • mapping for provisioning will be simplified for one objectClass only
  • summary page with registered processors in definined order has to be created (for docs etc.).
Actions #2

Updated by Radek Tomiška over 7 years ago

  • % Done changed from 50 to 80

All features from previous comment and description are implemented. Only documentation in wiki remains.

Actions #3

Updated by Radek Tomiška over 7 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Radek Tomiška to Ondřej Kopr
  • % Done changed from 80 to 90
Actions #4

Updated by Ondřej Kopr over 7 years ago

Feedback
  • Check documentation for provisioning, nice and readable, i just found few funny czech words like "Disablovaný systém" :D,
  • documentation for events, very nice mechanism and documentation is awsome, thank for that,
  • events: work perfectly, i worked with them on password identity change, very simple to implement them, nice frontend agenda,
  • check interface EntityEventManager and their implementation - OK,
  • controller for EntityEvent - ok,
  • abstract class for entity event - ok,
  • every interfaces and methods in has javaDoc nice :D,
  • duplicit javaDoc for method isClosed in EntityEvent + some methods in DefaultEventContext, you collect + rows :D,

I will continue with feedback after fix problem with iterable trought Symbols - DynamicTaskDetail - _toFormData.

Actions #5

Updated by Ondřej Kopr over 7 years ago

Feedback continue:

try this usecase:

  • create new user on read only system - OK,
  • update user on read only system - OK,
  • delete user on read only system - OK,
  • complex test: (system was all time on readonly status) create user, update user (6x), remove user. In provisioning queue was all records (very NICE! detail with all required informations). Identity on system CzechIdMng is not found, in table and detail is still showloading (no recurrent request to BE - nice), but after finish batch from profisioning, identity from connected system (table) is exists on system, but not exists in system (ldap), is this acceptable? I will contact you after finish feedback,
  • i found another irregularity with batch (or provisioning? idk), after start batch on ldap system (create, update, delete identity), is throw exception :
    could not serialize; nested exception is org.hibernate.type.SerializationException: could not serialize
    
  • i thing this not error or bug, but unwilled state, i'll show you my steps in CzechIdMng,
  • i was created identity on idmczechidm, then added role with system (not readonly), do some updates, then put system to readonly and remove identity role with system, remove readonly and start batch. Batch complete with any errors, but identity still exists on system, is this willed state?

I will explain you all my steps and show state. Thank you for response.

I was found minor bug with my component ValidationMessage, this component show every error that throw. I will fix it in another task, please be patient, thank you :).

Actions #6

Updated by Ondřej Kopr over 7 years ago

  • Assignee changed from Ondřej Kopr to Radek Tomiška
Actions #7

Updated by Radek Tomiška about 7 years ago

  • Status changed from Needs feedback to In Progress
I've repaired review notes:
  • provisioning batch was not found for delete operations - is ok now
  • identityInfo hides loading, when identity is not found

Only issue with LDAP remain. Problem is in different uid, which is returning from LDAP. I need to react to uid change.

Actions #8

Updated by Radek Tomiška about 7 years ago

  • Status changed from In Progress to Needs feedback
  • Assignee changed from Radek Tomiška to Ondřej Kopr

I've added reference on system entity to provisioning operation queue, This change was little deeper, but every review notes are fixed now. Could you make a review and test, please?

Actions #9

Updated by Ondřej Kopr about 7 years ago

  • Status changed from Needs feedback to Resolved
  • Assignee changed from Ondřej Kopr to Radek Tomiška
  • % Done changed from 90 to 100

I found a mistake in connection between password policy and system. Fix this problem in task #263.

Feedback:
I will do some complete test:

  • remote ldap with remote connector - OK,
  • remote ldap with remote connector readOnly - OK,
  • remote db with remote connector - ok,
  • remote db with remote connecotr readonly - ok,
  • csv - OK,
  • csv readOnly - OK.

For CSV not working password provisioning, or synchronization.

For system ldap, db was tested password change on readonly - OK.

Works nice!

Actions #10

Updated by Radek Tomiška about 7 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF