查看單個文章
舊 2004-06-21, 02:13 PM   #12 (permalink)
mic64
註冊會員
 
mic64 的頭像
榮譽勳章
UID - 582
在線等級: 級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時
註冊日期: 2002-12-06
VIP期限: 2007-04
住址: MIB總部
文章: 412
精華: 0
現金: 499 金幣
資產: 499 金幣
預設

讓網站處理信用卡


在這個部分,你將注意:

處理信用卡的需求。

處理信用卡中的各個階段。

讓我們先看看在電子商務網站上接受信用卡付款所需要的元件。2
信用卡處理的需求


要讓網站能夠處理信用卡,你需要:

網站核可的商業帳戶

付款處理軟體

安全的訂購表單

網站核可的商業帳戶


商業帳戶為網站上負責接收並持有相關企業交易資金的帳戶。網站核可的商業帳戶類似你在郵購或零售商店中擁有的帳戶,但它並不需要信用卡的實體存在。當客戶購物並使用信用卡付款時,資金會自動由客戶的信用卡帳戶中傳送到你的商業帳戶中。3
銀行或金融組織將會為你開啟一個商業帳戶。取得商業帳戶是當你決定在網站上進行交易時所需執行的第一個步驟。理想的情況下,為了網站核可的商業帳戶,你應該向你現有貸款帳戶或抵押帳戶所在的銀行申請。如果你在銀行中已經擁有帳戶超過兩年,它將會幫助你申請。根據每家銀行的規定,你可能需要提供銀行財務證明、稅務文件影本,可能的話還包括存款。

你也需要告知銀行你在這個帳戶期望的訂貨量大小與平均的月交易量。某些銀行可能要求你在帳戶中維持某些資金當作詐欺或償還的保險。

另一種直接向銀行申請的方法是與專門為企業取得商業帳戶的獨立服務組織接觸。這類的組織將會代表你向銀行或金融機構申請並為你取得網站核可商業帳戶。你將必須遵守銀行的需求並根據組織的服務來付款。某些組織可能透過它們的帳戶執行你的交易。在這類例子中,你將依賴服務公司並遵守銀行的所有需求。如果該服務公司不再處理信用卡,則你必須從無到有申請一個網站核可商業帳戶。

當你申請網站核可的商業帳戶時,你必須指定你計畫販售的產品或服務,銀行需要確認產品或服務以開始販售。

當你取得一個網站核可的商業帳戶,你將得到一個商業帳號與終端帳號。

網站核可商業帳戶的成本


網站核可商業帳戶包含了某些成本。這些成本包括有:4
應用程式費用

折扣比率

往來費用

每月費用

儲備金成本

當你申請商業帳戶,你必須付出某些款項。大多數的銀行會收取無償還的應用程式費用,意指當銀行不再承認你的應用程式,你將無法獲得任何賠償。

折扣比率是銀行為你管理商業交易而向你收取在總交易量中所佔的比率費用。折扣比率依據訂單的大小與每月交易的總量來決定,如同回扣費用比率一樣。5
往來費用是你的銀行支付給客戶的銀行來將資金從客戶的帳戶轉帳到你的帳戶工作所需的費用。總數取決於傳送的金額。你將為每一筆交易付出費用給銀行。一般來說,這筆費用是折扣比率的一部份。

你也需要為使用商業帳戶而付給銀行一筆固定的月費。你可能會有一個最低交易總量,如果每月的折扣數量不超過最小值,將只收取的固定費用。

最後,你需要為任何有異議的款項付費給銀行。這代表除了為遺失貨物或運費付款,你還需要付給銀行回扣。

你在銀行或金融機構的選擇上取決於商業帳戶每月的成本以及預估的商業收入。同時也取決於銀行所支援的信用卡種類。理想的情況下,銀行應該要能夠服務所有主要的信用卡如MasterCard、Visa、American Express與Discover等。

付款處理軟體


一但你擁有商業帳戶,你需要一個可以讓資金從客戶的信用卡帳號中轉移到你的商業帳戶的機制。這樣的過程是透過付款處理軟體來完成。這樣的軟體會與你的網站、客戶的信用卡帳號,以及提供你商業帳戶的金融機構互相搭配。

當客戶發出訂單,付款處理軟體會執行下列工作:6
接收由客戶所輸入的信用卡詳細資料。
與負責接收的金融機構進行接觸。該機構則負責與客戶的信用卡發卡銀行接觸,進行驗證工作。
負責接收的金融機構會檢查信用卡戶頭是否有足夠的資金可以為購買的東西付款。
傳送一份有關交易的確認給商業帳戶的銀行。
現在讓我們看看付款處理軟體必須擁有的特性:

它必須是符合經濟效益的。

它必須是安全的。7

它必須是容易在你的網站上實施的。

成本是你選擇付款處理軟體時最主要的考量。使用付款處理軟體的成本包括了開發與實作成本、維護成本,以及每一筆交易所帶來的成本。

當客戶發出他或她的信用卡明細,這些資訊應該在安全的連結上傳輸以進行驗證工作。信用卡的明細是由付款處理軟體進行驗證,而且如果明細是正確的,付款處理軟體會將這份資訊傳送給你的銀行,銀行會與客戶的銀行進行接洽以確認資金的轉移。付款處理軟體負責所有的資料傳輸,因而必須提供資料的安全性考量。


--------------------------------------------------------------------------------
注意
你將在本章的後半部學習更多有關網際網路安全性上的需求與技術。


--------------------------------------------------------------------------------

你應該要能夠快速地將付款處理軟體整合到你的應用程式中,並且不需花費太多的成本。開發時間與使用付款處理軟體所需費的工夫應該愈低愈好。

在網站上實作信用卡處理系統最好方法是使用提供off-the-shelf付款處理軟體企業所提供的服務。

選擇信用卡付款處理軟體考量的因素8


你可以避免所有開發軟體上的困擾而改為使用線上可取得的套裝軟體。要使用這類的軟體,你需要向提供付款處理軟體的企業進行註冊。你的商業銀行將為軟體及交易處理付出費用。不同的企業有不同的交易處理收費標準。有些企業是以每一次的交易處理為基準,而有些企業則以為你處理的交易數量來進行收費。例如,你可能需要為1到100筆的交易付出特定的費用,101到300筆交易則是另一種費用。

其他幫助你選擇付款處理軟體的考量包括有:

支援多種信用卡

付款處理軟體應該要能夠支援所有你的網站能夠接受的信用卡。
與銀行或金融機構間的關係

提供付款處理軟體的企業與你的銀行必須和你共同合作以提供最佳的服務。許多付款處理軟體的企業幫助你從銀行獲得商業帳戶。
在電子商務網站上實施的簡易性9

你應該要能夠輕易地將付款處理軟體整合到你的網站中。對你而言,應該只需要做些微的維護工作。如果軟體有任何的更新或升級,你應該要能以最低的成本來完成這些工作。
擴充性

付款處理軟體應該能夠處理漸增的網站流量與處理負荷。
交易紀錄

交易必須紀錄在你可以存取的資料庫中。這樣將使你可以分析交易並使用資料來進行錯誤更正。
付款證明

當資金已經轉移到你的商業帳戶時,付款處理軟體應該產生可以傳送給客戶的付款證明。10較受歡迎的付款處理軟體企業有CyberCash、Authorize.net,以及PCAuthorize。

安全的訂購表單


客戶對於電子商務網站的安全性與信賴度感到相當憂慮。這是他們擔心信用卡號碼被偷竊並盜用的天性使然。要解決這個問題,你需要:

讓網站上經過認證的客戶感到安心。

實作傳輸重要資料給付款處理軟體的安全方法。

實作允許客戶為他們訂購的物品透過安全介面來付款的系統。

讓網站上經過認證的客戶感到安心11


你可以讓客戶相信,在你的網站上透過網站的設計與實作適當的安全評估,來保證他們信用卡的詳細資料是安全無慮的。

你的網站應該設計成方便且易於使用。下面是一些你在設計網站時應該遵守的方針:

客戶應該能夠在最少的滑鼠點選次數內發送出訂單。

按鍵應該標示清楚。執行任何任務的結果應該清楚地標示。例如,當客戶點選 Order Now 按鍵,他應該知道信用卡處理程序已經開始。

一但訂單完成,應該提供客戶再確認的資訊。你可以顯示內含訂單號碼、訂單明細、聯絡人名稱、電話號碼,與可供查詢的電子郵件地址等資訊的訂單確認網頁。12

你的企業名稱與地址應該清楚地顯示在網站上。

除了這些評估方式,你可以加入網際網路消費者保護群組的任一公司並在你的網站上展示該公司的標誌。你也可以顯示信用卡安全性的相關資訊,以及如何實作。

在網站上實作安全評估


企業的成長取決於企業的安全性以及客戶在線上發送付款明細時感覺的安全程度。基於安全考量,你需要保護伺服器、驗證網站,以及對所有會提供重要資料給網站的各類使用者進行驗證。為此,你需要:

包含公用鑰匙的數位證書。

輸重要資料的安全機制。

讓我們詳細地看看這些需求。13
數位證書與公鑰


數位證書是一個內含有關擁有人與發行認證權限等相關資訊的文字檔。它同時也包含用來驗明認證權限加密過的資訊。數位證書和公鑰加密技術會一起在網站上使用。

公鑰加密技術是一個使用兩組鑰匙進行加密與解密的密碼系統。這兩組鑰匙分別是:

公鑰,會散佈到所有需要傳送資料到你網站的使用者手中。

私鑰,由你負責保存並安裝在伺服器上。

擁有公鑰的網站客戶可以要求鑰匙的驗證擔保憑據。

現在讓我們討論數位證書與公鑰如何能夠確保安全的資料傳輸。假設有一個想要在你網站上傳送信用卡明細的客戶,他首先會獲得數位證書並透過驗證權限對該證書進行認證的步驟。如果認證是正確的,資料會使用公鑰進行加密,並傳送到你的網站。你會產生一組公鑰/私鑰組並將公鑰送出以供驗證權限。驗證權限會將公鑰放入數位簽名中。當你接收到資料,你可以使用私鑰對資料進行解密。如果資料在傳輸的過程遭到中斷,資料將無法進行解密,因為用來解密的鑰匙除了你的網站之外,其他地方並沒有。14
要實作這項功能,你需要取得數位證書並將之安裝在你的網站上。你可以將驗證權限之一加入數位簽名之中。一些廣為人知的確認證明包括有VeriSign、CyberTrust與GTE。你需要為數位簽證付費。金額隨確認證明的不同與你想獲得驗證資料的形式而定。

如同商業帳戶,數位簽證的獲得需要耗費時間。你應該在一開始開發商務網站時,就進行數位簽證的申請。

用來傳輸重要資料的安全機制


為了確保伺服器與連結是安全的,並防止未經核可的取用,你可以使用:

Secure Socket Layer(SSL)協定。

ecure Electronic Transaction(SET)協定。

讓我們來看看這些協定如何保護你的網站與資料傳輸。15
Secure Socket Layer(SSL)是一個以協定(如HTTP、FTP與NNTP等)對交易進行加密動作的規則。你可以在你的網站使用SSL與數位簽證。當你使用SSL來傳輸資料時:

資料會被加密。

在來源與目標伺服器中會建立安全連結。

伺服器端的驗證會被啟動。

SSL同時也提供了驗證客戶端身份的選擇性功能。

在信用卡的處理程序上,你應該將訂購表單放置在一個有SSL功能的伺服器上。對於需要SSL來傳送資料的網頁其URL位址的起始部分變為「https」而不是「http」。

想取得更多有關SSL的資訊,請到16 http://msdn.microsoft.com/workshop/server/iis/websec.asp 上查看。

安全的電子化傳輸(SET)是一個由Microsoft、Netscape、MasterCard與Visa等聯合設計的開放式標準,用來在網際網路上處理信用卡交易。SET使用了複雜的驗證授權方式負責驗證交易中每個實體是否為正確的結合。這些實體包括了客戶、客戶的信用卡發行銀行、你和你的商業帳戶發行單位等。SET以這種方式區分交易並保持每一個實體只知道交易中的相關部分。例如,零售商只會知道訂購的物品、帳款總額,以及是否已付款等。而零售商對於客戶端採用的付款方式仍是一無所知。同樣地,客戶的信用卡發行銀行也將清楚地知道應收帳款總計是多少,但它並不會知道客戶購買了哪些商品。

下面是一些確保你網站安全的額外技巧:

如果你需要儲存網站客戶的信用卡詳細資料,你應該將資訊以加密資料的方式儲存在資料庫中。

你可以使用防火牆。防火牆是一種保護組織網路免於受到外部的通訊系統,如網際網路等侵入的機制。它實作的方式是利用一台擁有兩張網路卡和一套特殊防火牆軟體的電腦來進行實作。一張卡連接到組織的LAN,另一張則連結到網際網路。所有在這兩種網路中傳遞的資訊都必須透過這些障礙。防火牆軟體會分析通過電腦的每一個資訊封包,根據組織所訂定的規則來決定接受或拒絕該資訊封包。

你應該持續更新安全工具與技術。為此,你可以使用位於Microsoft Security Notification server (17 http://www.microsoft.com/technet/security/default.asp )或位於Microsoft Security Advisor Webside( http://www.microsoft.com/security/default.asp )所公佈的安全性公告。

實作允許客戶為訂購產品付款的安全介面


你可以使用目前可以獲得的電子錢包(wallet)服務的任何一種來實作一次購物經驗。這些服務允許客戶儲存他們個人的詳細資料於安全的地方。當客戶瀏覽電子商務網站並購買商品,購買或採購訂單的連結幫助你直接從中央伺服器上接收客戶的詳細資料。這類服務的範例是Microsoft Passport。你將在本章中學到更多有關Microsoft Passport的相關資訊。

信用卡處理中的各個階段18


付款處理軟體對客戶與網站擁有者來說應該是要透明的。你應該要能夠藉著加入適當的程式到訂購表單中來使用套裝軟體。在將軟體合併到你的網站之前,你需要決定是否處理並顯示即時的資料,或在線上處理信用卡。當你販售線上資訊與軟體或顯示經過認證的網頁時,你將需要處理即時資料的能力。

信用卡處理程序包括三個程序:

授權
擷取
償還
其詳述如下:

1 授權階段19


當付款處理軟體接收到信用卡明細準備處理時,授權階段開始。在這個階段中,付款處理軟體將執行下列工作:

確認信用卡明細。
檢查該帳戶是否有足夠的資金可以為訂購的產品付款。
同時,在付款時信用卡會受到掌握,直到物品順利地送到客戶手中。

在授權階段與擷取階段之間,零售商必須履行訂單並運送物品給客戶。如果在授權階段結束前物品並未運送到客戶手中,你必須重新授權。這將代表額外的交易費用。

2 擷取階段


當廠商運送商品並寄出一份擷取要求時,擷取階段開始。在這個階段中,銀行會評估授權資料並將資金由客戶的銀行轉移到廠商的帳號中。20
對於可以即時存取的線上服務、驗證過的網頁,或可下載的軟體,其授權階段與擷取階段會在同時間發生。

如果訂單是由多種物品組成,且其中只有少數項目已經送交,你可以只針對已完成運送的物品送出擷取要求。這樣的結果是,帳單中一部份的金額會轉移到廠商的帳號。你可能需要重新授權剩下還未送出貨品的金額以進行付款工作。這代表額外的成本。

3 償還階段


客戶可能會取消交易,或退回已經收到的商品。在這種情況下,你需要償還訂單的費用。償還是擷取階段的相反。在這個階段中,你會提供授權號碼以及償還的數量。要回應償還的要求,處理器會將已經轉移到廠商帳號的資金轉回客戶的帳號。

實作信用卡處理程式


在這個部份,你將看到:

在Site Server Commerce 3.0版所產生的在網站上實作信用卡處理程序。21

在你的網站上實作Microsoft Passport。

為信用卡處理程序與Site Server Commerce Edition 3.0進行整合


要將信用卡處理程序與Site Server Commerce 3.0版整合在一起,你必須執行下列工作:

使用負責處理信用卡訂單的管線元件。
建立管線設定檔將元件結合到管線的步驟中。
如果你是與付款程序處理公司合作,該公司將提供你外掛到Microsoft商務管線中所需要的軟體元件。例如,CyberSource軟體提供了Commerce物件,你可以輕易地將它外掛到Microsoft商務管線中,使它成為Site Server電子商務架構的一部份。

你可以使用Microsoft Commerce Pipeline Editor將元件加入管線中。這個編輯工具同時允許你建立對應到元件中不同步驟的設定檔。管線物件會在管線執行之前載入這個檔案。22
一般來說,你將在付款階段中把付款處理軟體元件加入採購管線。同樣地,你需要為使用mscsorderform物件作為輸入的授權、擷取與償還等撰寫程式來進行處理。

現在,讓我們看看用來授權的程式碼。在下面的程式碼中,我們將加入購買者與信用卡資訊到訂購表單中並執行元件與授權管線(auth.pcf)。

<%
Function Authorization(mscsOrderForm)
Dim mscsPipeContext, errorLevel
'Set pipe context
mscsPipeContext("Language") = Request.Form("country")
mscsOrderForm.Value("cc_name") =
Request.Form("creditc_name")
mscsOrderForm.Value("cc_type") =
Request.Form("creditc_type")
mscsOrderForm.Value("_cc_number") =
Request.Form("creditc_number")
mscsOrderForm.Value("_cc_expmonth") =
Request.Form("creditc_expmonth")
mscsOrderForm.Value("_cc_expyear") =
Request.Form("creditc_expyear")
mscsOrderForm.Value("bill_name") =
Request.Form("bill_name")
mscsOrderForm.Value("bill_phone") =
Request.Form("bill_phone")
mscsOrderForm.Value("bill_street") =
Request.Form("bill_street")
mscsOrderForm.Value("bill_city") =
Request.Form("bill_city")
mscsOrderForm.Value("bill_state") =
Request.Form("bill_state")
mscsOrderForm.Value("bill_zip") = Request.Form("bill_zip")
mscsOrderForm.Value("bill_country") =
Request.Form("bill_country")
mscsOrderForm.Value("bill_country") =
Request.Form("first_name")
mscsOrderForm.Value("_shopper_first_name") =
Request.Form("last_name")
mscsOrderForm.Value("_shopper_email") =
Request.Form("email")
mscsOrderForm.Value("_shopper_phone") =
Request.Form("phone")
mscsOrderForm.Value("_shopper_street") =
Request.Form("street1")
mscsOrderForm.Value("_shopper_city") = Request.Form("city")
mscsOrderForm.Value("_shopper_state") =
Request.Form("state")
mscsOrderForm.Value("_shopper_zip") = Request.Form("zip")
mscsOrderForm.Value("_shopper_country") =
Request.Form("country")
mscsOrderForm.Value("__total_total") =
Request.Form("total_Amount")
'Create a pipeline object and load a configuration file
set pipeline = Server.CreateObject("Commerce.MtsPipeline")
'Set pipeline configuration and log files
Call
pipeline.LoadPipe(d:\inetpub\wwwroot\fivelakes\config\auth.pcf)
Call pipeline.SetLogFile("c:\temp\flpipeline.log")
'Run the pipeline for authorization
errorlevel=pipeline.Execute(1,mscsOrderForm,pipeContext,0)
' Depending on the result you may run this process again
Authorization = errorLevel
end function
%>
下面的函式使用了orderform與order_number當作輸入並執行擷取的動作。order_number為這個階段所要求的驗證號碼。

<%
Function Capture( mscsOrderForm )
Dim mscsPipeContext,errorLevel
mscsOrderForm.Value("_total_total") =
Request.Form("amount_capture")
mscsOrderForm.Value("_shopper_bill_orderno") = "Your order
number"
mscsOrderForm.Value("_shopper_first_name") =
Request.Form("first_name")
mscsOrderForm.Value("_shopper_last_name") =
Request.Form("last_name")
mscsOrderForm.Value("_shopper_email") =
Request.Form("email")
mscsOrderForm.Value("_shopper_phone") =
Request.Form("phone")
mscsOrderForm.Value("_shopper_street") =
Request.Form("street1")
mscsOrderForm.Value("_shopper_city ") =Request.Form("city")
mscsOrderForm.Value("_shopper_state") =
Request.Form("state")
mscsOrderForm.Value("_shopper_zip") = Request.Form("zip")
mscsOrderForm.Value("_shopper_country ") =
Request.Form("country")
'Set pipe context
mscsPipeContext("Language") = Request.Form("usa")
'Create a pipeline object and load a configuration file
set pipeline = Server.CreateObject("Commerce.MtsPipeline")
'Set pipeline configuration and log files
Call
pipeline.LoadPipe(d:\inetpub\wwwroot\fivelakes\config\capture.pcf)
Call pipeline.SetLogFile("c:\temp\flpipeline.log")
'Run pipeline for capture
errorLevel = pipeline.Execute(1, mscsOrderForm,
pipeContext, 0)
'Depending on the result you may run this process again
Capture = errorLevel
End Function
%>
償還處理程序同時也利用orderform物件當作輸入。你將加入購買者與認證授權的詳細資料並執行該元件,如下面程式碼所示:

<%
Function Refund( mscsOrderForm )
Dim mscaPipeContext,errorLevel
mscsOrderForm.Value("_total_total")
Request.Form("amount_refund")
mscsOrderForm.Value("_shopper_bill_orderno") = "Your order
number"
mscsOrderForm.Value("_shopper_first_name "
Request.Form("first_name")
mscsOrderForm.Value("_shopper_last_name") =
Request.Form("last_name")
mscsOrderForm.Value("_shopper_email") =
Request.Form("email")
mscsOrderForm.Value("_shopper_phone") =
Request.Form("phone")
mscsOrderForm.Value("_shopper_street") =
Request.Form("street1")
mscsOrderForm.Value("_shopper_city") = Request.Form("city")
mscsOrderForm.Value("_shopper_state") =
Request.Form("state")
mscsOrderForm.Value("_shopper_zip") = Request.Form("zip")
mscsOrderForm.Value("_shopper_country") =
Request.Form("country")
'Set pipe context
mscsPipeContext("Language") = Request.Form("usa")
'Create a pipeline object and load a configuration file
set pipeline = Server.CreateObject("Commerce.MtsPipeline")
'Set pipeline configuration and log files
Call
pipeline.LoadPipe(d:
\inetpub\wwwroot\fivelakes\config\refund.pcf)
Call popeline.SetLogFile("c:\temp\flpipeline_log")
'Run pipeline for refund
errorLevel = pipeline.Execute(1, mscsOrderForm,
pipeContext, 0)
'Depending on the result you may run this process again
Refund = errorLevel
End Function
%>23
使用Microsoft Passport


根據網際網路上購買行為的研究指出,當被要求填寫內含詢問信用卡號碼與個人詳細資料的表單時,客戶會放棄進行交易。因此你可以在網站上使用Microsoft Passport來解決這個問題。

什麼是Microsoft Passport?


Microsoft Passport是由Microsoft所提供的兩種服務組合而成的:

Single Sign-In (SSI)服務能夠使用單一名字與密碼登入大部分的網站。

Wallet服務幫助客戶在離線的狀況下能夠快速地購買商品與服務。

其分別詳述如下。24
SSI服務


Microsoft Passport讓客戶可以使用相同的登入名稱與密碼來瀏覽所有參與Passport的網站。他們只需指定一次個人的詳細資料。Microsoft Passport的成員會被賦予一個唯一的Passport ID,與該成員而非電腦結合在一起。因此,成員們可以使用任何的電腦來瀏覽所有加盟的網站。

SSI同時也讓你可以根據客戶的Passport ID,提供客戶個人化的網站瀏覽經驗。

Wallet服務


Passport wallet儲存了成員們的信用卡號碼、帳單及送貨地址。這些資訊只有在Passport成員網站要求時,而且該網站必須經過Microsoft認證為Passport零售商時,才會與那些參與Passport的網站共同分享。

Passport wallet服務是高度安全的,因為它使用標準HTTP與SSL將表單資料「傳送」到網站。 同時,客戶並不需要安裝任何的客戶端軟體,因為Microsoft Passport是以伺服器為基礎的。

Microsoft Passport的優點25


如果你在網站上使用Microsoft Passport,你將能夠達成:

增加銷售與註冊。

客源的增加並且加深客戶對網站的印象。

客戶將不用屢次輸入他們個人的詳細資料。他們會從參與Microsoft Passport網站的瀏覽與購買中對其作出使用的方便性與安全性等評價。

對網站的消費者而言,Microsoft Passport是:

容易使用的

Microsoft Passport讓客戶能夠使用單一名稱與密碼來登入網站並取得網站提供的服務。他們可以只藉由滑鼠點選一次來登入其他參與的網站。26
快速的

Microsoft Passport提供客戶一個電子錢包讓客戶可以明確地描述自己的相關資訊。這些資訊包含個人與信用卡的詳細資料。藉著使用他們個人檔案的資訊與電子錢包,客戶能夠快速地進行線上訂購,而不用大費周章地輸入資料。
安全的

個人檔案與電子錢包資訊都是以加密的方式儲存,並且由嚴格的隱私策略進行保護。同時,一旦客戶登出網站,個人資訊會由電腦上被刪除。因此當客戶在共享或公用電腦上使用Microsoft Passport時,可以感到放心。
如何在網站上實作Microsoft Passport


要在你的網站上實作Microsoft Passport的SSI與wallet服務,你必須先註冊你的網站。

下面介紹的是在網站上實作單一登入服務時,軟體與硬體的需求:27
硬體需求


擁有Pentium處理器的x86電腦

64MB RAM

CD-ROM

擁有唯一IP位址的網路卡

軟體需求


Windows 2000與IIS 5.0;Windows NT 4.0與Service Pack 3.0或更新版本,以及IIS 4.0,與IE 4.0或更新版本28

SSL證明

在網站上實作單一登入服務


要在網站上實作單一登入服務,你必須安裝Passport Manager,該軟體可以在Passport single sign in SDK中取得。然後你可以藉著加入伺服端script與UI元素到網站中,來對網站進行開發與測試等工作。

你需要撰寫程式來收集客戶的資訊,並且在客戶登出時刪除cookies。

下面的程式將在登出時刪除與Passport相關的cookies。你需要將這段程式寫入一個名為logoutgif.asp的檔案中。

<%
'Avoid browser's cache
Response.Expires=-1
Response.AddHeadr "Cache-Control ", "no-cache"
Response.AddHeader "Pragma", "no-cache"
'Deleting the two Microsoft Passport server cookies
Response.Cookies("MicrosoftPProf") = ""
Response.Cookies("MicrosoftPAuth") = ""
'Cookies are expired immediately
Response.Cookies("MicrosoftPProf").Expires = #Jan 1,1998#
Response.Cookies("MicrosoftPAuth").Expires = #Jan 1,1998#
'Removing cookies related to the Ramona site
Response.Cookies("Ramona") = ""
Response.Cookies("Ramona").Expires = #Jan 1,1998#
%>
<!-Sign-out page will show this image next to your site name
<!-#include file="signoutcheckmark.gif"->
影像檔signoutcheckmark.gif應該被放置在與logoutgif.asp相同的目錄中,如此登出的影像會顯示在Microsoft Passport server的登出網頁上。這樣的動作會在使用者登出網頁時提供使用者確認訊息。29
在網站上實作Passport wallet服務


要實作Passport wallet服務,你需要放置一個加上商標的Passport Express Purchase按鈕、Passport Wallet按鈕,或是wallet的文字連結到網站的訂單網頁。這些連結將使你能夠取得客戶的wallet詳細資料,和POSTed以當作SSL連結上的表單。你接著需要加入ASP script來接收網站所收到的POSTed資訊。

除了這些強制的步驟外,你可以:

使用文字與圖形來繪製你的網頁。

自訂化網頁。

使用CSS指定字型與背景顏色。

實作11:信用卡處理程序30


目標


在完成本實作之後,你將能夠:

在網站上實作Microsoft Passport。

在您開始之前


先決條件


在你開始進行實作之前,你必須具有:

HTML與ASP scripting的基本知識。31

熟悉Microsoft Internet Explorer與Microsoft Visual InterDev 6.0。

Internet Access。

環境設定


要完成本實作,首先你必須從<install folder>\Labs\Lab11\Ramona\StartCode將檔案複製到\\InetPub\wwwroot\Ramona目錄中。

4 預估完成所需時間:30分鐘

練習1:為網站實作Microsoft Passport32


在這個練習中,你將讓Remona網站能夠使用Microsoft Passport所提供的服務。

4 在你的網站上安裝Microsoft Passport

從網站 http://www.Passport.com/business/sdk.asp 中下載passport_sdk_v1_1.exe檔案到C:\TEMP目錄中。要讓下載能夠順利進行,你必須先登入成為Microsoft Passport的成員。
使用Windows檔案總管,瀏覽至C:\TEMP。33
雙擊 passport_sdk_v1_1.exe 將檔案解壓縮。
指定C:\Temp為檔案解壓縮所在的目錄。
在C:\Temp目錄中雙擊 Setup.exe 。34
安裝程式會執行。
輸入序號並點選 下一步 。該序號會顯示在下載passport_sdk_v1_1.exe檔案所在的網頁中。
在 Choose Destination Location 對話盒中,點選35 下一步 接受預設安裝的位置。
在 Setup Type 對話盒中,選擇 Custom 並按下36 下一步 。
在 Select Components 對話盒中,接受預設值並按下 下一步 。37
在 Select Program Folder 對話盒中,接受預設選項,並按下 下一步 。
選取 Default Web Site38 並點選 下一步 。安裝程式會中斷World Wide Web Publishing服務、安裝檔案、註冊DLL,然後重新啟動World Wide Web Publishing服務。
安裝程式會提示你重新啟動電腦。點選 完成 來重新啟動電腦。
439 在Ramona網站實作Microsoft Passport

啟動Windows檔案總管並瀏覽至\\inetpub\wwwroot\Ramona目錄中。
要將MS Passport的特性加入網站中,請先開啟payment.asp。要完成這項工作,利用滑鼠右鍵點選 payment.asp 並按下 編輯 與40 開啟檔案 。
藉著在網頁的頂端輸入下面程式碼來透過payment.asp網頁使用瀏覽器的cookies:

<%
'Avoid browser caching of page
Response.Expires = 0
Response.AddHeader "Cache-Control", "no-cache"

Response.AddHeader "Pragma", "no-cache"
%>
藉由輸入下面程式碼於步驟3程式之後,你可以建立Passport Manager物件的實體:

<%
Dim oPassMgrObj
Set oPassMgrObj = Server.CreateObject ("Passport.Manager.1")
%>
輸入下面程式碼於步驟4中輸入的程式後面,來設定Passport Manager物件的參數:41

<%
Dim ThisPageURL, TimeWindow, ForceLogin
Dim CoBrandArgs, LangID, Secure
ThisPageURL = "http://" & Request.ServerVariables ("SERVER_NAME")
ThisPageURL = ThisPageURL & Request.ServerVariables ("SCRIPT_NAME")
TimeWindow=600 'In seconds, 10 minutes
ForceLogin=False 'Not forcing user to type information to refresh
cookie
CoBrandArgs=False 'Not passing co-branding args
LangID=1033 'Default, English
' Check if over SSL using Request object server variable
If Request.ServerVariables ("HTTPS") = "on" Then
Secure = TRUE
Else
Secure = FALSE
End If
%>
藉著輸入下面程式碼於網頁的開頭部份,來顯示Passport登入以及Passport使用者介面:

<% = oPassMgrObj.LogoTag (Server.URLEncode (ThisPageURL), _
TimeWindow, ForceLogin, CoBrandArgs, LangId, Secure) %>
儲存payment.asp網頁。
4 在Site Server MMC中重新整理網站

點選工作列中的42 開始選 單,指向 程式集 ,然後選擇 Microsoft Site Server 。
指向43 Administration 並點選 Site Server Service Admin(MMC) 。
點選Commerce Host Administration的「+」符號。
利用滑鼠右鍵點選位於Commerce Host Administration下面的 <localhost>44 ,然後指向 All Task ,然後選擇 Reload All Commerce Site 。
mic64 目前離線  
送花文章: 0, 收花文章: 21 篇, 收花: 61 次