我的應用程序代表用戶自動執行外部系統上的某些操作。我們將這個應用程序庫存BC稱爲此上下文。DDD - 對外部環境的憑證
由於這是我的應用程序的主要特徵之一,它被建模爲一個域服務,並實施一個反腐敗層。迄今爲止都很棒。
另外,用戶可能在外部系統上有幾個不同的帳戶,我的應用程序會爲他們處理這些帳戶。所以我有一個單獨的有限上下文,我保留外部系統的用戶詳細信息和帳戶ID。我們說身份BC。
現在,Inventory BC的反腐敗層需要外部系統帳戶ID和憑證。賬戶ID是庫存BC的一部分,用於分隔不能通過這些外部賬戶進行的外部賬戶和操作。但我不確定應該在哪裏存儲憑據以及如何從庫存ACL中檢索憑證。
我是否應該將身份證明文件中的憑證保存在身份證BC中?然後我想我可以讓一個應用程序服務返回給定帳戶ID的憑證並從庫存ACL中調用它。
還是有更好的做法嗎?
編輯1:另外,如果我想將所有的上下文合併爲一個,那麼什麼是合適的?
編輯2:在我的外部系統的域服務上,應該將憑證作爲參數的一部分嗎?還是應該繼續使用ACL級別的憑據解決方案?
當用戶在我的應用程序上註冊時,他們還會在外部系統上註冊他們的帳戶,ID和憑證。因此,我將外部ID視爲我的域名的一部分,因爲它也用於驗證無法在其外部帳戶中執行的操作。 – jam01
我不確定爲什麼需要知道外部ID。但這可能是因爲我並沒有真正得到最後一句話:) – guillaume31
欣賞你的幫助,一直困住這一段時間。我的意思是用戶在外部系統中有帳戶A和B.您可以在A或B內移動,但不能從一個移動到另一個。所以我需要區分它們。 – jam01