回答:
SAをデータベースの所有者にすることにより、実際には多くの事柄が単純化および/または解決されますが、セキュリティに影響を与える可能性があります。
SAは、その後、データベースの所有者である場合は特に、それを覚えていますdbo = 'SA'
。これは、とりわけ、[EXECUTE As Owner]が含まれる[dbo]スキーマ(デフォルト)のプロシージャが、実際にはSAとして実行されていることを意味します。それはない、かなり、それは音として、あなたが信頼できるように、データベースをマークしていない限り、SQL Serverはそのような偽装サーバーレベルプリンシパルとデータベースのうち、セッションまたはタスクをさせませんので、悪いよう。
これは次の点が表示されます:あなたがしている場合を除き、TRUSTWORTHYなどのデータベースをマークしたことがない、本当に、本当に必ずそれが安全であること。[dbo]スキーマでプロシージャを作成できるユーザーは、必要に応じてサーバー全体でSAとして実行できるためです。
独自のSQL Serverデータベースを持つ多くの製品やアプリケーションは、多くの場合、アプリケーションログインがデータベースのDBOでなければならないことを指定するため、別の問題が発生する可能性があります。アプリケーションのログインを「SA」にすることで、明らかに解決できます。願わくば、SQL Serverインスタンスが他の目的で使用されていない限り、絶対にそれをしてはいけないことも明らかです(その場合でもお勧めしません)。