發表文章

ISO 27001 LA 主導稽核員 考照心得

圖片
由於資安事件層出不窮,資訊安全日益受到重視,然而資訊安全的層面非常的廣,除了程式開發端、伺服器端,實體資訊工作環境也是需要被防護的一環。 ISO 27001是針對ISMS (Information Security Management System)制定的標準,也是列在行政院資通安全專業證照名單內的其中一張證照。 目前許多的大企業大多有在落實ISO 27001的合規環境,除了寫程式的人常常會被稽核之外,身為App開發人員的我,也想找個時間來了解ISO 27001的規範,就算目前還沒有要當稽核員,對於資訊安全的觀念也會更加全面。 報名 網路上查都有滿多這門課的報名管道,自行選擇喜歡的機構,以及打聽一下上課的地點,有些是在高級的飯店上課,環境、伙食就會都不錯。雖然通過拿到證照才是重點,但同樣都要花這筆大錢了,當然選間上課環境更舒服的地方也會比較開心一點 🤣。 費用 平日:50000、假日班:39900 這次我是自費去上課考照的,由於沒有公司的補助,所以是選擇費用比較便宜一些的假日班去上課。 上課之前 在正式上課之前,上課的機構會先寄一份課前資安調查的題目,要求先做一份對於資訊安全的了解程度的線上測驗。雖然是說分數不達標準就無法參加此課程,但其實題目也不難,大多都是靠想像的就可以選得到正確的選項。題目都是選擇題多選,而且不是我們傳統認為的全部選擇都答對才得分,而是有勾選到正確的選項都會有得到一些分數,所以只要勾選多一點的選項就可以通過了。 開始上課 分組 到了正式上課的第一天,首先會先分組,然後成員的自我介紹。而我們這組有人來自公部門,也有人本身就是PM,也有網管,也有工程師。 老師為了讓同隊的組員有更加深認識組員的機會,用輪流介紹另一位組員的方式進行,也就是A介紹B讓大家認識、B介紹C讓大家認識、C介紹A讓大家認識。 於是就有聽到其中有一組是相關稽核背景的,實力就相當堅強。 上課 課程主要圍繞在ISO 27001:2013的條文,其中包含了「本文」與「附錄A」。 如果你也是跟我一樣是第一次接觸這個領域,一定會有很多都不太懂的地方,上課就要更專心聽,老師會針對條文中的名詞定義,加上稽核實務的對應到的條文加以比對說明。 例如:你是稽核員,當你到了受稽方現場,看到程式碼是公司裡的任何人都可以自由存取,請問不符合哪些條款? 這個時候就要去翻條文,本文跟附錄A都可以找,發現與

Android Studio Arctic Fox 載入 AAR錯誤訊息: Build was configured to prefer settings repositories over project repositories but repository 'flatDir' was added by build file 'app/build.gradle')

圖片
想要導入AAR檔案做為Library使用時,在之前Android Studio Arctic Fox之前的版本,有一項必備的步驟是在app/build.gradle加入了下列的語法,讓libs目錄做為存放library的目錄 repositories { flatDir { dirs 'libs' } } 但是如果是在Arctic Fox的版本,卻會發生以下的錯誤訊息: A problem occurred evaluating project ':app'. > Build was configured to prefer settings repositories over project repositories but repository 'flatDir' was added by build file 'app/build.gradle' 解決的方法: 1. 刪除本來的語法 repositories { flatDir { dirs 'libs' } } 2. dependencies加上 implementation fileTree( dir : 'libs' , include : [ '*.jar' , '*.aar' ]) 參考資料: https://huayig.cn/index.php/archives/101/

Mac建立Flutter開發環境建立時,執行 flutter doctor 的一些錯誤訊息

圖片
之前寫了一篇記錄實作開發環境過程的文章  如何在Mac建立Flutter開發環境 ,後來一些朋友在安裝的過程詢問了一些錯誤訊息,才發現有些執行    flutter doctor   發生的錯誤訊息,會造成有些人無法順利安裝成功,於是將沒有寫完整的部份,在這篇文章一併補充說明: 1. cmdline-tools component is missing 要解決這個問題,只要打開Android Studio的SDK Manager, 安裝最新版的Command-line tools即可。 1.1 進到 SDK Manager / SDK Tools,勾選 Android SDK Command-line Tools 1.2 確認安裝。按下ok 1.3 再次執行    flutter doctor   ,此項問題已解決 2.Some Android licenses not accepted. 這個問題的解決方法,其實有寫在訊息裡,只要需要在Terminal輸入    flutter doctor --android-licenses   即可 2.1 輸入    flutter doctor --android-licenses   ,出現對話訊息後,按下 y,再按下Enter 2.2 接下來在每個對話訊息問你是否同意的項目,都按下 y 之後,再按下Enter 2.3 再次執行    flutter doctor   ,所有Android的部份就已經都解決了 讓我們繼續解決iOS的issue... 3.Xcode installation is incomplete; a full installation is necessary for iOS development. 這個問題的解決方法,其實有寫在訊息裡,只需要在Terminal輸入   sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer    以及   sudo xcodebuild -runFirstLaunch   即可 3.1 輸入    sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer     由於是sudo指令,所以會要求輸

Android Studio Arctic Fox中文顯示失敗

圖片
當Android Studio升級為Arctic Fox之後,發現在中文的顯示會取代成為方塊 甚至在搜尋輸入中文字也會變成方塊,造成無法搜尋中文字的情形 解決方法 1.開啟Android Studio設定 Mac按下快捷鍵 CMD⌘ + , Windows按下快捷鍵 Ctrl+Alt+S 2.修改設定 Appearance & Behavior / Appearance 勾選 Use custom font 按下OK完成設定 3.完成

簡訊實聯制App隱私權政策

App隱私權政策聲明 為了讓您能夠安心使用本App的各項服務與資訊,特此說明本App的隱私權保護政策: 一、隱私權保護政策的適用範圍 隱私權保護政策內容,包括本App如何處理在您使用App服務時收集到的個人識別資料。 二、個人資料的蒐集、處理及利用方式 本App目前均無使用任何可以紀錄、蒐集使用者資料的機制,並且也無開啟網路連線功能。 需要取得使用者同意相機的權限: 相機功能是掃描二維條碼時必須使用的功能,用來讀取二維條碼內容。 使用者自行記錄常用地點: 是單機版記錄在手機裡的資料庫-SQLite,當使用者移除App或是自行清除App的資料,資料將永不復存在。 三、資料之保護 本App目前均無使用任何可以紀錄、蒐集使用者資料的機制。 所以目前均無任何有關您的資料。 四、網站對外的相關連結 本App的網頁提供其他網站的網路連結,您也可經由本App所提供的連結,點選進入其他網站。但該連結網站不適用本App的隱私權保護政策,您必須參考該連結網站中的隱私權保護政策。 五、與第三人共用個人資料之政策 本App目前均無使用任何可以紀錄、蒐集使用者資料的機制。不會與其他人共用您的個人資料。

如何解決Android studio build code時間過久(How to solve Android Studio spend much time for debug build)

圖片
Android在開發的過程,都會經歷多次的debug build來安裝在手機上看執行的結果 然而在經歷了多次的build code之後, 是不是會覺得越build越久? 有時甚至是按下了build,到完成安裝到手機run起來都要6分鐘以上... 因為實在太不合理了,所以這個時候可能已經開始上網去找Android studio加速之類的方法了 常常找到的結果都是叫你把Memory調大、啟用新一代Dex編譯器...之類的方法... 但是如果你跟著照做,但build code還是一樣越來越慢,有可能是因為Java的關係 這個時候可以試著強制把Java關掉的方法來試試看 1.開啟活動監視器 2.關閉Java程序 把所有在活動監視器上看到的Java程序都按下停止的按鈕, 然後再去Android studio按下build, 就會發現瞬間build code的速度又變回剛開Android studio時的速度了

如何與接案工程師聊報價?

圖片
Photo by:  https://pixabay.com/photos/work-typing-computer-notebook-731198/ 接案這些年來,收到過無數的案主要求報價, 很多都報完價之後就沒消沒息,沒再談後續的事了。 可以理解有些客戶可能會覺得報價太高,也能體諒消費者的立場總是會希望便宜一點, 所以想來談談關於我們App個人接案工程師對於報價是如何評估的 其實對於接案報價的高低,我個人會由幾項原因進行評估: 難易度 工時 交期 規格是否明確 風險 一、難易度   也就是說這個案子是否用了什麼比較難的技術? 是否限定了只能使用什麼程式語言撰寫(而剛好這個語言我個人剛好比較不熟悉)? 這些功能在某些平台(Android、iOS或是後端API)會比較難處理? 客戶的需求是否會有可能讓app上架無法通過審核的可能? 二、工時 也就是說完成這個案子需要多少的時間才有辦法做完。 有些案子雖然技術不是很難,但要實作的頁面實在太多,或是要判斷的邏輯太復雜,就會造成這個案子的總工時會變長。 三、交期 也就是這個案子的交件日有多久時間可以寫?是不是急件? 如果是急件而手頭上又在其他的案子在忙的時候,要將新的急件排入當然就會比較貴,就好比去照相館沖洗相片一樣有急件與普通件不同的價格。 四、規格是否明確 這項是最為重要,但又是最難的部份。 最常遇到的情形就是「我想要做一個App,跟某個現在已經很知名的App一樣的功能,Android跟iOS都要,幫我報個價」 這個時候我需要去了解的事情就是: 客戶說的那個App有哪些功能? 客戶要的App要有哪些的業務邏輯? 客戶有沒有提供美術設計圖稿? 客戶有沒有提供後端API?(後端API是app的資料來源,通常也是客戶最容易沒考慮到的部份) 於是我如果接到了這個案子所要花的時間就是: 1.需求分析 2.Android app開發 3.iOS app開發 4.基本的美術設計 5.後端API開發 上面的5項,其實剛好也就是一般軟體開發公司會出現的職缺: 1.SA(系統分析師) or PM(專案管理者):需求分析 2.Android工程師:Android app開發 3.iOS工程師:iOS app開發 4.美術設計師:美術設計 5