-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
x-pack/filebeat/input/entityanalytics/provider/azuread: add registered owner/user handling #36092
Conversation
4d7445b
to
ebb32fa
Compare
ebb32fa
to
59d7674
Compare
57d9c9c
to
f8a4dd2
Compare
Pinging @elastic/security-external-integrations (Team:Security-External Integrations) |
run elasticsearch-ci/docs |
This pull request is now in conflicts. Could you fix it? 🙏
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes LGTM, but I see there are still some WIP/TODO items in the description. Did you have anything additional needing to be added (docs perhaps)?
Neglected to remove from the description. This is ready. |
…d owner/user handling
f8a4dd2
to
d24f281
Compare
@efd6 we are currently looking at splitting the data streams between user and device data within AzureAD. Can you confirm if a user is only ingesting device data, will they also get the registered owner and registered user data, or is that coming from the user data? |
@jamiehynds The provider exposes the entire data set as an atomic entity, so yes, if the integration is only asking for device data, the associated user data will still be present. Splitting it means that there will be duplicated storage of the state and duplicated work, so it might bu worth considering having something in the provider logic to deduplicate and points, i.e. if two requests are going to the same endpoint, one for users and one for devices, then only one kv store is created that is shared between the two. I'm not entirely sure how we would achieve this off the top of my head. |
I replied in a separate email, but another thought I had was adding toggles for enabling or disabling collection of user and device data. That way, if someone only wanted to collect user data, but not device data, they would turn off device collection. There would still only be one data stream. This assumes, of course, that device data isn't dependent on user data. I suppose if that were the case, then we could make user data mandatory and device data optional. |
It's entirely possible for us to dynamically determine which endpoints must be hit to satisfy the users' requests. The question that does arise though is how fine grained do we want to make this. I can see a case where a user wants only device, and no user information (even user information associated with devices), so we could conceivably have
How fine do we want this? |
@efd6 those 4 options seem to cover all/most scenarios without having to make it overly complex. We could set the default to 'all' and let users adjust from there if needed (I'd imagine the vast majority will want both users and devices). If we go with this approach, are changes required on the provider side, or does it fall towards the integration itself? |
Changes will be required on the provider side to allow this. |
@efd6 with FF tomorrow, how would the provider side changes impact the integration development? If these changes were part of 8.11, could Crest use an 8.11 snapshot to develop the integration early on in the release cycle? |
We can configure this however we want. If we default to "all", then addition of the configuration would be a non-breaking enhancement since the non-configured case would be what we are already doing. So, yes, they can build against the code that exists with a view to finer control in the future. |
Sounds good, thanks @efd6. I'll get Crest to start on the integration side using the "all" option and create an issue to focus on the granular controls so we can track separately. |
…d owner/user handling (elastic#36092)
What does this PR do?
Add support for including registered owner and registered user data to device documents.
Why is it important?
Part of the entity analytics roadmap.
Checklist
CHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.Author's Checklist
How to test this PR locally
Related issues
Use cases
Screenshots
Logs