前端怎么樣限制用戶截圖?
點擊上方 前端陽光,關注公眾號
回復加群,加入技術交流群交流群
做后臺系統(tǒng),或者版權比較重視的項目時,產(chǎn)品經(jīng)常會提出這樣的需求:能不能禁止用戶截圖?有經(jīng)驗的開發(fā)不會直接拒絕產(chǎn)品,而是進行引導。
先了解初始需求是什么?是內(nèi)容數(shù)據(jù)過于敏感,嚴禁泄漏。還是內(nèi)容泄漏后,需要溯源追責。不同的需求需要的方案也不同。來看看就限制用戶截圖,有哪些腦洞?
有哪些腦洞
v站和某乎上的大佬給出了不少腦洞,我又加了點思路。
1.基礎方案,阻止右鍵保存和拖拽。
這個方案是最基礎,當前可只能阻攔一些小白用戶。如果是瀏覽器,分分鐘調(diào)出控制臺,直接找到圖片url。還可以直接ctrl+p,進入打印模式,直接保存下來再裁減。
2.失焦后加遮罩層
這個方案有點意思,看敏感信息時,必須鼠標點在某個按鈕上,照片才完整顯示。如果失去焦點圖片顯示不完整或者直接遮罩蓋住。
3.高速動態(tài)馬賽克
這個方案是可行的,并且在一些網(wǎng)站已經(jīng)得到了應用,在視頻或者圖片上隨機插像素點,動態(tài)跑來跑去,對客戶來說,每一時刻屏幕上顯示的都是完整的圖像,靠用戶的視覺殘留看圖或者視頻。即時手機拍照也拍不完全。實際應用需要優(yōu)化的點還是挺多的。比如用手機錄像就可以看到完整內(nèi)容,只是增加了截圖成本。
下面是一個知乎上的方案效果。(原地址):https://link.juejin.cn/?target=https%3A%2F%2Fwww.zhihu.com%2Fquestion%2F417108591%2Fanswer%2F1450568587

正經(jīng)需求vs方案
其實限制用戶截圖這個方案本身就不合理,除非整個設備都是定制的,在軟件上閹割截圖功能。為了這個需求添加更復雜的功能對于一些安全性沒那么高的需求來說,有點本末倒置了。
下面聊聊正經(jīng)方案:
對于后臺系統(tǒng)敏感數(shù)據(jù)或者圖片,主要是擔心泄漏出去,可以采用斜45度七彩水印,想要完全去掉幾乎不可能,就是觀感比較差。
對于圖片版權,可以使用現(xiàn)在主流的盲水印,之前看過騰訊云提供的服務,當然成本比較高,如果版權需求較大,使用起來效果比較好。
視頻方案,tiktok下載下來的時候會有一個水印跑來跑去,當然這個是經(jīng)過處理過的視頻,非原畫,畫質(zhì)損耗也比較高。Netflix等視頻網(wǎng)站采用的是服務端權限控制,走的視頻流,每次播放下載加密視頻,同時獲得短期許可,得到許可后在本地解密并播放,一旦停止播放后許可失效。
總之,除了類似于Android提供的截圖API等底層功能,其他的功能實現(xiàn)都不完美。即使是底層控制了,一樣可以拍照錄像,沒有完美的方案。不過還是可以做的相對安全。
你還有什么新思路嗎?有的話咱評論區(qū)見,歡迎點贊收藏關注,感謝!.
作者:正經(jīng)程序員 鏈接:https://juejin.cn/post/7127829348689674253

往期推薦
我組建了技術交流群,里面有很多 大佬,歡迎進來交流、學習、共建。回復 加群 即可。后臺回復「電子書」即可免費獲取 27本 精選的前端電子書!回復內(nèi)推,可內(nèi)推各廠內(nèi)推碼
“分享、點贊、在看” 支持一波??
