Enforce encapsulation

You need to expose some data from a class. The data can be read by other types but can be changed only by derived types. What should you use?

A protected property with a public get modifier
A protected field
A protected property
A public property with a protected set modifier