Entendendo o parâmetro "SecurityAction" do .NET para permissões

Alguém pode explicar o significado e os propósitos dos valores para a enumeração SecurityAction?

A página do MSDN não é muito clara. Ele diz que o LinkDemand ocorre na compilação just-in-time, enquanto o Demand ocorre no tempo de execução.

Por que a distinção e em quais situações eu usaria o LinkDemand em vez de Demand?

Da mesma forma, quais são os casos de uso de outros valores interessantes como InheritenceDemand, Assert e PermitOnly.

questionAnswers(1)

yourAnswerToTheQuestion