[
https://issues.apache.org/jira/browse/SLING-5795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15422406#comment-15422406
]
angela commented on SLING-5795:
-------------------------------
to me these are separate things:
- one starting the discussion if have a dedicated, public API
- one for the need to manipulate individual auth-requirement entries
if - as you originally stated - a separate API was not needed (SLING-5792), I
would still had the need for this issue (SLING-5795). But if SLING-5792 gets
addressed and the {{SlingAuthenticator}} is consequently adjusted to allow for
SLING-5795... I won't complain.... So, I don't have a strong preference if that
gets resolved as duplicate or as fixed/implemented-by.
> Allow for adding/removing individual AuthenticationRequirementHolder entries
> ----------------------------------------------------------------------------
>
> Key: SLING-5795
> URL: https://issues.apache.org/jira/browse/SLING-5795
> Project: Sling
> Issue Type: Sub-task
> Components: Authentication
> Reporter: angela
>
> Today the {{SlingAuthenticator}} comes with a
> {{SlingAuthenticatorServiceListener}}, that listens for all services that are
> registered with an {{AuthConstants.AUTH_REQUIREMENTS}} property. This allows
> for arbitrary services to extend the list of authentication requirements
> originally intended to be configured with the {{SlingAuthenticatior}}.
> The implementation consequently requires those services to provide their full
> list of auth-requirements: this not only forces the services to recompute
> that information but also forces the {{SlingAuthenticatorServiceListener}} to
> process the whole information upon every single change (see
> {{SlingAuthenticatorServiceListener.addService}} and
> {{SlingAuthenticatorServiceListener.removeService}}, which also includes an
> update of the {{PathBasedHolderCache}}.
> At a Adobe we make use of this ability in a service that may contain several
> thousand requirement entries which in addition are prone to frequent changes,
> which IMO is not super-optimal with the implementation at hand.
> This assessment is not yet backed with decent performance testing, but based
> on what I found while trying to rewrite that particular service to address
> known issues.
> To summarize: What I have been looking for was the ability to inform the
> listener about a single entry that would need to be added or removed from the
> list of auth-requirements collected (and registered) by my service, without
> having to compute (or cache) the complete list and without having all items
> associated with my service being processed over and over again.
> Maybe envisioning SLING-5792 would offer the opportunity to also reconsider
> this wish.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)