none
如何鎖定程式人員無法修改Store Proceure RRS feed

  • 問題

  • 各位好

    環境:Sql 2005 Standard

    我於資料庫中根據程式人員的系統登入帳號建立一組對應的Sql 帳號

    並告知使用者使用系統驗證方式登入

    在資料庫中僅設定各程式人員帳號於各資料庫的角色為public

    並且設定Public僅能Connect Sql, View any database, view any definition, View Server State

    我並沒有開放程式人員可以alter database schema的權限丫

    但是程式人員除了可以修改資料之外,還可以使用alter的指令修改資料庫物件

    (但drop,create就不可使用了)

    請問應該如何做設定才可防止程式人員隨意修改呢??

    謝謝

    2007年1月24日 上午 02:59

解答

  • Hi: 您好,

    依據您提供的資訊來看:
    發生這問題的原因是在: guest 帳號。
    請問這是作業系統的 guest帳號,還是 DB 內的 guest帳號呢?

    很好奇的是,基本上不應該在DB上開放啟用 guest帳號,(無論是作業系統的 guest或是 DB 內的guest)。
    這可能是安全上漏洞,建議要檢查分析為何使用 guest 帳號。

    希望對您有幫助 ...

    Best Regards
    Derrick Chen 德瑞克

    2007年3月13日 上午 04:13

所有回覆

  • 如果你改用 DENY 的方式來限制呢 ? EX :

    DENY ALTER ON [dbo].[sp_xxxx] TO [HelloKitty]

    2007年1月30日 上午 07:04
  • 建議另外定義Schema,以Deny Primession 去限制該登入角色的存取及控制
    2007年1月30日 上午 07:31
  • 我找到方法了,只是不知道正不正確就是了

    程式人員屬於guest群組,有設定可修改資料

    另外在各資料庫中,針對guest,把Alter Schema的權限給關掉了

     

    謝謝各位

    2007年1月31日 上午 01:13
  • Hi: 您好,

    依據您提供的資訊來看:
    發生這問題的原因是在: guest 帳號。
    請問這是作業系統的 guest帳號,還是 DB 內的 guest帳號呢?

    很好奇的是,基本上不應該在DB上開放啟用 guest帳號,(無論是作業系統的 guest或是 DB 內的guest)。
    這可能是安全上漏洞,建議要檢查分析為何使用 guest 帳號。

    希望對您有幫助 ...

    Best Regards
    Derrick Chen 德瑞克

    2007年3月13日 上午 04:13