[DOCS-11101] Docs for SERVER-28260: Create a killAnyCursor privilege Created: 08/Dec/17  Updated: 29/Oct/23  Resolved: 21/Jun/18

Status: Closed
Project: Documentation
Component/s: None
Affects Version/s: None
Fix Version/s: 3.7.1, 3.6.3

Type: Task Priority: Major - P3
Reporter: Kay Kim (Inactive) Assignee: Allison Reinheimer Moore
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
documents SERVER-28260 Create a killAnyCursor privilege Closed
Related
related to DOCS-12221 Docs for SERVER-36829: Cursors should... Closed
Participants:
Days since reply: 5 years, 33 weeks, 6 days ago
Epic Link: DOCS: 4.0 Server

 Description   

Scope of changes:

This change adds authorization checks to the killCursors command.
Previously, any user could kill any cursor provided that they knew (or could guess) the cursor ID. With this change, the cursor must have been created by at least one of the currently authenticated users, otherwise killing the cursor will fail.

Additionally, previous behavior would always result in an "ok" response with detail in the "cursorsKilled", "cursorsAlive", "cursorsNotFound" fields. With this change, authorization is checked before any kills are executed, and if any of the authorization checks fails, then no kills will occur and the response will indicate failure (ErrorCodes::Unauthorized). Similarly, if a cursor can not be found during an authorization check, then the entire transaction will fail without any kills being carried out.

Drivers should be aware of the change in failure modes.
Documentation should reflect the additional coAuthorization checks.

Impact to other docs outside of this product:

MVP:

Resources:

Engineering Ticket Description:

A ClientCursor is associated with the set of users that were authenticated when it was created.
A killCursors should only succeed if the intersection of currently authenticated users and the set of users associated with the ClientCursor is nonempty (or the set of users associated with the ClientCursor is empty), or if the user has the killAnyCursor privilege for that collection.



 Comments   
Comment by Githook User [ 21/Jun/18 ]

Author:

{'username': 'schmalliso', 'name': 'Allison Reinheimer Moore', 'email': 'allison.moore@10gen.com'}

Message: DOCS-11101: add killAnyCursor privilege, clarify coAuthz behaviour
Branch: v3.6
https://github.com/mongodb/docs/commit/4075456ab1185fd7905fb75bbcd0828850969f22

Comment by Githook User [ 21/Jun/18 ]

Author:

{'username': 'schmalliso', 'name': 'Allison Reinheimer Moore', 'email': 'allison.moore@10gen.com'}

Message: DOCS-11101: add killAnyCursor privilege, clarify coAuthz behaviour
Branch: master
https://github.com/mongodb/docs/commit/02ae765abeaff98ded59b1e45e44b27ad2e32494

Generated at Thu Feb 08 08:02:03 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.