2012年6月28日

jQuery .hover()

("area").hover(
    function () {
        clearInterval(change_Interval);
    }, 
    function () {
        change_Interval = setInterval (changeIMG, 5000);
    }
);

jQuery setInterval、clearInterval 循環動作 始、止

function Action(){ ... };
var interval = setInterval(Action, 5000);
clearInterval(interval);

2012年6月25日

jQuery eq()、gt()

eq()  指定第 N個元素 (index:0↑)
$("div#postlist > div:eq(1)").hide();

gt()  所有大於指定 index的元素
$("div#postlist > div:gt(3)").hide();
lt  所有小於指定 index的元素

Javascript日常運用有感

最近終於感到平常工作才會用到的 Javascript、jQuery也有在非上班時間運用到的時候了!!

那就是 ~ 類似 Firefox上的 GreaseMonkey這個套件的功能
可以讓使用者在自己的瀏覽器上掛載 script語法,直接對自己瀏覽的頁面動手腳

這樣在逛論壇時,就可以自己寫 script把根本就不會去看的東西給隱藏起來,網頁頓時精簡許多!!


不過平常愛用 Chrome的人,可沒有 GreaseMonkey可用
還好 Chrome的擴充功能上有一款 Blank Canvas Script Handler,也有同樣的效果啦!!

2012年6月19日

Win Server 2003 R2 + SQL Server 2008 安裝

需先安裝 .NET Framework 3.5 SP1

Features:
  • Instance Features
    • Database Engine Services
      • SQL Server Replication
      • Full-text Search

    要做分析及報表再勾選 Analysis Services、Reporting Services

  • Shared Features
    • Integration Services
    • Management Tool - Basic
      • Management Tool - Compelete





Server 2003 SP2 安裝 SQL Server 2008 失敗的解決方法
裡面提及若是已經安裝 MS XML 6 SP2,會導致 SQL Server 2008安裝失敗
可以先刪除後再用 Windows Update安裝

Win Server 2003 R2 + IIS6 安裝

Windows Server 2003 Enterprise Edition

  1. 控制台 → 新增/疑除程式 → 新增/移除 Windows功能

  2. Windows Components Wizard
    Deafult:
    • Accessories and Utlities
    • Update Root Certificates
    • Internet Explorer Enhanced Security Configuration
    Click:
    • Application Server

    IE Enhanced Security Configuration 用於開發時可以關掉...超煩的

  3. Application Server
    Deafult:
    • Application Server Consle
    • Enable network DOM+ access
    • Internet Information Services (IIS)
    Click:
    • ASP.NET

    Message Queuing 有空可以研究

  4. Internet Information Services (IIS)
    Deafult:
    • Common Files
    • Internet Information Services Manager
    • World Wide Web Service
    Click:
    • FrontPage 2002 Server Extensions

    BITS不需要
    SMTP Service 有需要用郵件的話開啟

  5. World Wide Web Service
    Deafult:
    • World Wide Web Service
    Click:
    • Active Server Pages

    Remote Administration(HTML)不需要

安裝 IIS6時,不知道是哪個元件需有 Server 2003光碟才能安裝

2012年6月15日

jQuery select元件取得selected、index

var now = $("#list1 option:selected").val();
var pos = $("#list1")[0].selectedIndex;

jQuery .each()

$.each(arr, function (ind, text) {
    $("[id=list" + index + "]")
        .append($("")
        .attr("value", text)
        .text(text));
});

jQuery .grep() 條件過濾

arr = $.grep(arr, function (obj) {
    return obj != now;
});

jQuery select元件新增 option


$("[name=FromStation]").append(
    $("<option></option>").attr("value", 0).text("請選擇"));

jQuery 元件 enable、disable

$("#FromCity").attr('disabled', 'disabled');
$("#FromStation").removeAttr('disabled');

2012年6月11日

Trengo Code Note

   
  1. 字串比對
    groupName == "ansvalue"
    ↓↓↓
    groupName.Equals("ansvalue", StringComparison.CurrentCultureIgnoreCase)
  2. SQL指令 join
  3. string strValue = "(@AnalysisVarID,@AnalysisGroupID,@GroupCode{0},@GroupValue{0})";
    ...
    DbCommand cmd = db.GetSqlStringCommand("INSERT INTO AnalysisGroupCode Values" + string.Join(",", lstValue.ToArray()) +";");
  4. TransactionScope
    using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required))
    {
    ...
    }
  5. Trim()
  6. IDataReader
    using (IDataReader reader = db.ExecuteReader(cmd))
    {
      if(...)
      {
        admin.ID = (reader.IsDBNull(0) ? 0 : reader.GetInt32(0));
        ...
       }
    }

2012年6月7日

IUSR Account 匿名使用者帳號

設定 IUSR:

IUSR預設是沒有密碼的,可以透過 IIS管理員去更改匿名驗證帳號及密碼:
  1. [IIS管理員] → [驗證]
  2. 在[匿名驗證]項目上點右鍵 → [編輯]
  3. [特定使用者] → [設定]
  4. 輸入 [使用者名稱] 及 [密碼]

查詢本機的使用者名稱:
  1. [控制台] → [系統管理工具] → [電腦管理]
  2. [本機使用者和群組] → [使用者]

參考資料:
網站
    IIS and Built-in Accounts
    IIS7權限簡述
    理解IIS 7中內建賬號(IUSR)以及IIS_USERS組

2012年6月6日

Application Pool 應用程式集區

Application Pool 的概念:

Application Pool(以下簡稱 A-Pool)是 IIS7管理網站應用程式的一個機制,每個網站都會執行至少一個的應用程式,而 A-Pool底下則會管理一至數個不同網站的應用程式。

管理者可以建立多個 A-Pool,把網站分別放在不同的 A-Pool中執行,數支 A-Pool在伺服器上運作時,會佔用不同的記憶體空間,產生各自的執行程序,並運作在不同的 Session內,藉此分隔網站應用程式,不使其互相影響。

當其中一個 A-Pool被停止或回收時,該 A-Pool底下管轄的所有網站應用程式都會同時被停止或回收掉;若 A-Pool中有某個網站應用程式出現問題時,同一個 A-Pool內的其他網站應用程式也都會因為運作在同一個 Session內而受到影響(例如執行速度變慢,甚至同時當掉)。 

要注意的是,網站開發時採用哪個版本的 .NET Framework,部署到 IIS時,就必須使用相同 .NET Framework版本的 A-Pool。


Application Pool的優點:
  • 增進伺服器及應用程式效能:可以把資源密集型(註1)的應用程式指派給專屬的 A-Pool,使其他 A-Pool中的網站應用程式效能不會受到影響而下降。
  • 改善應用程式可用性:如果一個 A-Pool中的網站應用程式出了問題,也不會影響到另一個 A-Pool中的網站應用程式。 
  • 增強安全性:透過 A-Pool做隔離,可以降低一個網站應用程式存取另一個網站應用程式資源的機率。
註1:需要較長的處理時間,或使用大量資源的程式


整合模式和傳統模式:

A-Pool的模式會影響伺服器對 Managed程式碼處理要求的方式。
  • 整合式模式:IIS7以一條整合的要求處理管線
                            (Request Processing Pipeline)來處理 IIS和 ASP.NET的
                            要求。
  • 傳統模式:IIS7以兩條各自獨立的 IIS和 ASP.NET要求處理管線來處理
                        ASP.NET的要求(如同IIS 6)。
回收:

    Application Pool可以設定隔多久時間,或是在固定的時間回收一次資
    源,還可以設定此 A-Pool的佔用記憶體上限。


參考資料:
網站
    在 IIS 7 中管理應用程式集區
    IIS 7 基礎觀念:網站、應用程式、與虛擬目錄
    App Pool vs. App Domain
    設定應用程式集區(AppPool)防止Server上的Web應用程式彼此干擾
    IIS 7五大核心元件之5: 工作者處理序

2012年6月5日

核心精神

昨天要編寫 SQL Injection的東西到 Redmine裡面

才發現之前討論的小組口號已經定下來了

Patient, Listen, Satisfaction

耐心、傾聽、滿意

跟那時我們討論出來的八竿子打不著關係啊 ~ ~ ~


順便提一下公司的:

Quality, Effectiveness, Professional

品質、效能、專業

IIS7 安裝

作業系統:Windows 7
  1. [控制台] → [程式集] → [開啟或關閉 Windows功能]
  2. 按 [Internet Information Services] 以安裝預設功能,然後選取其他需要的功能。
  3. 下一步到安裝完成。

作業系統:Windows Server 2008 / 2008 R2
  1. [開始] → [系統管理工具] → [伺服器管理員]。
  2. 在 [角色摘要] 中,按 [新增角色]。
  3. 使用 [新增角色精靈] 新增 [網頁伺服器 (IIS)] 角色。
  4. 在 [選取角色服務] 頁面上,選取需要的角色服務。
  5. 下一步到安裝完成。
若有安裝成功,在網頁瀏覽器輸入 http://localhost 即可看見 IIS7的預設歡迎畫面。



加入角色服務(功能模組)
    正式上線的伺服器不需要完全安裝,也不建議安裝沒有用到的模組 。
    測試或評估用的伺服器,最好也跟正式環境保持一致,否則容易出現
    開發時正常,導入正式上線的伺服器卻發生不能執行的狀況。


  • 靜態內容伺服器(預設):
        靜態內容網頁伺服器是最基本的設定,提供對 HTML網站的支援。
        安裝 IIS7時即會預設安裝提供支援靜態內容網頁伺服器的所有模
        組。
  • 靜態內容(Static Content)
  • 預設文件(Default Document)
  • 瀏覽目錄(Directory Browsing)
  • HTTP錯誤(HTTP Errors)
  • HTTP記錄(HTTP Logging)
  • 記錄工具(Logging Tools)
  • 要求監視器(Request Monitor)
  • 要求篩選(Request Filtering)
  • 靜態內容壓縮(Static Content Compression)
  • IIS管理主控台(IIS Management Console)
  • 傳統 ASP伺服器:
  • ASP(ASP)
  • 要求篩選(Request Filtering)
  •  ISAPI擴充功能(ISAPI Extensions)
  • ASP.NET 伺服器:
  • ASP.NET(ASP.NET)
  • .NET擴充性(NetFxExtensibility)
  • 要求篩選(Request Filtering)
  • ISAPI(ISAPI)
  • ISAPI 擴充程式(ISAPI Extensions)

所有模組及描述可見 IIS 7.5 中的可用網頁伺服器 (IIS) 角色服務 說明


參考文章:
網頁

2012年6月1日

Security 項目

管理權限

用戶驗證

TIPS-SqlConnection的ConnectionString保密機制
http://blog.darkthread.net/post-2008-03-13-persist-security-info-in-connectionstring.aspx 

不要使用GET方式接收指令進行資料更新
http://blog.darkthread.net/post-2009-04-16-dont-use-get-ajax.aspx 

伺服器端驗證
http://blog.darkthread.net/post-2011-01-28-serverside-validation.aspx 






網頁安全事件列表
http://forum.icst.org.tw/phpbb/viewtopic.php?f=29&t=15921
Web, HTTPS(SSL) and XML Vulnerabilities
針對Web、HTTPS以及 XML的程式漏洞產生的攻擊


SQL Injection
SQL指令碼注入攻擊


Session Hijacking
Session劫持


Cross Site Scripting (XSS)
跨網站腳本攻擊(XSS)


Form Field Tampering
表單欄位字串竄改


Known Worms
已知蠕蟲


Zero Day Web Worms
Zero Day Web蠕蟲


Buffer Overflow
緩衝區溢位攻擊


Cookie Poisoning
在Cookie中下毒/竄改


Denial of Service
阻絕服務攻擊(DOS)


Malicious Robots
惡意機器人


Parameter Tampering
網頁程式參數竄改


Brute Force Login
暴力破解登入


Malicious Encoding
含惡意編碼的網頁


Web Server and Platform Attacks
Web服務軟體與作業系統弱點/漏洞攻擊


Directory Traversal
目錄遍歷漏洞、資訊泄露漏洞、非授權文件包含漏洞


Site Recon
網站掃描


OS Command Injection
系統指令碼注入攻擊


Cross Site Request Forgery(CSRF)
跨網站偽造請求,會將使用者導至偽造的網站(CSRF)


Google Hacking


Remote File Inclusion Attacks
遠端夾檔攻擊


Illegal Encoding
非法編碼


Credit Card Exposure
信用卡卡號外漏


Patient Data Disclosure
病患個人資料洩漏


Corporate Espionage
企業間諜


Phishing
釣魚式攻擊


Data Destruction
資料破壞