A recurring question on various OpenStreetMap help and discussion forums is, "How can I add data to OpenStreetMap and make sure that it is not edited by anyone?"
The short answer is: You cannot, and we don't want you to.
What is Unmodifiable Data?
People often ask for protecton against edits for "official" data - for example, administrative boundaries, or the position of navigation aids for seamen. Such data will usually have been imported from a third-party source that is considered authoritative. ("A boundary does not change because someone in OSM wills it to.")
Why we don't want Unmodifiable Data
OpenStreetMap is a giant editor for Geodata. Our mappers map what they survey, and modify data according to "on the ground" reality. This is one of our major advantages compared to most big providers of Geodata - we have people on the ground who are our authority. We want to map what's there in reality - not what is on some government database. Third-party databases may be wrong or outdated, or problems may have occurred during import, maybe due to inaccurate projections or other issues. Our mappers must always be able to fix and update what is in our database - that is the very basis of OSM.
Data that has been imported and cannot be verified independently (ideally on the ground) is dead matter in the OSM database, clutter that complicates the editing process for everyone.
But it does not make sense to edit this - it will be overwritten in the next import!
Imports that overwrite the manual work of mappers are not acceptable.
But I need that data to show up on my map!
If you need data from a third party source to show up on your map, then consider merging that data at the rendering stage (e.g. by loading an additional shape file in your rendering software) instead of trying to import the data to OSM.