簡體   English   中英

Angular - 如何防止來自事件的 RxJs 中的 XSS 攻擊?

[英]Angular - how to prevent XSS attacks in RxJs fromEvent?

我經常使用fromEvent中的 fromEvent 方法。 老實說,我期待 Angular 有一些魔力,但顯然沒有。 使用fromEvent時如何防止 XSS 攻擊?

代碼示例:

<input #myInput />

fromEvent(this.muInput.nativeElement, 'input').pipe(
  tap(inputEvent => this.saveToDatabase(inputEvent.data)
)

對於您的問題,使用fromEvent您會得到與反應形式的valueChanges相同的 output ,就安全措施而言,它幾乎相同。

<input formcontrol="myInput"/>
myInput.valueChanges.subscribe(console.log) 

對比

<input #myInput />
fromEvent(this.muInput.nativeElement, 'input').subscribe(console.log)

Angular 將清理 output 如果您在視圖中將它們包裝在表達式花括號中

{{ .. }} 

但它不會清理表單輸入,所以這仍然是一個有效的表單輸入,並且仍然需要在服務器端進行清理。

<script>alert('kdfkf')</script>

我不建議使用fromEvent來處理更改,因為在大多數情況下,您只綁定一次到某個元素(假設在 ngOnInit 中),如果該元素通過*ngIf從 DOM 中刪除,除非您有處理重新綁定的代碼,否則您的事件將消失。

這個答案也可能有幫助Need to insert Script tag in angular 2

以及這個https://angular.io/guide/security

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM