What exactly are you trying to store in flash? Application updates? Configuration data? Security keys?
It's definitely possible to rewrite the program flash memory, bootloaders do that to update the system software all the time. It is not possible (at least as far as anyone outside of ST knows, probably) to rewrite any of system flash where the factory bootloaders are stored.
All of the flash available for you to write is basically the same. No part of it is more or less secure than any other part. You can use the security features of the MCU (lock bits) to prevent others from reading out the memory, but if someone wants to copy your software bad enough these features can eventually be defeated.
You can also use part of the internal flash memory for storing configuration, including device keys, in place of EEPROM or something. You would need to make sure that you don't accidentally overwrite that part of memory when doing a software update, and parts with lots of flash usually have large pages that make this not very efficient, but it can be done. If you need secure storage, then an external specialty security IC may be a better option. If you need configuration storage, an external EEPROM or FRAM might be better.