前言
多功能事務機有一項功能是Scan to mail,將文件掃描後直接寄送到E-mail,要使用這項功能,需要在事務機上設定SMTP伺服器,Gmail有提供有提供SMTP服務,但需要用個人帳號另外建立一組發送郵件的服務帳號,因此我使用Azure Communication Service服務,可以視為公用帳號,無需使用私人帳號來建立服務用帳號
步驟
- 首先到Azure Portal中,搜尋並建立Azure Communication Service服務,建立新的Resource Group以及填入Resource Name後,點選Revive + Create,檢查無誤後點選Create
- 建立完成後,點選Go to resource進入Azure Communication Service,點選Access control (IAM)並選擇Role
- 選取Reader,再選擇Clone,這個步驟用來建立可以發送Email服務的角色
- 輸入自訂角色名稱後,點選Next
- 在Permission中,點選Add permissions
- 搜尋並選取Microsoft.Communication
- 選擇Microsoft.Communication/CommunicationServices Read及Microsoft.Communication/EmailServices Write後,點選Add後,再點選Revice + create,確認無誤後,點選Create
- 成功建立後,點選OK
- 開啟Cloud Shell介面,要來建立Service Principal,產生密碼供設備驗證用
- 在Cloud Shell裡輸入以下指令az ad sp create-for-rbac -n ScanToEmail –years 100,ScanToEmail是Service Principal名稱,–years 100代表過100年後才過期,實際可以依需求給個3~5年左右,接著就會輸出結果,這邊的資訊要自行備份,密碼只會出現一次,若是遺失可以再重新輸入一次相同指令重新產生密碼,appID不會變
- 點選Add->Add role assignment
- 選擇剛剛建立的CustomRole,點選Next
- 點選Select members,找到剛剛建立的Service Principal,點選Review + assign
- 接著點選Create a resource,在Marketplace裡搜尋email communication service,選取並開始建立
- 選擇相同的Resource group,自行取一個可辨識的名稱,這邊會做檢查,不合法的文字會跳紅字,Data location要與Communication service放在相同位置,我的Communication service是放在East Asia,所以我的location會選擇Asia Pacific,檢查沒問題,選擇Review + create後,再選擇Create
- 建立Email communication service完成後,回到Resource Group,進入Communication Service,從左側找到Try Email
- 在Send email from的下拉選單中,選取Set up a free Azure subdomain
- 在Email service下拉選單中,選擇剛剛建立好的Email communication service,選取Create + Activate,等待建立完成
- 建立完成後,就可以在Send email from的下拉選單中,選取剛剛部署好的Azure subdomain,這時Sender email username會自動帶出,只要在Recipient email address輸入個人的email,確認是否可以收到,可以多試幾個不同的email,確認會不會掉信,輸入完選取Send,然後去信箱看看有沒有成功寄到,信件寄出成功會有訊息告知
- 我個人是透過Outlook收Gmail的信,確認信件有收到
- 如何建立以及設置SMTP client AUTH submission,首先要到Microsoft Entra ID->App registrations,找到前面建立好的Service Principal
– username: <Azure Communication Services Resource name>.<Entra Application ID>.<Entra Tenant ID>,
– password: service principal password
– Server: smtp.azurecomm.net
– Port: 587
-TLS: Enabled
結論
- 目前測試起來,不管是企業內的信箱,或是免費Gmail,都可以收到,不會被當成垃圾信。
- 此外也有試過外部SMTP測試網站,也可以成功發信,但建議正式上線的時候就不要在外部網站測試,避免認證資訊被側錄。