Is the concern about implementation or UI clarity? I can't see why a "Select Full Row" option should be any harder to implement than the rest.
A sugesstion might be to somehow highlight the last column a bit differently than the rest since it performs a function somewhat larger than the rest too. I'd almost be tempted to make that "Select Full Row" a button than a check box. The button when pressed could indeed select every option and then turn itself into a "Deselect Full Row" button.
If you like you might also provide a button that does "Invert All" if it makes sense in your scenario.
How this changes your implementation I do not know; but as UI I like this better. Functionally, the button can thus change multiple settings whereas a tick box is always unique to controlling it's own Column. I feel that's a neater separation.
The risk otherwise is something like this scenario: User wants to verify that no one has a "Create" permission. So he visually scans Column One and sees no tick marks. He's lulled into a sense of safety whereas some users might have that last column ticked.