︿
Top

2020年12月31日 星期四

Oracle: Synonym (別名) 的用途及實作練習


0. 前言


由於目前的專案採用 Oracle, 且整個資料庫是由客戶的 DBA 在管理, 為了安全上的考量, 在存取客戶現行使用者的資料表時, 只會提供廠商新的使用者帳號及密碼, 而不會提供現行使用者的帳號及密碼.

舉例而言, 假設 table: T2 由客戶的 USER2 所建立, 而客戶提供給廠商的使用者為 USER1; 雖然客戶已將 USER2.T2 這個 table 的權限開放給 USER1, 當然可以採用 USER2.T2 去存取.

但這樣會造成 參考文件1 提到的狀況:

  • 每次使用用 Table 時都要加上 "USER2.".
  • 程式碼寫死了 Schema 名稱, 一旦Schema名稱調整, 將有改不完的程式.

在網路上查了一下, 看來應該可以透過 Synonym (別名) 的方式來處理. Synonym 的用途如下:

  • 主要用在縮短資料庫物件 (table, view, sequence or program unit) 的名稱, 不需實際指定 schema.
  • 亦可用在如上述的資安議題.

以下茲分幾個步驟, 進行狀況模擬實測:

最後並附上 結論參考文件.


2020年12月28日 星期一

2020年12月25日 星期五

How to set network profile to PRIVATE after windows server restart


需求


因為開發測試需求, 在本機用 Virtual Box 安裝一個 VM, 內含 Windows Server 2019 及 Oracle 資料庫, 且只啟用 HostOnly 的網卡.

茲將整個設定過程留下記錄, 以備參考.