草庐IT

安全设计

全部标签

javascript - 将 JavaScript 回调传递给在另一个线程中调用它的 FFI 函数是否安全?

我有一个C函数,它接受回调并在另一个线程上调用它:voidcall_in_new_thread(void(*callback)()){//spawnanewthreadandcall`callback`init...}我想通过Node-FFI从JavaScript调用这个函数,将一个JavaScript函数传递给它:varcallbackType='pointer'varlib=ffi.Library('mylib',{'call_in_new_thread':['void',[callbackType]],})varcallback=ffi.Callback('void',['voi

javascript - Redux 中间件设计 re : return values

所以我刚刚阅读了redux中间件,听起来不错。不过有一件事困扰着我——中间件的返回值。我知道中间件的某些实例会返回一些东西(即redux-promise),而我得到其他中间件(即logging)不会-只是返回next(action)的结果。我的问题是,如果我想使用两个都返回内容的中间件会发生什么——它们肯定会互相破坏,而我只会获得最外层中间件的返回值。express/connect中间件通过让中间件将其“结果”写入req和res对象来解决这个问题,但是解决方案是什么还原?编辑这是我的问题的一个更具体的例子:我有两个中间件:将所有操作延迟3秒分派(dispatch)的中间件。这个中间件返

javascript - 我将如何设计客户端队列系统?

概览我正在做一个项目,我遇到了一些问题,因为事情没有按照我希望的顺序发生。所以我一直在考虑设计某种队列,我可以用它来组织函数调用和在启动期间使用的其他杂项JavaScript/jQuery指令,即在加载页面时。我正在寻找的不一定是队列数据结构,而是一些系统可以确保事情按照我指定的顺序执行,并且只有当前一个任务完成时新任务才能开始。我简要地查看了jQueryQueue和AjaxQueue但我真的不知道它们是如何工作的,所以我不确定这是否是我想要采用的方法……但我会继续阅读有关这些工具的更多信息。具体内容目前,我已经设置好一些工作在$(document).ready(function(){

javascript - 为什么 IE8 错误地提示加载了非安全元素?

我管理一个在SSL下运行的电子商务网站。问题发生在我网站的购物车的最后一页,该页面在SSL下加载。问题是InternetExplorer8.0(包括版本8.0.6001.18702和其他版本的IE8,但据报道不是所有版本的IE8)至少提示一个不安全的元素加载,这吓跑了一些我的潜在客户。IE8在页面明显完全加载后(似乎没有丢失图像)显示一个对话框,上面写着:"SecurityWarning:Doyouwanttoviewonlythewebpagecontentthatwasdeliveredsecurely?Thiswebpagecontainscontentthatwillnotbe

javascript - 在 jquery 移动应用程序中本地安全地存储用户密码

我需要访问一个api,它需要使用jquery移动api对每个用户进行http身份验证。我计划将该应用作为网站提供,并将其打包在Cordova中以用于各种设备。如果我有一个捕获用户名和密码的登录表单并将其存储为javascript变量,是否有任何方式可以公开这些数据?如果是这样,处理存储用户身份验证详细信息的最佳替代方法是什么?如果没有必要,我不愿构建中间服务器。非常感谢。:D 最佳答案 我建议不要将用户名或密码存储在localStorage中,而是存储访问token。访问token可以经常更新和更改,它也不会透露用户是谁或他们的哈希

javascript - Canvas drawImage 不在 Cordova 中绘制,安全问题?

我想在Cordova应用程序中将图像绘制到Canvas上。当图片路径在www内时我的应用程序的目录,绘图按预期工作。但是,如果图像是由Cordova相机制作的,因此存储在../../tmp中。关于www目录,drawImage(...)产生黑色图片。这可能是一个安全问题,因为可以在www中找到该应用程序的源代码。目录,但图像不是。另一方面,标签可以毫无问题地显示这些图像。问题真的是安全问题吗?我能做些什么来解决它,即不产生黑色图片? 最佳答案 在尝试了无数次之后:问题很简单,我想使用drawImage()的图像分辨率太高了。降低分辨

javascript - TypeScript 类型安全省略函数

我想在普通typescript中复制lodash的_.omit函数。omit应该返回一个对象,其中删除了某些属性,这些属性是通过先出现的对象参数之后的参数指定的。这是我最好的尝试:functionomit(obj:T,...keys:K[]):{[kinExclude]:T[k]}{letret:any={};letkey:keyofT;for(keyinobj){if(!(keys.includes(key))){ret[key]=obj[key];}}returnret;}这给了我这个错误:Argumentoftype'keyofT'isnotassignabletoparamet

Javascript 插件设计模式,如 jQuery

有人可以用javascript写下一个非常简单的基本示例来概念化(并希望让我理解)jQuery插件设计模式是如何完成的以及它是如何工作的吗?我对如何为jQuery创建插件不感兴趣(所以这里根本没有jQuery代码)。我感兴趣的是一个简单的解释(可能有一些Javascript代码)来解释插件概念是如何完成的。请不要回复我去阅读jQuery代码,我试过了,但是它太复杂了,否则我不会在这里发布问题。谢谢! 最佳答案 jQuery有一个函数库,存储在一个名为fn的内部对象中。.这些是您可以在每个jQuery对象上调用的对象。当你做$("di

javascript - 如何安全地读取 WebScriptObject 的属性?

当WebView实例中的JavaScript与WebViewDelegate之间进行通信时,JavaScript类型和Objective-C类型会来回转换。例如,当从JavaScript调用Objective-C函数时,字符串变成NSString,数字变成NSNumber,对象变成WebScriptObject.其他的处理起来很简单,但是WebScriptObject看起来很奇怪。当传递像{"foo":1,"bar":2}这样的字典时,我看到的大多数代码都是使用valueForKey提取属性,例如在[[argvalueForKey:@"foo"]intValue]==1但是如果您不确定

Javascript 安全 : is storing sensitive data in a self invoking function more secure than cookies?

我知道在客户端JavaScript中安全性要么不存在,要么非常困难。我知道我的服务器端代码应该最终决定它向谁提供数据或从谁那里接受数据。也就是说,可以执行以下操作。我所说的“好吧”是指如果这是在某些新流行的时尚炫酷Web应用程序上使用的方法。知道我不会看到“SuperCoolWebAppHacked,更改你的密码!”,我可以在晚上sleep吗?由于此实现,遍布HN和Reddit(或人们关心的任何其他信息来源)。如果不安全。为什么?如何获取该信息(用户名和密码)?它是否安全?你有多确定?为什么它是安全的?除了我现在显然无能为力之外,是什么阻止了我获取这些信息。欢迎部分回答。只是寻求更好的