Well, at risk of restating, F1 itself cannot object. I’m talking more legally here than morally though – so the argument has little moral value.
The people who run it might well object, but F1, the brand, the genre, the contract party, cannot object without a severe financial penalty (likely to be huge if the contract is breached). It can only object contractually if there is a clause that allows it to (i.e. a force majeure clause). Thats how GP2 was cancelled, as there is no (real) financial penalty from the cancellation.
Bernie and F1 won’t risk the financial penalty unless they are sure that the force majeure will be activated in the contract – and right now they aren’t. Morally they may wish to, but contractually they are obliged. The sums of money involved are far too high for it to be a black and white case.
In your extreme scenarios, a force majeure would be activated. In the GP2 scenario yesterday, it was activated. But F1 cannot say right now whether it will be at Bahrain because there is no contractual way of doing so. This, I believe is why we won’t hear until another 2 weeks or so whether the grand prix will go ahead.
This then leads to the point that if the race itself does go ahead, then its possible that no-one will actually want to be there, but are instead contractually obliged. In that case, F1 wouldn’t be the problem, thus a boycott against the values of F1 would be for the wrong cause, as they wouldn’t be the issue.
Of course I may be wrong, but this is how I see it.