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

SQLServerのログインアクセスを1つのデータベースのみに制限する

    これが私たちがとてもやりたいことだと思います。

    --Step 1: (create a new user)
    create LOGIN hello WITH PASSWORD='foo', CHECK_POLICY = OFF;
    
    
    -- Step 2:(deny view to any database)
    USE master;
    GO
    DENY VIEW ANY DATABASE TO hello; 
    
    
     -- step 3 (then authorized the user for that specific database , you have to use the  master by doing use master as below)
    USE master;
    GO
    ALTER AUTHORIZATION ON DATABASE::yourDB TO hello;
    GO
    

    以前にユーザーを作成してそのデータベースに割り当てた場合は、

    USE [yourDB] 
    CREATE USER hello FOR LOGIN hello WITH DEFAULT_SCHEMA=[dbo] 
    GO
    

    次に、以下を実行して削除し、手順に従ってください

       USE yourDB;
       GO
       DROP USER newlogin;
       GO
    

    詳細については、リンクをたどってください:

    非表示Microsoft SqlServer2008R2以降にログインするためのデータベース



    1. 複数の値を持つSQLWhere句

    2. SQLクエリのExcel日付パラメータ

    3. Membership.ValidateUserは、VS 2010 /.NET4.0へのアップグレード後に常にfalseを返します

    4. MySQLでPDOを使用したページ付け