In order for a user to take ownership of an object through the "Take ownership of the selected object" checkbox in an object's Security settings the user must have the following privileges and permissions
Here is an example of a user, test1, that is taking ownership of a report in Developer.
Test1 has been granted the privilege to "Create application objects" and the ACL permissions for Browse, Write, and Control, as seen below:

Notice in the next screenshot that the "Take ownership of the selected object" checkbox is able to be interacted with/checked by the user based on these privileges and permissions:

Also, take note that the ownership successfully changes to test1 when hitting OK after checking "Take ownership of the selected object"

If the privilege to "Create application objects" is revoked, and if test1 attempts to take ownership, then the following warning message is displayed:

You do not have access privileges to create objects of type 'Report Definition'.
If the ACL permissions differ from either Full Control or do not contain the custom permissions to grant Browse, Write, and Control, then the "Take ownership of the selected object" will be grayed out.

Therefore, if a user needs to be able to take ownership of an object, then ensure that (1) the user has the ability to create objects of that type, and that (2) the user is granted either Full Control or the custom permissions to Browse, Write, and Control the object in which the user wants to take ownership.