You can add constraints and disable them as required to free up joints. The rigid constraint can be toggled with another set to achieve what you desire. So you would have two constraint sets one a kinematic joint with at least one DOF and a second rigid (fixed) set you can then toggle which one is active to achieve your objective. In the constraint UI you will see the option to enable/disable constraints.
If you are looking to resolve it to specific DOF then you would need to create a custom set and use the same approach.