問題タブ [dbo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
security - DBO 権利リスク
複数のデータベースに dbo アクセスできる複数のユーザーがいる SQL 2k5 ボックスを管理している友人にアドバイスします。問題は:
- これらのユーザーは、パスワードを数か月間変更していません。
- これらのユーザーは自分の ID をアプリケーションに入力し、アプリケーションは DBO として実行されます。
では、テーブルとプロシージャを追加/更新/削除する明らかな dbo 権限は別として、悪意のあるユーザーが SQL 2005 データベースに dbo を持っている場合、どのような危険性があると言えますか?
データベースや他のユーザーに害を及ぼす特定のシナリオを提供したいと思います。dbo はサーバー上のファイル割り当てを変更できますか? DBO は、そのデータベースに直接接続されていない他のリソースに影響を与える可能性がありますか?
明確にするために、これは SQL Server 2005 であり、既定では xp_cmdShell は DBO ユーザーに対して承認されていませんでした。明らかなCRUDを超えたリスクがあるかどうか、私はまだ疑問に思っています。DBO を使用して何ができますか?
sql-server - DBOはサーバーにどのような害を及ぼす可能性がありますか?
SQL 2005のインストールで無効にしたXP_CmdShellを実行する以外に、データベースに対するDBO権限を取得した悪意のあるユーザーは次のことを実行できます。
- 私のデータベースに、
- 私のサーバーに?
私は、誰かがDBOを取得して、アプリケーションで「最小特権」のユーザーアカウントを実行することを正当化するという最悪の場合のセキュリティリスクを評価しています。「機密データ」を扱っていないため、誰かがDBOを取得した場合の影響は最小限であると主張する人もいます。
sql-server - 自分が現在 SQL 2000/2005/2008 のデータベース所有者であるかどうかを確認する方法
TSQL クエリでこれを行う方法を思い出せません。これはワンライナーで、DML を実行する前のテストに適していました。クエリは、SELECT IS_DBO() または SELECT IS(DBO) に似たものでした。
c# - SQL Server 2000 - プログラムでデータベース所有者へのアクセスを制限しますか?
SQL Server 2000 のデータベースへのアクセスを、そのデータベースのデータベース所有者に制限するには、どのようにプログラムを使用すればよいでしょうか? 例... Enterprise Manager で "Northwind" データベースの "Properties" を右クリックすると、所有者が として表示されsa
ます。sa
このデータベースへのアクセスをログインのみに制限するにはどうすればよいですか?
sql-server - dbo。[TableName]の代わりにlu。[TableName]?
SQL Server 2005データベースの一部のテーブルには、dbo。[TableName]ではなくlu。[TableName]という名前が付けられています。luは何の略ですか?
注:私はすでにグーグルを試しました
sql - 自己参照テーブルの複合キー
以下に定義されているサイト テーブルの複合主キーがあります。機能的には、これは私たちが望んでいるものとまったく同じです。各サイトには、同じ地区の親サイトが必要です。このようにテーブルを定義すると、特にそれが可能になります。
私の具体的な質問は、複合 PK で定義された自己参照 FK に関するものです。この特定のデザインについていくつかの意見を聞いたことがありますが、それらは相反する傾向があります。複合キーの一般的な理解の範囲内で機能するため、特に気に入っている人もいます。他の人は、それは理論的に正しくなく、[district_id] の代わりに [partner_district_id] フィールドを FK に含める必要があると主張しています。この設計では、[district_id] = [partner_district_id] を適用するための検証が必要になります。これは、チェック制約またはアプリケーション レベルのロジックで行うことができます。
これらのソリューションまたはその他のソリューションに関するさらなる意見をお待ちしております。
oracle - オラクルを使用したcakephp:グループ化はありませんか?
ご挨拶、
CakePHP を使用して検索に「グループ」パラメーターを使用しようとしています。
dbms はオラクルであり、驚いたことに機能しませんでした (クエリでグループ化されていません)。
例:
クエリは次を返しました。
DboOracle::renderStatement() でソースコードを掘り下げてみると、次のことがわかりました。
{$group} が表示されていないことに驚いたので、周りを見回してみると、dbo_source.php のように、クエリに実際に {$group} が含まれている dbo_ ファイルがいくつかあることがわかりました。
これは、cake がオラクルの group by ステートメントをサポートしていないということですか? または、私が気付いていない回避策はありますか?
sql-server - db_denydatawriter のロールをユーザー dbo に割り当てます
これを実行しようとすると、次のエラー メッセージが表示されます。
DatabaseRole 'db_denydatawriter' のメンバーを追加できませんでした。(Microsoft.SqlServer.Smo)
追加情報:
Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。(Microsoft.SqlServer.ConnectionInfo)
予約済みのユーザーまたはロール名 'dbo' は使用できません。(Microsoft SQL Server、エラー: 15405)
「凍結」したままにしておく必要があるデータベースがあります。 データベースの所有権を維持したいが、 (dbo として) 自分自身が誤ってデータを変更するのを防ぎたい。これを達成する別の方法はありますか?
編集:以下の行に対処するために、新しい質問を開くことにしました:
データベース内のデータは凍結されたままにする必要があります。ただし、構造は変更される可能性があります。
データベースは実際には複数のデータベースです。これらは基本的に、半年ごとに作成される本番データベースのスナップショットです。ユーザーは、フロントエンド GUI からバックエンド データベースを切り替えることで、履歴データを表示できます。ただし、現在のデータベースのテーブルに新しいフィールドが追加されることがあります。フロントエンドがこれらのフィールドの存在を予期している場合、これは問題を引き起こす可能性があります。現在の解決策は、フィールドをその場で追加することです (ユーザーには、db_datareader、db_denydatawriter、および db_ddladmin ロールがあります)。これが意味することは、データベースを読み取り専用にできないということです。これは、テーブル構造への変更を妨げるためです。
sql-server - SqlServerのdbo
データベースをTeradataからSqlServerに変換しています。すべてのテーブルとプロシージャが接頭辞「dbo」で命名されていることに気づきました。(例:「dbo.Table1」)。
変換タスクがはるかに簡単になるため、「dbo」を削除できるかどうか、またどのように削除できるかを知りたいと思います。
sql-server-2008 - 共有 SQL Server で所有者として dbo を使用してテーブルとクエリを作成していますか?
最終的にホスト マシン上の共有 SQL Server 2008 データベースに存在するデータベースを開発しています (ホスティング プロバイダー)。すべてのテーブルとクエリが dbo によって所有されていることに気付きました。これが共有ホスト上でのセキュリティ上の問題かどうかを知りたいです。データベース オブジェクトの所有権を割り当てるためのベスト プラクティスは何ですか。共有ホスティング環境では、db オブジェクトの所有権を db の管理者ユーザーに譲渡する必要がありますか?
ありがとう