jon*_*bbs 14 c# security rest android oauth
我在http://oauth.net/上读过一些关于它的内容,它显然是"发布受保护数据和与受保护数据交互的简单方法".
我认为这正是我需要通过REST Web服务提供从android/iphone应用程序访问数据的安全方式,但我无法确切地知道它是什么.
所以,简单地说,它究竟做了什么,是否有任何(真的)简单的例子,我可以遵循它,最好在c#中实现可以从智能手机应用程序访问的东西?
Ith*_*her 13
从Craig Stuntz提供的链接:
Open ID为您提供多个站点的登录.每次您需要登录Zooomr(使用Open ID的站点)时,您将被重定向到您登录的Open ID站点,然后返回Zooomr.OAuth允许您授权一个网站 - 消费者 - 从另一个网站 - 提供商访问您的数据.例如,您想要授权打印提供商 - 称之为Moo - 从照片库中抓取您的照片 - 称之为Flickr.Moo会将你重定向到Flickr,例如,你会问你"Moo想要下载你的Flickr照片.这很酷吗?"然后回到Moo打印你的照片.
DotNetOpenAuth是Open ID和OAuth的优秀C#库.
pok*_*oke 13
OAuth是应用程序保留登录数据而不会存储真实数据的另一种方法.
当您登录某个页面时,通常会有用户名和个人密码,或任何其他类型的登录凭据.现在,如果您希望应用程序能够通过该登录执行某些操作,则需要为该应用程序提供原始登录数据.这意味着您在应用程序中输入了用户名和密码.到目前为止,这还不错,但问题是,如果您希望通过该应用程序保持登录状态,则需要存储您的凭据.但是为了能够将正确的登录数据发送到实际页面,它需要以原始形式存储它们(只需要加密或其他东西).因此,如果有人知道数据如何存储在应用程序中,他们可以提取您的原始登录凭据.
这是一个安全问题,正是OAuth的用武之地.使用OAuth,每个应用程序都由一个消费者密钥和一个消费者秘密来识别.两者都是客户独有的,通常没有用户可以看到那些(特别是不是秘密).现在,当您希望允许应用程序访问该页面时,您可以启动OAuth授权过程.您只需登录该页面并明确允许该特殊应用程序(由使用者密钥标识)具有访问权限.如果这样做,应用程序将收到另一个密钥对,即访问令牌和访问密钥.该密钥对仅适用于您的帐户并且只有在确切的应用程序使用时才会起作用(由消费者密钥识别,并由消费者秘密保护为原始应用程序).现在,存储的所有应用程序都是访问密钥对(与已存储的使用者密钥对一起),并且它可以访问该页面而无需查看原始登录数据.
这样,没有人能够获得您的实际登录详细信息,并且没有其他人(或没有其他应用程序)将能够使用生成的访问凭据来访问该页面.如果您不希望应用程序仍具有访问权限,则可以轻松撤消访问密钥对,以便应用程序再也无法使用它.
因此,OAuth只是一种保护真实登录数据的方法.除此之外,它不会添加任何其他级别的安全性或其他内容,它只是为了保护您的数据.
| 归档时间: |
|
| 查看次数: |
4567 次 |
| 最近记录: |