- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我感兴趣的是在跨平台分布式系统中可以使用哪些策略来处理用户身份验证和授权。我希望能够将系统中的操作标记为属于特定用户,并且只允许特定用户执行特定操作。
背景:该系统目前仅在 Windows 下使用,其中用户发起的操作目前仅被标记为来自用户的特定机器。一个 Action 基本上涉及使用 cpu 进行一些计算并返回结果。
目前没有进行任何授权,也没有对用户(或计算机之间)进行身份验证。系统作为低权限服务运行(使用 NETWORK SERVICE 帐户)。数据不敏感,本地网络上的所有用户都可以随意使用该系统。
该系统既可以部署在同类 Windows 域设置中,也可以部署在没有域 Controller 的工作组中,或者部署在一个域和一组不属于该域的工作计算机的混合环境中。
问题
为了向系统添加功能,例如收集每个用户的使用统计信息或显示谁在使用计算机,有必要跟踪单个用户。除此之外,如果某些操作只允许某些用户执行(例如更改系统的某些设置),则还需要某种形式的授权。
我非常了解 Windows 执行此操作的方式,并且使用 Windows 中的内置身份验证和授权功能可以直接在同类 Windows 域设置中添加此类功能。这也消除了将仅对该特定系统有效的特殊帐户分配给系统的需要 - 一旦用户正常登录,所有身份验证和授权都可以完成,无需任何额外的用户交互。
但是如果系统应该能够在 Mac OSX 上运行呢?还是Linux?如果它应该在混合环境中运行,一些用户在 Windows 域中,其他用户在 OSX 上,一些工作机器运行 Linux 怎么办? (实际系统可以移植到所有这些系统并处理跨平台通信等)。我对在这些平台上处理身份验证和授权的方式知之甚少,也不知道在平台之间交互时如何实现这一点。
在这样的分布式系统中,有什么好的策略可以用于跨平台的用户身份验证和授权吗?请注意此处“跨平台”的双重用途 - 既可以为不同平台编译程序,也可以在平台之间进行交互。
我已将问题标记为 C++,因为这是编写系统的语言,但我愿意接受任何可以使用 C++ 进行交互的内容。欢迎任何想法(包括疯狂的架构更改)!
更新:
能够实现的有趣示例:
用户 A 登录到机器 1,这是一台 Windows 机器。
用户 A 打开系统的管理界面,选择机器 2(Linux 系统)并调整设置。系统验证用户 A 实际上有足够的权限来执行此操作。
由于 A 在他/她登录时已经验证了他的身份,因此最好允许他/她更改此设置而无需提供额外的凭据。
最佳答案
您可以将基于声明的身份验证与跨平台工作的 SAML token 结合使用。
在 Windows 端有一个库:Windows Identity Foundation。
关于c++ - 处理跨平台用户认证和授权的策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4657141/
我正在使用 Tornado 与 twitter 等第三方进行身份验证。 我的登录处理程序看起来像这样 class AuthLoginHandler(BaseHandler, tornado.auth.
有没有一种真正的方法可以在 Pylons 中添加身份验证?我见过很多不同的方法,但大多数方法要么过时,要么过于复杂。是否有教程可以解释如何以良好而可靠的方式添加身份验证? 最佳答案 考虑使用 repo
RESTful 身份验证是什么意思,它是如何工作的?我在谷歌上找不到很好的概述。我唯一的理解是您在 URL 中传递了 session key (记住),但这可能是非常错误的。 最佳答案 如何在 RES
我正在考虑在基于插件的系统中实现安全性的多种方式。现在,当我说“安全”时,我的意思是: a) 插件系统的开发人员如何确保插件在核心平台上的使用是安全的。b) 插件开发人员如何确保在其平台上使用的插件是
我正在使用 WCF Webhttp 服务。我创建了一堆服务,剩下的就是放入用户身份验证... 问题 与其余架构风格保持一致,我是否应该针对用户 db 验证每个服务调用。 如果是这样,我应该在每次调用服
假设我想对 Mifare Classic 进行身份验证。 我如何知道要发送到卡的确切类型的 APDU? 例子。 这段代码: bcla = 0xFF; bins = 0x86; bp1 = 0x0;
我通过在文件 xyz.php 中编写以下代码登录到网站。当我运行这个文件时,我会登录到 moodle 网站。有什么方法可以像下面的登录代码一样注销吗? $user = authenticate_use
我有一个应用程序可以匿名访问除几个之外的所有 xpages。我需要强制用户登录这些 xpages。是使用 beforepageload 事件来检查用户登录页面并将其重定向到正确的方式还是有更好的方法?
我想用 ember.js 实现身份验证。 因此,当应用程序启动时,在路由器处理请求的 url 之前,我想检查用户状态。如果用户未通过身份验证,我想保存请求的 url 并重定向到特定的 url (/lo
您如何执行 jQuery Ajax 调用并在发送请求之前对调用进行身份验证? 我还没有登录所以必须进行身份验证。安全不是任何人都可以访问的问题,只需要进行身份验证。它只是基本的 http 身份验证,您
我尝试使用找到的 swift 代码 here在网站上找到here ,但响应是带有两个错误的 html 代码:“您必须输入密码!”和“您必须输入用户名!”我是 NSURLSession 的新手,并尝试更
我正在尝试连接到 Visa Direct API,但我没有通过基本的 SSL 证书认证,这是我的代码: import requests headers = { 'Content
我正在用 tornado 在 python 中开发一个 REST API,我将实现身份验证和授权,试图避免锁定到其他大项目,即 django。我也在通过论坛和 SO 环顾四周,我喜欢一个可能适合的解决
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭10
如何在 Android 中通过 HTTP 进行身份验证? 最佳答案 我非常难以在 Android 中通过 HTTP 进行身份验证,因为在浏览器(Web 和 Android native )中它工作完美
我有一些关于登录和 session 的问题。我有这段代码: 数据库查询: login: function(req,callback) { var query = 'SELECT id FROM
我开始使用 Swift 开发 iOS 应用。现在我正处于需要创建登录系统的部分。但是,我们需要人们提供的 LinkedIn 信息。 我如何在 iOS 中使用 OAuth2 API 来实现这一点? 我已
如果没有找到用户,问题出在每个 $routeChangeStart 上,如果我只输入 url,它仍然会引导我访问页面。 现在我已经在服务器上重写了规则。 Options +FollowSymlinks
简单代码 require 'net/http' url = URI.parse('get json/other data here [link]') req = Net::HTTP::Get.new(
参考文档: https://docs.sonarqube.org/latest/instance-administration/security/ 概述 SonarQube具有
我是一名优秀的程序员,十分优秀!