我們有一個Office365租戶,但沒有內部部署AD來同步(是的,我們在Linux上普遍運行)。我們的用戶「活着」在一個oracle數據庫中。從那裏他們被複制到我們使用的所有其他後端(OpenLDAP,MySQL,Kerberos,...現在甚至Azure)。使用Microsoft Graph API更新proxyAddresses
我們正在使用「用於Python的Microsoft Azure客戶端庫」,並且能夠創建和更新用戶(我們必須擴展UserUpdateParameters類)。
但是,當涉及到更新/設置用戶的郵件別名(用戶擁有多個本地部分,或許不止一個域名部分),我們得到以下異常:
Traceback (most recent call last):
File "update.max_sgv.py", line 87, in <module>
uu = graphrbac_client.users.update(object_id, parameters)
File "/usr/local/lib/python2.7/dist-packages/azure/graphrbac/operations/users_operations.py", line 275, in update
raise models.GraphErrorException(self._deserialize, response)
azure.graphrbac.models.graph_error.GraphErrorException: Property 'proxyAddresses' is read-only and cannot be set.
有沒有人一個想法如何用python(azure,msrest)來做到這一點?
順便說一句:otherMails沒有辦法。
無論如何,將它暴露給其他API(例如電源外殼AD擴展)而不是Graph API是不合理的。
謝謝你的時間,並希望你的建議。
馬西莫·巴斯
您可以在'update.max_sgv.py'中爲用戶發佈更新操作的代碼,代碼'uu = graphrbac_client.users.update(object_id,parameters)'的參數值?根據我的經驗,它似乎是一個屬性'proxyAddresses'作爲請求數據存在於'parameters'變量中。但根據錯誤信息,'proxyAddresses'是隻讀的,[只在響應正文中](https://github.com/Azure/azure-sdk-for-python/blob/f8dc98625404b75e5d6365ad30c04abc90ee751a/azure-mgmt/)測試/記錄/ test_graphrbac.test_graphrbac_users.yaml)。 –