小编Dav*_*her的帖子

Frame Buster Buster ......需要buster代码

假设您不希望其他网站在以下位置"构建"您的网站<iframe>:

<iframe src="http://example.org"></iframe>
Run Code Online (Sandbox Code Playgroud)

因此,您将反框架,帧破坏JavaScript插入到您的所有页面中:

/* break us out of any containing iframes */
if (top != self) { top.location.replace(self.location.href); }
Run Code Online (Sandbox Code Playgroud)

优秀!现在你自动"破解"或突破任何包含iframe.除了一个小问题.

事实证明,您的帧破坏代码可能被破坏,如下所示:

<script type="text/javascript">
    var prevent_bust = 0  
    window.onbeforeunload = function() { prevent_bust++ }  
    setInterval(function() {  
      if (prevent_bust > 0) {  
        prevent_bust -= 2  
        window.top.location = 'http://example.org/page-which-responds-with-204'  
      }  
    }, 1)  
</script>
Run Code Online (Sandbox Code Playgroud)

此代码执行以下操作:

  • 每次浏览器尝试通过window.onbeforeunload事件处理程序离开当前页面时,都会递增计数器
  • 设置一个通过每毫秒触发的计时器,setInterval()如果它看到计数器递增,则将当前位置更改为攻击者控制的服务器
  • 该服务器提供具有HTTP状态代码204的页面,这不会导致浏览器在任何地方导航

我的问题是 - 这更像是一个JavaScript拼图,而不是一个实际的问题 - 你怎么能打败破坏框架的破坏者呢?

我有一些想法,但在我的测试中没有任何效果:

  • 试图通过清除onbeforeunload事件onbeforeunload = null …

html javascript iframe framebusting

415
推荐指数
11
解决办法
13万
查看次数

如何使用DDD将Active Directory集成到.NET应用程序中?

如何将Active Directory对象(用户,组等)集成到DDD .NET应用程序中?您的存储库是什么样的,您如何处理LDAP会话,事务和工作单元?请注意,我不是在讨论简单的身份验证/授权方案,而是在AD对象是应用程序核心域模型的一部分时.

我正在开发一个为AD用户配置/取消配置的应用程序,我很好奇其他人正在做什么来将AD对象引入他们的DDD应用程序.我想你并没有在你的应用程序中拖动DirectoryEntry对象,但我没有找到任何好的ORM类型的LDAP对象工具(可能是OLM - 对象 - LDAP映射?).

编辑:关于这个问题的更多背景信息是在Sharp Architecture项目的这篇论坛帖子中.

.net domain-driven-design active-directory s#arp-architecture

10
推荐指数
1
解决办法
699
查看次数

从Windows服务打印Xps

我正在尝试从.net框架上的Windows服务打印XPS文档.由于Microsoft不支持使用System.Drawing.Printing进行打印,也不支持使用System.Printing(WPF),因此我使用的是本机XPSPrint API.这是Aspose在http://www.aspose.com/documentation/.net-components/aspose.words-for-.net/howto-print-a-document-on-a-server-via-向我建议的. the-xpsprint-api.html.

当我尝试从Windows服务打印XPS文档时,结果包含奇怪的字符而不是我想要的文本.

我试过不同的打印机(包括像PDFCreator这样的虚拟打印机),不同的用户和服务的用户权限,不同的xps生成器(aspose,word 2007,word 2010),不同的平台(windows 7,windows 2008 R2)但所有有相同的结果.

有谁知道如何解决这个问题?任何帮助,将不胜感激!

对于那些想要尝试它的人,我通过以下方式共享了一些文件:

https://docs.google.com/leaf?id=0B4J93Ly5WzQKNWU2ZjM0MDYtMjFiMi00NzM0LTg4MTgtYjVlNDA5NWQyMTc3&hl=nl

  • document.xps:要打印的XPS文档
  • document_printed_to_pdfcreator.pdf:用于演示出错的打印文档
  • XpsPrintTest.zip:带有示例代码的示例VS2010解决方案

托管Windows服务的示例代码是:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.IO;
using System.Threading;
using System.Runtime.InteropServices;

namespace PrintXpsService
{
public partial class XpsPrintService : ServiceBase
{
    // Change name of printer here
    private String f_printerName = "PDFCreator";

    // path to some file where logging is done
    private String f_logFile = @"C:\temp\testdoc\xps_printing_service_log.txt";

    // path …
Run Code Online (Sandbox Code Playgroud)

printing windows-services xps

9
推荐指数
1
解决办法
5390
查看次数

如何克服EAV数据库报告的缺点?

SQL中的Entity-Attribute-Value数据库设计的主要缺点似乎都与能够高效,快速地查询和报告数据有关.我读到的关于该主题的大部分信息都警告不要因为这些问题而实施EAV以及几乎所有应用程序的查询/报告的共性.

我目前正在设计一个系统,其中一个实体的字段在设计/编译时是未知的,并由系统的最终用户定义.EAV似乎非常适合这个要求,但由于我所读到的问题,我对实施它犹豫不决,因为这个系统也有一些非常繁重的报告要求.我我已经找到了解决这个问题的方法,但是想向SO社区提出这个问题.

鉴于典型的规范化数据库(OLTP)仍然不总是运行报告的最佳选择,一个好的做法似乎是拥有一个"报告"数据库(OLAP),其中来自规范化数据库的数据被复制到,广泛索引,以及可能非规范化以便于查询.是否可以使用相同的想法来解决EAV设计的缺点?

我看到的主要缺点是将数据从EAV数据库传输到报告的复杂性增加,因为您可能最终必须在EAV数据库中定义新字段时更改报告数据库中的表.但这几乎是不可能的,并且似乎是EAV设计提高灵活性的可接受的权衡.如果我使用非SQL数据存储(即CouchDB或类似的)用于主数据存储,这种缺点也存在,因为所有标准报告工具都期望SQL后端进行查询.

如果您有一个单独的报告数据库用于查询,那么EAV系统的问题是否会消失?

编辑:感谢您的评论到目前为止.我正在研究的系统的一个重要事项是,我真的只是在谈论为其中一个实体使用EAV,而不是系统中的所有实体.

系统的全部要点是能够从多个不同的源提取数据,这些数据是提前未知的,并且会对数据进行处理以获得关于特定实体的一些"最知名"数据.因此,我正在处理的每个"领域"都是多值的,我还需要跟踪每个领域的历史记录.对于这种情况的标准化设计最终是每个字段1个表格,这使得查询它无论如何都很痛苦.

以下是我正在查看的表格模式和示例数据(显然与我正在处理的内容有所不同,但我认为它很好地说明了这一点):

EAV表

Person
-------------------
-  Id - Name      -
-------------------
- 123 - Joe Smith -
-------------------

Person_Value
-------------------------------------------------------------------
- PersonId - Source - Field       - Value         - EffectiveDate -
-------------------------------------------------------------------
-      123 -    CIA - HomeAddress - 123 Cherry Ln -    2010-03-26 -
-      123 -    DMV - HomeAddress - 561 Stoney Rd -    2010-02-15 -
-      123 -    FBI - HomeAddress - 676 Lancas Dr -    2010-03-01 -
------------------------------------------------------------------- …
Run Code Online (Sandbox Code Playgroud)

architecture database-design system-design entity-attribute-value

7
推荐指数
2
解决办法
2421
查看次数

在 Chrome 扩展程序中使用 localStorage 或 chrome.storage 的安全问题

我正在构建一个需要保留用户敏感数据的 chrome 扩展。我知道您可以使用 HTML5,但它容易受到 XSS 和其他形式的攻击。我最近发现了chrome.storage但文档说:

不应存储机密用户信息!存储区域未加密。

现在我的问题是:

  1. 是否有一种安全的方法可以在浏览器中存储敏感的用户数据(即私钥)?

html google-chrome local-storage google-chrome-extension

5
推荐指数
1
解决办法
2492
查看次数