From the German perspective:
- Ship clearly showing enemy identification markings, or else identificable as an Allied ship = valid target under any circumstance
- Non-German ship trying to disguise her real identity or not clearly showing her nationality = valid target
- Ship sailing in an enemy convoy (irrespective of her nationality) = valid target
- Ship obviously in/out-bound to/from a British port (irrespective of her nationality) = valid target
- Ship zigzagging, sailing at night with no lights, or putting in place any other evasive maneuver (irrespective of her nationality) = valid target
- Non-German armed merchant ship, or a merchant ship posing any other potential threat to the U-boat safety (irrespective of her nationality) = valid target
In short: if she looks as an enemy, she is an enemy; if she behaves as an enemy, she is an enemy; in case of doubt... she is an enemy. If she is an enemy, you shouldn't get any penalty from her sinking.
At least this is my personal interpretation of German prize rules, but having read many accounts of ship sinkings caused by U-boats, it should't be too far from reality