首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SecureString和IIS?

SecureString和IIS?
EN

Stack Overflow用户
提问于 2012-03-18 10:03:32
回答 2查看 300关注 0票数 0
  • 用户有一个ASPX页面。
  • 它有textox输入(用于密码)。
  • 用户填充他的密码。

H 19该页面被提交给iis。H 210H 111它首先进入iis。H 212H 113到此阶段,密码以纯文本形式存储在内存中。H 214H 115现在Asp.net将其密码放到安全的iis中进行计算,该页被发送到客户端。H 218F 219代码>

来自IIS POV:

他仍然把密码看作是普通的text...isnt吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-18 10:15:55

根据您的故事,在SecureString中存储密码是没有意义的。它曾经作为普通字符串出现在内存中,因此将其存储在SecureString中就没有那么有用了。另外,当表单返回时,仍然会以纯文本的形式发送回所有内容。

在这种情况下,最好是保护服务器-客户端通信(即使用SSL),而不是试图保护系统免受攻击者的攻击,攻击者将访问计算机、分析内存和提取密码(!)。

票数 3
EN

Stack Overflow用户

发布于 2012-03-18 10:18:42

读取SecureString要复杂得多。没有简单的ToString方法,这也是为了保证数据的安全。要读取数据,C#开发人员必须直接访问内存中的数据。幸运的是,.NET框架使System.Runtime.InteropServices.Marshal类的适当成员(如SecureStringToBSTR方法)能够很好地操作SecureString对象的值。

代码语言:javascript
复制
            IntPtr stringPointer = Marshal.SecureStringToBSTR(objSecureString);
            string normalString = Marshal.PtrToStringBSTR(stringPointer);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9757444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档