sql >> データベース >  >> RDS >> Sqlserver

SQL Server 2016:ログインを作成する

    SQL Serverでは、ログインを作成して、さまざまなユーザーまたはプロセスがSQLServerインスタンスに接続できるようにすることができます。

    他のクライアント/サーバーデータベース管理システムと同様に、SQL Serverの特定のインスタンスには、通常、さまざまなユーザーやプロセスがアクセスします。これらには、データベース開発者、データベース管理者、Webアプリケーション、企業CRM、レポートアプリケーションなどが含まれます。

    これらの各ユーザーは、SQLServerに接続するためにログインする必要があります。ログインは、1人またはユーザーのグループが使用できます。

    ログインを作成するときに、Windows認証またはSQLServer認証のどちらのログインを使用するかを選択できます。

    Windows認証
    Windows認証を使用する場合、SQL Serverは、オペレーティングシステムのWindowsプリンシパルトークンを使用してアカウント名とパスワードを検証します。したがって、ユーザーのIDはWindowsによって確認されます。 SQL Serverはパスワードを要求せず、ID検証を実行しません。
    SQLServer認証
    SQL Server認証を使用する場合、ログインはSQL Serverを使用して作成され、SQLServerに保存されます。 SQL Server認証を使用して接続するユーザーは、接続するたびにログイン資格情報を提供する必要があります。

    ログインに他の設定を適用することもできます。これには、ログインを1つ以上の役割に追加したり、データベースユーザーにマッピングしたりするなどが含まれます。

    1. 新規ログイン を起動します ダイアログボックス

      オブジェクトエクスプローラーで、セキュリティを展開します サブノードを表示するノード。

      ログインを右クリックします ノードを選択し、新規ログイン...を選択します 。

    2. 新しいログインを構成する

      ログイン名を入力し、認証方法を選択してください。

      このチュートリアルでは、SQLServer認証を使用します パスワードを入力します(そして確認します)。

      OKをクリックします ログインを作成してダイアログボックスを閉じます。

      この例では、パスワードポリシーの適用を無効にしました およびそれに関連するオプション。これは、デモンストレーションの目的で簡単にするために行いました。

      ただし、実際の設定でこれらのオプションを有効にすることをお勧めします。

      SQL Server認証よりも安全であるため、可能な限りWindows認証を使用することをお勧めします。

    新しいログインをテストする

    それでは、新しいログインを使用してSQLServerに接続してテストしてみましょう。

    1. [接続]ダイアログボックスを開く

      オブジェクトエクスプローラーで、オブジェクトエクスプローラーの上部にある小さな接続アイコン( Connect Object Explorer と書かれたツールチップが付いたアイコン)をクリックします。 。

    2. 新しいログインを使用して接続する

      SQLServer認証を選択します 認証 から ドロップダウンリスト。

      ログイン資格情報を入力し、接続をクリックします 。

      ログインしようとしたときに18456認証エラーが発生した場合は、サーバー認証モードを参照してください。 以下。

    3. 接続

      新しい接続がオブジェクトエクスプローラー(もう一方の下)に表示されることを確認します。

      接続名の最後にログイン名が付いていることがわかります。

    4. データベースオブジェクトへのアクセス

      次に、 音楽 にアクセスしてみます データベース。そこに移動し、ノードを展開して、テーブルが表示されるようにします。

      データベースにアクセスできないことを通知するエラーが表示されます。

      これは、このログインにデータベースユーザーをまだ割り当てていないためです。次にそれを行います。

    サーバー認証モード

    ユーザーがSQLServer認証を使用してログインする前に、サーバーはこのモードをサポートしている必要があります。

    ログインしようとしたときに18456認証エラーが発生した場合は、サーバーの認証モードを確認してください。 SQLServer認証をサポートするように構成されていることを確認する必要があります。

    SQLServerで認証モードを変更する方法は次のとおりです。

    1. [サーバーのプロパティ]ダイアログボックスを起動する

      オブジェクトエクスプローラーで、サーバーノードを右クリックし、プロパティを選択します。 。

    2. 認証モードの変更

      セキュリティをクリックします 左側のメニューにあります。

      サーバー認証 の下 見出しで、SQLServerおよびWindows認証モードを選択します 。

      OKをクリックします 。

    3. 警告の確認

      OKをクリックします サーバーが再起動されるまで変更が有効にならないという警告が表示された場合も同様です。

    4. サーバーを再起動します

      オブジェクトエクスプローラーで、サーバーを右クリックし、再起動を選択します。 コンテキストメニューから。

      サーバーを再起動すると、SQLServer認証を使用してログインできるようになります。

    ログインとユーザー

    ログインとユーザーは、SQLServerでは2つの異なるものです。

    • ログイン サーバーへのプリンシパルアクセスを許可します 。
    • ユーザー ログインを許可します 特定のデータベースへのアクセス 。

    したがって、上記のログインでSQLServerに接続できます。ただし、この段階では、サーバー上のどのデータベースにも、このログインに関連付けられたユーザーはありません。

    次にそれを行います。データベースユーザーを作成し、それを上記のログインに関連付けます。


    1. 条件が<>trueの場合にPostgreSQLがnull値を返さないのはなぜですか

    2. order by句が使用されていない場合、OracleSQLは任意の方法で行を返します

    3. データベースをSpringCleanする方法

    4. Mysql列を行に変換(ピボットテーブル)