Просто выберите схему своего приложения и перейдите на «Возможности» согласно моей картине ниже, все должно работать нормально.
Эта ссылка включает в себя много полезной информации, в том числе о том, как получить неуправляемый блок памяти для передачи строки в собственный код (который также предположительно является безопасным), класс BCL, который его использует, и ссылки на пару примеров:
http://bartdesmet.net/blogs/bart/archive/2006/03/31/3851.aspx
Главное, что это на самом деле не используется, что еще много, но вы можете создавать свои собственные библиотеки, которые полагаются на него.
Я думаю, что Страница MSDN , описывающая SecureString, лучше всего говорит об этом:
Представляет текст, который должен оставаться конфиденциальным.
SecureStrings не предназначены для использования как строки. Они предназначены для того, чтобы быть держателями информации с ограниченным доступом, которая должна быть предметом повышенной безопасности.
Если вы хотите изменить содержимое SecureString, все необходимые методы есть.
Однако, если вам нужно Чтобы получить значение защищенной строки, вы должны использовать ToString (), поскольку для этого нет других методов.
Другими словами, не используйте SecureStrings как строки.