SAS

SAS 資訊安全 (15)

教學目標

初步了解如何修改 SAS Web Application Server 所對應「server.xml」設定檔中資料庫帳號的密碼 。

重點概念

首先在企業中的營運系統通常會被資安單位要求一年必須變更資料庫帳號的密碼,我們能夠透過 SAS Deployment Manager 工具和 SAS Management Console 工具變更 SAS 平台中所使用資料庫帳號的密碼,但是不同的解決方案可能會需要修改 SAS Web Application Server 所對應「server.xml」設定檔中資料庫帳號的密碼,此時我們將會發現密碼為「變數」,雖然我們能夠將密碼設定輸入明碼,但是資安單位理論上會不允許將密碼明碼直接設定於「server.xml」設定檔中,所以我們要如何解決此問題呢?

接著我們針對「server.xml」設定檔中資料庫帳號的密碼為「變數」的問題,必須先了解「變數」設定在哪呢?事實上「變數」主要設定在「catalina.properties」設定檔中「變數」進行設定,但是我們將會發現「變數」值卻是「s2enc://」開頭的加密字串,所以我們必須透過下述指令產生加密字串,請注意使用時必須加上「s2enc://」開頭字串。

1
2
> set TCHOME=D:\SASHome\SASWebApplicationServer\9.4
> java -cp %TCHOME%\lib\com.springsource.org.bouncycastle.jce-1.46.0.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\lib\tcServer.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\bin\tomcat-juli.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\lib\tomcat-coyote.jar -Dcom.springsource.tcserver.security.PropertyDecoder.decoder_prefix=s2enc:// com.springsource.tcserver.security.PropertyDecoder -encode "This!sTheSpringSourcePassphrase" 123qweASD

再來我們能夠透過以下指令驗證加密字串是否正確,若是我們針對加密字串解密之後正確無誤時,我們就能夠將該加密字串加上「s2enc://」開頭字串修改「catalina.properties」設定檔中的「變數」值。

1
2
> set TCHOME=D:\SASHome\SASWebApplicationServer\9.4 
> java -cp %TCHOME%\lib\com.springsource.org.bouncycastle.jce-1.46.0.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\lib\tcServer.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\bin\tomcat-juli.jar;%TCHOME%\tomcat-7.0.55.A.RELEASE\lib\tomcat-coyote.jar -Dcom.springsource.tcserver.security.PropertyDecoder.decoder_prefix=s2enc:// com.springsource.tcserver.security.PropertyDecoder -decode "This!sTheSpringSourcePassphrase" m0tiNibSDXgoHwzm/IDNmg==

最後當我們修改「catalina.properties」設定檔完成之後,我們必須重新啟動相關的 SAS Web Application Server 伺服器,此時就能夠正常啟動囉!至於有關更進階的設定則建議參考 Vmware vFabric 官方文件Pivotal tcServer 官方文件。除此之外 SAS 9.4 平台中,我們必須根據不同版本 M1 至 M5 參考 SAS 官方文件中對應版本的指令進行密碼字串加解密,不然會發生許多問題,導致伺服器無法正常解密取得正確的密碼字串。

相關資源

SAS 資訊安全 (14)

教學目標

初步了解如何透過 IIS 伺服器產生伺服器憑證檔 (.pfx) 在安裝與設定 SAS 平台時使用安全通訊的 HTTP 通訊協定。

重點概念

首先許多企業皆以 IIS 伺服器產生伺服器憑證檔 (.pfx),此時我們若要在安裝與設定 SAS 平台時設定 SAS Web Server 的通訊協定為使用安全通訊的 HTTP 通訊協定,則必須先將伺服器憑證檔 (.pfx) 透過下述指令轉成私密金鑰檔 (.key) 和伺服器憑證檔 (.pem)。

1
2
3
# openssl pkcs12  -in  iis_ssl.pfx -nodes -out server.pem
# openssl rsa -in server.pem -out server.key
# openssl x509 -in server.pem -out server.crt

接著建議先將根憑證檔、中繼憑證檔和伺服器憑證檔,依照由上至下的順序匯入至 SAS 的 Java 金鑰儲存區中,此時我們可能只會有伺服器憑證檔,則要如何透過伺服器憑證檔取得根憑證檔和中繼憑證檔呢?其實僅需先安裝伺服器憑證檔之後,再透過憑證匯出精靈的功能匯出「Base-64 編碼的 X.509 (.CER)」格式的檔案。

再來透過「SAS Deployment Manager 工具」依照由上至下的順序匯入至 SAS 的 Java 金鑰儲存區中,主要是選取「管理受信任燜證授權套件組合」中的「將憑證增加到受信任憑證授權套件組合」的工作進行憑證檔的匯入,請注意若是我們沒有按照根憑證檔->中繼憑證檔->伺服器憑證檔順序進行匯入就會發生「驗證憑證路徑失敗」的錯誤訊息。

最後當我們匯入憑證檔至 SAS 的 Java 金鑰儲存區中時,就能夠在「SAS 部署精靈」中指定憑證和私密金鑰的路徑,分別為「指定指向此電腦的 X.509 憑證路徑和一名稱」指定伺服器憑證檔的路徑,以及「指定指向 RSA 私密金鑰不受複雜密碼保護的路徑」指定私密金鑰的路徑。

相關資源

SAS 基本介紹 (29)

教學目標

初步了解如何免費使用 SAS University Edition 撰寫 SAS 程式的基本概念。

重點概念

首先我們皆知道 SAS 是付費軟體,但事實上 SAS 已經有提供給學術研究使用的版本,也就是「SAS® University Edition」,這版本主要是在本機電腦以「Oracle VM VirtualBox」掛載 Linux Redhat 虛擬機器的方式自動啟動 SAS Studio 網站應用程式伺服器,以利我們透過瀏覽器連線至「http://localhost:10080」開始練習 SAS 程式的撰寫。

接著我們如何開始呢?主要有五個步驟,分別為:

  1. 透過 SAS 官方網站下載「SAS University Edition 」的「unvbasicvapp__XXX.ova」虛擬機器檔案。
  2. 透過 Oracle 官方網站下載安裝「Oracle VM VirtrualBox」工具檔案,接著進行安裝。
  3. 開啟「Oracle VM VirtrualBox」工具,點選「檔案」->「匯入應用裝置」,然後點選「unvbasicvapp__XXX.ova」虛擬機器檔案,按下「下一步」->「匯入」。
  4. 點選「SAS University Editon」,按下「啟動」,當出現「Welecome to your SAS University Edition Virtual Application」之後,就能夠開啟瀏覽器輸入「http://localhost:10080」開啟「SAS University Edition Virtual Application」網站。
  5. 點選「啟動 SAS Studio」或「啟動 Jupyter Notebook」就能夠開始透過本機電腦撰寫 SAS 程式。

再來若我們使用 Windows 10 作業系統啟動「SAS University Editon」虛擬機器時,發生「VT-x is not available (VERR_VMX_NO_VMX).」的錯誤訊息,則請開啟「Windows PowerShell」執行以下指令,就能夠解決此問題。

1
> dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

最後若我們要撰寫程式除了能夠輸入「http://localhost:10080/SASStudio」網址開啟「SAS Studio」應用程式網站之外,更能夠輸入「http://localhost:18888/」網址開啟「Jupyter Notebook」應用程式網站。若你是新手則我個人建議使用「SAS Studio」應用程式網站,因為有提供視覺化的操作介面方便探索資料來源和產生範例程式,但若之前使用過 Python 習慣「Jupyter Notebook」中一段一段的操作方式,則建議使用「Jupyter Notebook」應用程式網站。

相關資源

SAS 基本介紹 (28)

教學目標

初步了解 SAS 產品如何因應歐盟通用資料保護規則 (GDPR) 法規的基本概念。

重點概念

首先在今年五月歐盟通用資料保護規則 (GDPR) 正式實施,這會是影響全球資料保護最大的法規。然而在了解 GDPR 之前,必須先針對個人識別資訊有基本概念,在未來談論所有個資保護相關的法規遵循時,必須要考慮個人識別資訊,像是姓名、性別、電話、住址、身份證字號、網路瀏覽器中的 Cookie、網路 IP 位址、生物特徵、…等。此外有關個資的蒐集、處理和利用,則必須先取得當事人的同意,以及針對當事人針對個人資料有可攜權、被遺忘權和反對被自動化剖析權利,因此當事人有權了解特定服務是如何利用大數據分析、機器學習和人工智慧等技術應用,針對個人資料進行分析,這將會是未來技術上一大挑戰。

接著 SAS 解決方案因應歐盟 GDPR 法規主要有五個步驟,分別為:

  1. 存取:存取我們所擁有的資料,並且了解這些資料在哪裡和暴露情況。
  2. 識別:剖析資料,並且解決資料品質問題。
  3. 治理:透過角色和責任建立治理,以利業務和 IT 保持資料一致性。
  4. 保護:主要透過存取、識別和治理進行資料保護
  5. 稽核:有能力產生報表、資料流程視覺化、資料存取和合規性等稽核。

再來 GDPR 要求需要將個人資料作為企業資產,此時針對歐盟通用資料保護規則 (GDPR) 的解決方案我們能夠透過 SAS 9 產品進行因應,隨著企業組織收集和使用資料能力不斷增,管理資料的複雜性也不斷增加,像是我們能夠透過 SAS Data Management DataFlux Studio 產品針對資料進行存取和識別,像是建立資料工作進行個人資料識別分析和擷取個人資料,並且我們能夠透過 SAS Business Data Network 產品針對資料進行治理,以及我們能夠透過 SAS Federation Server 產品針對資料進行保護和稽核。

最後 GDPR 法規有新的市場驅動因素讓企業有新的競爭優勢,我們需要知道何時收集和處理個人資料,並且取得使用者同意。此外使用者擁有存取、糾正和刪除個人資料等權利,並且個人資料保護同時也就資料管理的問題,因此 GDPR 為企業組織提供整體資料管理和治理的機會,以利提高效率、降低成本和符合法規規範。

相關資源

SAS 資料科學 (7)

教學目標

初步了解 SAS Enterprise Miner 的基本概念。

重點概念

首先最近開始學習 SAS Enterprise Miner 軟體,主要是報名「Applied Analytics Using SAS Enterprise Miner」線上課程,其中主要針對「SAS Enterprise Miner 14.2」進行十個單元的教學,分別為:

  1. 基本介紹。
  2. 模式探索。
  3. 預測模型。
  4. 決策樹。
  5. 迴歸模型。
  6. 類神經網路。
  7. 模型評估。
  8. 模型實作。
  9. 特別主題。
  10. 案例學習。

接著透過十個單元的教學將會了解如何定義 SAS Enterprise Miner 專案,探索資料圖表,針對更佳的分析結果修改資料,了解預測模型,比較和解釋複雜模型、進行關聯分析、… 等進階分析相關應用。

再來若我們要用 SAS Enterprise Miner 軟體進行進階分析,則會有五個步驟,分別為:

  1. 取樣。
  2. 探索。
  3. 修改。
  4. 建模。
  5. 評估。

其中每個步驟將會有對應的工具列以利我們進行分析應用,此外還有包括時間序列、信用評分、文字探勘、…等分析應用。

最後當我們完成每個單元的課程和習題之後,將會獲得「SAS 認證學習資料科學」的徽章,感覺不錯,至於下一步則計劃七月參加 SAS Enterprise Miner 官方認證考試更進一步取得 「SAS 認證預測模型建置設計師」。

總結 SAS Enterprise Miner 軟體真的是非常棒的預測模型建置工具,其視覺化的拖拉操作將能夠我們很輕鬆的建立預測模型,以利進行進階的分析。

相關資源