申請人生第一張美國信用卡

研究了很久,終於在今年七月下定決心要進入美卡的世界,透過美卡去累積哩程、飯店的會員點數。而在過了幾個月後,總算把全部的流程全部跑完,可以寫心得文回饋給接下來想要入坑的人。不過請特別留意,每一個人想申請美卡的理由不太一樣,也不見得是要用美卡才能夠累積哩程跟飯店點數,中間也會有很多不方便的地方,最好還是先自我評估,確認想要踏入這個世界後再往下看這篇文章喔。 這篇文章不會分析持有美卡的好處或壞處,純粹就一個走過這些流程的分享。在我即將持有台灣版美國運通信用卡的第一年,開始利用轉卡的方式申請到美國版的美國運通卡。一般網路文章是說只要持有三個月的台灣卡就能試著去申請了。 以下是我的起始條件: 在做完功課後發現,我還需要有這些條件才能開始申請轉卡: 以下就用我準備這些項目的時序撰寫: 行動電話 這個大概只花 2~3 天就完成了。 行動電話其實是非常容易處理的第一件事情,大部分的人都推薦可以使用 Google Fi。但因為 Google Fi 可能會因為長期在國外收發電話而被停權,所以我就沒有往下申請了。最後我選擇的是 Ultra Mobile。 Ultra Mobile 的 SIM 卡很容易購買跟取得,也可以在海外啟動電話卡,平時加值或扣款都是用信用卡就能完成。只要手機在 WiFi 底下,就能夠啟動 WiFi Calling,接聽電話不用錢、撥打美國電話時也是照國內費率計算,也能在海外收美國簡訊,非常簡便。 美國地址 這個比較麻煩一點點,不過因為 MailToAP 已經搞定了大部分的事情,大概花了 3~5 個工作天。 這個地址非常非常重要,千萬不要亂填飯店地址,一定要有一個能收信用卡、而且可以拿來做驗證的地址。這個驗證地址不能被標記成 CMRA,最好也要是 Residential。你可以從 USPS 的小工具裡面來查看自己的地址是否被標記了。 地址通常可以跟親友問問,如果真的沒有人可以借用,那自己租用一個也可以,像是 MailToAP 有中文客服,能用 Line 完成合約簽署、公證。也會在收到新信件時使用 Line 通知,我們只需要在上面下達指令,看是要轉寄回台灣、掃描文件或是銷毀等都可以。因為 MailToAP 提供的是實體地址,而且沒有被標記為 CMRA,地址也會是住宅用的,因此拿來做地址驗證與申請信用卡是沒問題的。 在申請轉卡時填寫這個美國地址,通常會因為我們在美國沒有 SSN 或 Read more…

從 Jamf Pro 自定義註冊畫面帶使用者資訊至 Jamf Connect 失敗的處理方式

Jamf Pro 在設定裡面的 Enrollment Customization,本來可以設定在使用者完成設備註冊的當下,同步把 SAML 裡的資訊帶給後面的 Jamf Connect Login,這樣就可以減少一步使用者還需要登入的步驟。但在撰文的當下,Jamf Pro 11.1 仍在這個功能上有問題,在跟 Jamf Support Team 了解後,大概能用一種 Workaround 來解決,只是要特別留意以下事情: 確認上面兩項條件都沒有問題後,需要在 Computer 裡面的 Configuration Profile > Application & Custom Settings。 上面的兩個變數值,可以在 Jamf Pro Configuration Profile 裡面找到。例如底下我自己的例子: 對照上圖的話,我的 XML 應該會長成這樣樣子: 然後記得把上面這個新做好的 Configuration Profile 設定好正確的 Scope,並且也放在 PreStage。除此之外,這個 Workaround 有一個比較不好的地方:如果這個電腦已經用 Jamf Connect 建立過帳號了,就需要把這個 Workaround Read more…

在 Apple 零接觸部署下僅允許某個群組啟動設備

在 Jamf Pro 有整合 Single Sign On 的情況下,可以前往 Settings > Enrollment Customization 設定僅允許一個群組中的成員啟用設備。如果這個成員沒有在這個群組裡面的話,就不能夠開箱設備。如果以 Entra ID 為例,需要把 Object ID 填在下方的欄位即可。 對照到我在 Entra ID 上的群組設置: 至於如果不是 Entra ID,而是其它的 SSO Provider 的話,最好可以用 SAML Tracer 這一套 Google Chrome 外掛去看一下自己的 SAML 文件是如何表達群組的,例如下圖能看到這個使用者屬於以下五個群組。 接著有另外一個很重要的事情要提醒,如果你要阻擋註冊的成員,可以登入到 Jamf Pro 管理後台的話,那麼這個設定對他是無效的。所以一定要確保,應該只有 IT 團隊的人可以進到 Jamf Pro 裡面。 如果成功阻檔的話,會顯示下面的錯誤訊息給使用者:

在 Conditional Access 條件下設置 Jamf Connect Login 的 MFA 挑戰

Mac 世界的零接觸話題,每年都可以有新的話題出現。圍繞著使用者體驗,讓用戶在拿到電腦的那一刻,就能自動化配置所有公司要求的設定,不需 IT 人員幫忙。這不僅是節省 IT 人員的時間而已,更是讓整個出機流程變得更為流暢。 除了軟體與設定可以全自動化部署以外,使用者帳號當然也可以自助化的設定在電腦裡,而且完全按照公司的規範。所以如果公司正在使用 Entra ID 這樣的目錄服務時,當然也可以把 Entra ID 上面的帳密同步化成電腦本機電腦上的帳密,減少人員帳密疲疺的風險。然而,要求更高等級的公司,可能會要求人員在登入 Entra ID 時必須通過兩階段驗證,而這可能就為同步密碼帶來挑戰。 以 Jamf Connect 來說,這一套軟體可以在 Mac 設備開箱時自動就安裝在電腦上,並且出現一個可客製化的登入視窗給用戶登入 Entra ID。剖析這套軟體,事實上是由兩個 OIDC 授權類別完成的,一個是 Authorization Code Grant,另外一個是 ROPG。 以上這些情況都沒有什麼問題。然而,當公司配置 Microsoft Conditional Access 在 Jamf Connect 上時就會出現問題了。假設配置的條件是必須完成 MFA 驗證才提供 Token,那麼 ROPG 這種授權類別就會難以進行。一是 ROPG 這個授權類別不會彈出一個畫面要使用者輸入兩階段驗證碼之類的東西,二是這種同步密碼的頻率可能是 15 分鐘一次,不可能每 15 分鐘就去挑戰使用者。 然而,當這個 Read more…

搭配 Jamf Pro 設定 macOS Kerberos SSO

Apple 自 2019 年後直接在作業系統裡面內建了 macOS Kerberos SSO Extension 的整合,讓依賴 Microsoft Active Directory 地端環境的公司,現在也能利用 Kerberos SSOe 完成 SSO,這個功能必須要搭配 MDM 才能啟用,沒辦法透過 UI 或 Script 的方式開啟。 Jamf Pro 設定方式 前往 Computers > Configuration Profiles > Single Sign-On Extension,並將頁面切換成 Kerberos 後,完成相關的設定。例如: macOS 使用者體驗 接著使用者的 macOS 電腦就會在上方工具列的地方出現一把鑰匙,點擊後按下登入,就會出現下方的登入視窗。使用者就在下面輸入 AD 使用者名稱及密碼,就能登入到 AD 網域裡。如果在 Jamf Pro 裡面有配置密碼同步的話,使用者的 macOS Read more…

在 FileVault 啟用前提,使用 Jamf Policy 重設使用者本地密碼

在大部分的情況下,若使用者忘記本地密碼,通常會立刻向 IT 團隊求救協助重新設定密碼。而在 FileVault 有啟用的前提下,IT 團隊通常有以下選項來協助使用者: 以上三種選項,最方便的就是提供 FileVault Recovery Key,但對於某些環境比較嚴格的公司來說,提供 Recovery Key 給到使用者可能不是最佳解,原因是: 如果你身處的公司並不是這麼嚴格的文化,其實提供 FileVault Recovery Key 可能還是最推薦的方式。 第二個選項也有困難度,在當今許多人都遠端辦公的環境下,要讓使用者把電腦端到 IT 團隊面前。或是 IT 團隊要能用區網連線到使用者的電腦,都不是一件易事。 這當然也另一方面呈現了一個問題,在以往大家習慣都在同一個區網辦事,隨著遠端辦公的需求增加,依賴 Active Directory 做為中控的認證機制,也變得更加困難。 最後一種就是使用 Jamf Policy,雖然不像提供 FileVault Recovery Key 這麼方便,但 IT 團隊可以在 Jamf 後台上配置一個 Policy,然後等電腦回來跟 Jamf 報到後,就能重設使用者的密碼。為了要做到這件事情,必須要確認以下事情,才不會把狀況變得更棘手: 接著就能到 Jamf Pro 上面的 Computers > Policies > Local Read more…

使用 Ruby 3.0 計算 AWS S3 Authorization 簽署值

最近在工作上需要使用 AWS S3 下載檔案,對方給了我關於該 AWS S3 的 Bucket name、Access Key 與 Secret Key,需要按照 AWS S3 的文件前去下載該檔案。 從 AWS 的文件中可以看出來,為了要計算簽署值,需要先準備簽署的本體,本體裡面有一段 CanonicalizedResource,他的格式如下 上面的格式裡的第一個字 “/” 千萬不要漏掉,我在這邊卡了好久,就是因為漏了這個字。 翻譯白話的意思就是說,假設我要去下載 https://glee-bucket.s3.amazonaws.com/files/abc.jpg,那麼這個網址的 Bucket name 就叫做 glee-bucket,URI 就是 /files/abc.jpg,最終做出的 CanonicalizedResource 就是: 最後再把這個請求的資料 依據整個本體的格式 做成 然後就可以用 Ruby 中的 HMAC-SHA1-Digest 來計算了: 用 Shell Script 測試簽署值是否可以下載檔案

移除簽署過的 ConfigurationProfile 為可閱讀的 XML 文件

Configuration Profile 其實只是一份 XML 文件並經過簽署,因此用一般的文字編輯器打開時,大多數文字都像是亂碼一樣無法閱讀,尤其像從 Jamf Pro 下載的描述檔就會長成這個樣子,因為會經過 Jamf Built-in CA 簽署。 要把 Configuration Profile 移除簽署並重新排列為 XML 的縮排格式,透過以下兩行指令就可以了:

XPATH 小筆記

假設有以下這份 XML 文件: 選擇所有的 Name 開頭用 // 代表尋找整份文件裡,Node 為 name 的所有元素。如果後面加上 text() 的話,就是只要裡面的文字就好。同理,也可以換成 //id/text(),就可以拿到全部的 ID。 尋找內容是「關閉相機」的 ID 開頭一樣是尋找這份文件,多的是要確認 name 元素裡面的文字內容得是「關閉相機」。找到後,可能會特別想要這個節點裡面的 ID,因此使用 XPATH 裡面的 AXES 功能,找到同一層的哥哥 ID,並且取得裡面的文字。preceding-sibling 就是哥哥的意思,following-sibling 就是弟弟的意思。 *其實 Silbing 是指有同一個父母的元素,分成 Preceding 與 Following 只是在區分前後而已。 尋找內容有包含「http」 //string[contains(text(),’http’)] 開頭一樣是尋找文件裡所有節點是 String 的,然後找裡面文字有包含 http 的。 好用的小工具: http://xpather.com

MDM Enabled User 與 Jamf Connect Login

最近在研究如何把跟電腦使用者相關的設定透過零接觸部署直接下去,原本簡單的事情卻搞了快一整天,後來了解到一個很根本的關鍵:「誰是這台電腦上的 MDM Enabled User?」。 MDM Enabled User 早期叫做 MDM Capable User,從 macOS 10.12 開始,一台電腦上面只可以有一位。從 Jamf Pro MDM-Enabled Local User Acoounts 裡面讀到一句非常重要的話: The local user account will not be MDM-enabled if at least one of the following is true: The Skip Account Creation checkbox is selected in the PreStage enrollment and the local Read more…