If we're talking the latest SafariDriver, then blame Apple, they develop that (not Selenium WebDriver core team). If we're talking the deprecated SafariDriver extension for older Safari versions, also blame Apple, their design decisions around how extensions work and security of the browser made it hard to automate Safari via WebDriver protocol.
The new SafariDriver officially from Apple is much improved, but from what you say, sounds like there is still improvements to be made. Apple perhaps made their browser a tad too secure in that respect, even for test automation :(
I suggest you ask about this on Apple's Safari forum, although perhaps better to just file a bug (or rather feature request) to Apple about this. But first, check if one already exists on
https://openradar.appspot.com/page/1. If not, file your bug then file a copy of it on OpenRadar. It's sad Apple does not offer a publicly viewable bug tracking system. You only see bugs you file, you can't see related bugs if say yours was marked a duplicate.