適用対象:SQL Server
Azure SQL データベース
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
このページは、SQL Server Database Engine と Azure SQL Database のセキュリティと保護に関する情報を見つけるのに必要なリンクを紹介します。
凡例
認証: ユーザーはだれか
| 機能 | リンク |
|---|---|
だれが認証したか
Windows 認証
SQL Server 認証
Microsoft Entra ID (旧 Azure Active Directory) を使用する |
だれが認証したか (Windows または SQL Server) 認証モードの を選択する Microsoft Entra 認証を使用した Azure SQL への接続 |
どこで認証されたか
master データベース: ログインとデータベース ユーザー
ユーザー データベース: 包含 DB ユーザー |
master データベースでの認証 (ログインとデータベース ユーザー)ログインの作成 Azure SQL データベースにおけるデータベースとログインの管理 データベース ユーザーを作成する ユーザー データベースでの認証 包含データベースを使用してデータベースを移植可能にする |
他の ID の使用
資格情報
別のログインとして実行
別のデータベース ユーザーとして実行 |
資格情報 (データベース エンジン) EXECUTE AS EXECUTE AS |
認証: 何を実行できるか
| 機能 | リンク |
|---|---|
権限の許可、取り消し、および拒否
セキュリティ保護可能なクラス
詳細なサーバーのアクセス許可
詳細なデータベースのアクセス許可 |
アクセス許可の階層 (Database Engine) 権限 (データベース エンジン) セキュリティ保護可能 データベース エンジンのアクセス許可を開始する |
ロールによるセキュリティ
サーバー レベルのロール
データベース レベルのロール |
サーバー レベルのロール データベース レベルのロール |
選んだデータ要素へのデータ アクセスの制限
ビュー/プロシージャを使用したデータ アクセスの制限
行レベルのセキュリティ
動的データ マスキング
署名済みオブジェクト |
ビューとストアド プロシージャを使用してデータ アクセスを制限する (データベース エンジン) 行レベルのセキュリティ 行レベルのセキュリティ 動的データ マスク 動的なデータ マスキング (Azure SQL Database) 署名の追加 |
暗号化: 秘密データの格納
| 機能 | リンク |
|---|---|
ファイルの暗号化
BitLocker 暗号化 (ドライブ レベル)
NTFS 暗号化 (フォルダー レベル)
Transparent Data Encryption (ファイル レベル)
バックアップの暗号化 (ファイル レベル) |
BitLocker (ドライブ レベル) NTFS 暗号化 (フォルダー レベル) 透過的なデータ暗号化 (TDE) バックアップの暗号化 |
ソースの暗号化
拡張キー管理モジュール
Azure Key Vault に格納されたキー
常に暗号化 |
拡張キー管理 (EKM) Azure Key Vault を使用する拡張キー管理 (SQL Server) 常に暗号化 |
列、データ、キーの暗号化
証明書による暗号化
対称キーによる暗号化
非対称キーによる暗号化
パスフレーズによる暗号化 |
ENCRYPTBYCERT ENCRYPTBYASYMKEY ENCRYPTBYKEY ENCRYPTBYPASSPHRASE データの列の暗号化 |
接続のセキュリティ: 制限とセキュリティ保護
| 機能 | リンク |
|---|---|
ファイアウォールによる保護
Windows ファイアウォールの設定
Azure サービスのファイアウォール設定
データベース ファイアウォールの設定 |
データベース エンジン アクセスを有効にするための Windows ファイアウォールを構成する sp_set_database_firewall_rule (Azure SQL Database) sp_set_firewall_rule (Azure SQL Database) |
転送中のデータの暗号化
強制 TLS/SSL 接続
SSL 接続 (オプション) |
接続を暗号化するために SQL Server データベース エンジンを構成する 接続、ネットワーク セキュリティを暗号化するための SQL Server データベース エンジンの構成 Microsoft SQL Server の TLS 1.2 サポート |
監査: アクセスの記録
| 機能 | リンク |
|---|---|
自動監査
SQL Server 監査 (Server と DB レベル)
SQL Database 監査 (データベース レベル)
脅威の検出 |
SQL Server 監査 (データベース エンジン) SQL Database 監査 SQL Database の Advanced Threat Protection の概要 SQL Database の脆弱性評価 |
カスタム監査
トリガー |
カスタム監査の実装: DDL Triggers と DML Triggersの作成 |
コンプライアンス
コンプライアンス |
SQL Server: 情報セキュリティ国際評価基準 SQL Database: Microsoft Azure トラスト センター: 機能による準拠 |
SQL インジェクション:
SQL インジェクションとは、後でデータベース エンジンに渡され解析および実行が行われる文字列に、有害なコードを挿入するという攻撃です。 SQL Server では、構文的に有効であれば受信したクエリがすべて実行されるため、SQL ステートメントを構成するすべてのプロシージャにおいて、インジェクションに対する脆弱性を検証する必要があります。 すべてのデータベース システムに SQL インジェクションのリスクがあり、脆弱性の多くが、データベース エンジンにクエリを実行するアプリケーションで確認されています。 SQL インジェクション攻撃を阻止するには、ストアド プロシージャとパラメーター化コマンドを使用し、動的 SQL を回避して、すべてのユーザーのアクセス許可を制限します。 詳細については、「SQL インジェクション」を参照してください。
アプリケーション プログラマ向けのその他のリンク:
関連コンテンツ
- データベース エンジンのアクセス許可を開始する
- SQL Server の保護
- プリンシパル (データベース エンジン)
- SQL Server の証明書と非対称キー
- SQL Server 暗号化
- 表面積の構成
- 強力なパスワード
- TRUSTWORTHY データベース プロパティ
- SQL Server 2019 の新機能
- SQL Server の知的財産の保護
Windows 認証
SQL Server 認証
Microsoft Entra ID (
Azure サービスのファイアウォール設定