Github user merrimanr commented on the issue:

    https://github.com/apache/metron/pull/1111
  
    I really like this feature and think it's an important improvement.  This 
PR is a great start and I don't see any major architectural issues.  I've added 
some comments inline for the really minor issues.  I noticed that 
application.yml in metron-config-host and metron-alerts-host is different 
between the 2 but I can't think of any reason why.  I didn't comment directly 
but it's probably worth reviewing.
    
    There are some bigger issues I want to call out that are more complex.  
    
    I noticed there is a fairly significant gap with respect to groups and 
roles.  As far as I can tell it's not supported right now which is a regression 
from the JDBC solution currently in place.  I'm sure this is expected and will 
be solved in follow on tasks in this feature branch.  I do think we should set 
ourselves up to be able to do that in future PRs though.  
    
    In this PR, metron-ui-host and metron-rest use 2 different authentication 
mechanisms for testing.  I feel they should use the same one and we should 
eliminate JDBC or in memory authentication all together.  To do this we need to 
move this testing infrastructure (the EmbeddedLdap class and supporting files, 
Spring properties, etc) to metron-security.  This will allow us to switch REST 
to a common security model during testing, which is essentially what we're 
doing with this feature.  I've submitted a PR with an example of how we could 
do that (switching REST to embedded ldap isn't included yet and should be done 
later to avoid conflicts with other PRs).  This will allow us to eliminate 
redundant properties across modules but I think the biggest benefit is that our 
testing will more accurately match a real installation and allow us to catch 
bugs sooner.
    
    I think it's fair to say we need some documentation.  I would say at a 
minimum the metron-rest README should be updated to reflect the new 
authentication approach.  Eventually it would be nice to have architectural 
level documentation because there are several new components/frameworks being 
introduced here.  I have no problem with that being done in future PRs.
    
    I also noticed there are several TODOs.  We should at some point document 
these as follow on tasks so we have a clear understanding of what is expected 
to work in each PR. 


---

Reply via email to