• <em id="52tge"><object id="52tge"><blockquote id="52tge"></blockquote></object></em>

  • <progress id="52tge"></progress>
      
      
      <tbody id="52tge"><pre id="52tge"></pre></tbody>
      <em id="52tge"></em>
      <li id="52tge"><acronym id="52tge"><u id="52tge"></u></acronym></li>

      <nav id="52tge"><sub id="52tge"><noframes id="52tge"></noframes></sub></nav>

      網站地圖 | RSS訂閱 老鐵博客 - 上海SEO優化|上海網站建設|蜘蛛池出租|站群代搭建
      你的位置:首頁 ? 網站建設 ? 正文

      KindEditor上傳文件加cookies/session權限驗證

      2016-5-6 12:59:59 | 作者:老鐵SEO | 0個評論 | 人瀏覽

      KindEditor編輯器上傳文件是沒有用戶登錄驗證和權限驗證的,即任何人都可以上傳,這樣很不安全,會有文件上傳漏洞。于是,我們就需要加一個權限驗證了。

      以下是KindEditor 4.1.11的ASP接口示例:

      KindEditor中單個圖片及文件上傳,可以直接在  KindEditor/asp/upload_json.asp 這個文件頂部加入如下代碼:

      <%
      '……省略包含文件及打開數據庫和DB函數的代碼
      if len(request.Cookies("username"))>0 and len(request.Cookies("password"))>0 then
      	dim rs
      	Set Rs = DB("Select [password] From [Admin] Where [Username]='" & username & "'",1)
      	If Not Rs.Eof Then
      		if rs(0)<>password then response.End()
      	else
      		response.End()
      	End If : Rs.Close
      else
      	response.End()
      end if
      %>

      說明:單個圖片及文件上傳時,upload_json.asp文件可以獲取cookies和session,因此可以直接寫入驗證程序。

      然而,KindEditor批量圖片上傳功能,采用的是FLASH方式,FLASH無法直接獲取cookies和session,需要傳值進去才能不丟失cookies和session

      所以,KindEditor上傳文件加入cookies/session權限驗證的最終解決方法如下:

      調用KindEditor的頁面中,如:

      <link rel="stylesheet" href="kindeditor/themes/default/default.css" />
      <script charset="utf-8" src="kindeditor/kindeditor-all.js"></script>
      <script charset="utf-8" src="kindeditor/lang/zh-CN.js"></script>
      <script>
      var KE;
      KindEditor.ready(function(K) {
          KE = K.create('#Content',{
              uploadJson : 'kindeditor/asp/upload_json.asp?username=<%=request.Cookies("username")%>&password=<%=request.Cookies("password")%>',
      	fileManagerJson : 'kindeditor/asp/file_manager_json.asp',
              allowImageUpload: true, //多圖上傳
              allowFileManager : true, //瀏覽圖片空間
              filterMode : false, //HTML特殊代碼過濾
              afterBlur: function(){ this.sync(); } //編輯器失去焦點(blur)時執行的回調函數(將編輯器的HTML數據同步到textarea)
          });
      });
      </script>
      <textarea id="Content" name="Content" style=" width: 99%; height: 500px; visibility: hidden; display: block; "></textarea>

      KindEditor/asp/upload_json.asp 這個文件中,在頂部加入如下代碼:

      <%
      '……省略包含文件及打開數據庫和DB函數的代碼
      dim username,password
      username=trim(request.QueryString("username"))
      password=trim(request.QueryString("password"))
      username=Replace(Replace(Replace(Replace(Replace(Replace(username,"'",""),")",""),">",""),"*",""),"?",""),"%","")
      password=Replace(Replace(Replace(Replace(Replace(Replace(password,"'",""),")",""),">",""),"*",""),"?",""),"%","")
      If Len(username)>0 And Len(password)>0 Then
      	dim rs
      	Set Rs = DB("Select [password] From [Admin] Where [Username]='" & username & "'",1)
      	If Not Rs.Eof Then
      		If rs(0)<>password Then response.End()
      	else
      		response.End()
      	End If : Rs.Close
      else
      	response.End()
      End If
      %>


    1. 本文來自: 老鐵博客,轉載請保留出處!歡迎發表您的評論
    2. 相關標簽:KindEditor  編輯器  
    3. 已有0位網友發表了一針見血的評論,你還等什么?

      必填

      選填

      記住我,下次回復時不用重新輸入個人信息

      必填,不填不讓過哦,嘻嘻。

      ◎歡迎參與討論,請在這里發表您的看法、交流您的觀點。

      色情激情片日本大全|亚洲无码色情gif|六人行成人版第九影院|亚洲成人电影理论电影

    4. <em id="52tge"><object id="52tge"><blockquote id="52tge"></blockquote></object></em>

    5. <progress id="52tge"></progress>
        
        
        <tbody id="52tge"><pre id="52tge"></pre></tbody>
        <em id="52tge"></em>
        <li id="52tge"><acronym id="52tge"><u id="52tge"></u></acronym></li>

        <nav id="52tge"><sub id="52tge"><noframes id="52tge"></noframes></sub></nav>