Azure SQL Veritabanı veritabanı erişimini yetkilendirme

Şunlar için geçerlidir:Azure SQL Veritabanı

Bu makalede şunları öğreneceksiniz:

  • Kullanıcıların yönetim görevlerini gerçekleştirmesine ve bu veritabanlarında depolanan verilere erişmesine olanak tanıyan Azure SQL Veritabanı yapılandırma seçenekleri.
  • Yeni bir sunucu oluşturduktan sonra erişim ve yetkilendirme yapılandırması.
  • master veritabanına oturum açma ve kullanıcı hesaplarının nasıl ekleneceği ve bu hesaplara yönetici izinlerinin nasıl verileceği.
  • Oturum açma bilgileriyle ilişkilendirilmiş veya bağımsız kullanıcı hesapları olarak kullanıcı veritabanlarına kullanıcı hesapları ekleme.
  • Veritabanı rollerini ve açık izinleri kullanarak kullanıcı veritabanlarında izinlere sahip kullanıcı hesaplarını yapılandırma.
  • Azure SQL Yönetilen Örneği için bkz. SQL Yönetilen Örneği veritabanı erişimini yetkilendirme.
  • Azure Synapse Analytics için, Azure Synapse Analytics'e veritabanı erişimini yetkilendirme konusuna bakın.

Not

Microsoft Entra Id daha önce Azure Active Directory (Azure AD) olarak biliniyordu.

Kimlik doğrulaması ve yetkilendirme

Kimlik doğrulaması , kullanıcının iddia ettiği kişi olduğunu kanıtlama işlemidir. Kullanıcı, bir kullanıcı hesabı kullanarak veritabanına bağlanır.

Bir kullanıcı veritabanına bağlanmayı denerken, bir kullanıcı hesabı ve kimlik doğrulaması bilgileri sağlar. Kullanıcının kimliği, aşağıdaki iki kimlik doğrulama yönteminden biri kullanılarak doğrulanır:

  • SQL kimlik doğrulaması

    Kullanıcı, bu kimlik doğrulama yöntemini kullanarak bağlantı kurmak için bir kullanıcı hesabı adı ve ilişkili parola gönderir. Veritabanı master , oturum açma bilgilerine bağlı kullanıcı hesapları için bu parolayı depolar. Oturum açma bilgilerine bağlı olmayan kullanıcı hesaplarını içeren veritabanı parolayı depolar.

    Not

    Azure SQL Veritabanı, parola ilkesi kapsamında yalnızca parola karmaşıklığını zorlar.

  • Azure SQL için Microsoft Entra kimlik doğrulaması

    Kullanıcı, bu kimlik doğrulama yöntemini kullanarak bir kullanıcı hesabı adı gönderir ve hizmetin Microsoft Entra ID (formerly Azure Active Directory) içinde depolanan kimlik bilgisi bilgilerini kullanmasını ister.

Oturum açma bilgileri ve kullanıcılar: Veritabanındaki bir kullanıcı hesabını, veritabanının master depoladığınız oturum açma bilgileriyle ilişkilendirebilir veya tek bir veritabanının depoladığınız bir kullanıcı adı yapabilirsiniz.

  • Oturum açma, veritabanındaki master bir veya daha fazla veritabanındaki bir kullanıcı hesabını bağlayabileceğiniz bir hesaptır. Bir oturum açma hesabı kullanarak, bu oturum açma hesabıyla ilişkilendirilmiş kullanıcı hesabının kimlik bilgilerini depolarsınız.
  • Kullanıcı hesabı, herhangi bir veritabanında oturum açma bilgilerine bağlı olabilecek ancak bağlanması gerekmeyen tek bir hesaptır. Oturum açma bilgilerine bağlı olmayan bir kullanıcı hesabı kullanarak, kimlik bilgisi bilgilerini kullanıcı hesabıyla depolarsınız.

Verilere erişmek ve çeşitli eylemler gerçekleştirmek için yetkilendirme, veritabanı rolleri ve açık izinler kullanılarak yönetilir. Yetkilendirme, kullanıcıya atanan izinlere başvurur ve bu kullanıcının ne yapma izni olduğunu belirler. Kullanıcı hesabınızın veritabanı rolü üyelikleri ve nesne düzeyinde izinler yetkilendirmeyi denetler. En iyi uygulama olarak, kullanıcılara gereken en düşük ayrıcalıkları verin.

Yeni veritabanı oluşturduktan sonra mevcut oturum açma bilgileri ve kullanıcı hesapları

bir Azure SQL kaynağını ilk kez dağıttığınızda, Server admin özel bir yönetim oturumu türü için bir oturum açma adı ve parola belirtin. Dağıtım sırasında, master ve kullanıcı veritabanlarında oturum açma bilgilerinin ve kullanıcıların aşağıdaki yapılandırması gerçekleşir:

Önemli

Sunucu yöneticisi oturum açma adı alanına kişisel, hassas veya gizli bilgi eklemeyin. Bu alana girilen veriler müşteri verileri olarak kabul edilmez.

  • Dağıtım işlemi, belirttiğiniz oturum açma adını kullanarak yönetici ayrıcalıklarına sahip bir SQL kimlik doğrulamalı oturum açma hesabı oluşturur. Bir oturum açma hesabı, Azure SQL Veritabanı'nda oturum açmak için kullanılan ayrı bir hesaptır.
  • Dağıtım işlemi, bu oturum açma hesabına sunucu düzeyinde bir principal olarak tüm veritabanlarında tam yönetici izinleri verir. Oturum açma tüm kullanılabilir izinlere sahiptir ve sınırlanamaz.
  • Bu hesap bir veritabanında oturum açtığında, her kullanıcı veritabanında bulunan özel kullanıcı hesabıyla dbo (kullanıcı hesabı) eşleşir. dbo kullanıcısı veritabanındaki tüm veritabanı izinlerine sahiptir ve sabit veritabanı rolünün db_owner üyesidir. Bu makalenin devamında ek sabit veritabanı rolleri ele alınmalıdır.

Sunucu yönetici hesabını tanımlamak için:

  1. aka.ms/azuresqlhub'da Azure SQL hub'ına gidin.
  2. Kaynak menüsünde Azure SQL Veritabanı mantıksal sunucunuza gidin.
  3. Ayarlar'ın altında Özellikler sayfasını seçin.
  4. Sunucu yöneticisi oturum açma veya Microsoft Entra yöneticisi değerlerini görüntüleyin.

Önemli

Sunucu yönetici hesabının adını oluşturduktan sonra değiştiremezsiniz. Sunucu yöneticisinin parolasını sıfırlamak için Azure portalına gidin, SQL Sunucuları'nı seçin, listeden sunucuyu seçin ve ardından Parolayı Sıfırla'yı seçin.

Yönetici izinlerine sahip ek oturum açma hesapları ve kullanıcılar oluşturun

Bu noktada, SQL mantıksal sunucunuz, tek bir SQL kimlik doğrulamalı oturum açma hesabı ve kullanıcı hesabı kullanılarak erişim için yapılandırılmıştır. Tam veya kısmi yönetim izinlerine sahip ek oturum açma bilgileri oluşturmak için aşağıdaki seçenekleri kullanın.

  • Tam yönetim izinlerine sahip bir Microsoft Entra yönetici hesabı oluşturma

    Microsoft Entra kimlik doğrulamasını etkinleştirin ve Microsoft Entra yöneticisi ekleyin. Bir Microsoft Entra hesabını tam yönetim izinleriyle Azure SQL dağıtımının yöneticisi olarak yapılandırabilirsiniz. Bu hesap bireysel veya güvenlik grubu hesabı olabilir. Azure SQL Veritabanı bağlanmak için Microsoft Entra hesapları kullanmak istiyorsanız bir Microsoft Entra yöneticisi yapılandırmanız gerekir. Tüm Azure SQL dağıtım türleri için Microsoft Entra kimlik doğrulamasını etkinleştirme hakkında ayrıntılı bilgi için aşağıdaki makalelere bakın:

  • SQL Veritabanı'nda, sınırlı yönetim izinleriyle SQL kimlik doğrulaması oturum açma bilgileri oluşturun

    • master veritabanında ek bir SQL kimlik doğrulama oturumu oluşturun.

    Azure SQL Veritabanı için özel master veritabanı rollerinin üyeleri, veritabanları oluşturma ve yönetme ya da oturum açma bilgileri oluşturma ve yönetme yetkisine sahiptir. Rolün üyesi olan bir kullanıcı tarafından oluşturulan veritabanlarında dbmanager , üye sabit veritabanı rolüne db_owner eşlenir ve kullanıcı hesabını kullanarak dbo bu veritabanını oturum açabilir ve yönetebilir. Bu rollerin master veritabanı dışında açık izinleri yoktur.

    Önemli

    Azure SQL Veritabanı'de tam yönetim izinlerine sahip ek bir SQL kimlik doğrulaması oturum açma bilgisi oluşturamazsınız. Yalnızca sunucu yönetici hesabı veya Microsoft Entra yönetici hesabı (Microsoft Entra grubu olabilir) sunucu rollerine veya sunucu rollerinden diğer oturum açma bilgilerini ekleyebilir veya kaldırabilir. Bu kısıtlama Azure SQL Veritabanı özgüdür.

Yönetici olmayan kullanıcılar için hesap oluşturma

Aşağıdaki yöntemlerden birini kullanarak yönetici olmayan kullanıcılar için hesaplar oluşturun:

  • Oturum açma oluşturma

    master veritabanında bir SQL kimlik doğrulaması oturum açma hesabı oluşturun. Ardından her veritabanında kullanıcının erişmesi gereken bir kullanıcı hesabı oluşturun ve kullanıcı hesabını oturum açma bilgileriyle ilişkilendirin. Kullanıcının birden çok veritabanına erişmesi gerektiğinde ve parolaları eşitlenmiş durumda tutmak istediğinizde bu yaklaşımı kullanın. Ancak, hem birincil sunucuda hem de ikincil sunucularda oturum açma bilgilerini oluşturmanız gerektiğinden, coğrafi çoğaltma ile kullandığınızda bu yaklaşım karmaşıklık ekler. Daha fazla bilgi için bkz. Azure SQL Veritabanı güvenliğini coğrafi geri yükleme veya yük devretme için yapılandırma ve yönetme.

  • Kullanıcı hesabı oluşturma

    Veritabanında kullanıcının erişmesi gereken bir kullanıcı hesabı oluşturun ( kapsanan kullanıcı olarak da adlandırılır).

    Bu yaklaşım kullanılarak, kullanıcı kimlik doğrulaması bilgileri her veritabanında depolanır ve coğrafi olarak çoğaltılan veritabanlarına otomatik olarak çoğaltılır. Ancak, aynı hesap birden çok veritabanında varsa ve SQL kimlik doğrulaması kullanıyorsanız parolaları el ile eşitlenmiş olarak tutmanız gerekir. Ayrıca, bir kullanıcının farklı veritabanlarında farklı parolalara sahip bir hesabı varsa, bu parolaları anımsamak bir sorun haline gelebilir.

Önemli

Microsoft Entra kimliklerine eşlenen bağımsız kullanıcılar oluşturmak için Azure SQL Veritabanı veritabanında bir Microsoft Entra hesabı kullanarak oturum açmanız gerekir.

Oturum açma bilgilerinin ve kullanıcıların nasıl oluşturulacağını gösteren örnekler için bkz:

İpucu

Azure SQL Veritabanı'nda kullanıcı oluşturmayı içeren bir güvenlik öğreticisi için bkz . Öğretici: Azure SQL Veritabanı'nda veritabanının güvenliğini sağlama.

Sabit ve özel veritabanı rollerini kullanma

Veritabanında oturum açma bilgilerini temel alan veya bağımsız bir kullanıcı olarak bir kullanıcı hesabı oluşturduktan sonra, bu kullanıcıya çeşitli eylemler gerçekleştirme ve belirli bir veritabanındaki verilere erişme yetkisi vekleyebilirsiniz. Erişimi yetkilendirmek için aşağıdaki yöntemleri kullanın:

  • Veritabanı rolleri düzeltildi

    Kullanıcı hesabını sabit veritabanı rolüne ekleyin. Her biri tanımlı izin kümesine sahip dokuz sabit veritabanı rolü vardır. En yaygın sabit veritabanı rolleri şunlardır: db_owner, db_ddladmin, db_datawriter, db_datareader, db_denydatawriter ve db_denydatareader. Yalnızca birkaç kullanıcıya tam izin vermek için db_owner kullanın. Diğer sabit veritabanı rolleri, geliştirme aşamasında basit bir veritabanını hızlı bir şekilde almak için kullanışlıdır ancak çoğu üretim veritabanı için önerilmez. Örneğin, db_datareader sabit veritabanı rolü veritabanındaki her tabloya okuma erişimi verir; bu kesinlikle gerekli olandan daha fazladır.

  • Özel veritabanı rolü

    CREATE ROLE deyimini kullanarak özel bir veritabanı rolü oluşturun. Özel rol, kendi kullanıcı tanımlı veritabanı rollerinizi oluşturmanıza ve her role iş gereksinimi için gereken en az izinleri dikkatli bir şekilde vermenizi sağlar. Ardından kullanıcıları özel role ekleyin. Birden fazla rolün üyesi olan bir kullanıcı, bu rollerin tüm izinlerini toplar.

  • İzinleri doğrudan verme

    Kullanıcı hesabı izinlerini doğrudan verin . Tek tek verebileceğiniz veya reddedebileceğiniz 100'den fazla izin vardır. Bu izinlerin çoğu iç içe geçmiş haldedir. Örneğin, bir şemada için verilen UPDATE izni, o şema içindeki tüm tablolar için UPDATE iznini de içerir. Çoğu izin sisteminde olduğu gibi bir iznin reddedilmesi, aynı iznin verilme durumunu geçersiz kılar. İç içe geçmiş yapısı ve izin sayısı nedeniyle, veritabanınızı doğru şekilde korumak için uygun bir izin sistemi tasarlamak uzun ve dikkatli bir çalışma gerektirebilir. İzinler (Veritabanı Altyapısı) ile başlayın ve izinlerin poster boyutundaki tablosunu inceleyin.

Grupları kullanma

Verimli erişim yönetimi, tek tek kullanıcılar yerine Microsoft Entra güvenlik gruplarına ve sabit veya özel rollere izinler atar.

  • Microsoft Entra kimlik doğrulamayı kullanırken, Microsoft Entra kullanıcılarını bir Microsoft Entra güvenlik grubuna yerleştirin. Grup için bir bağımsız veritabanı kullanıcısı oluşturun. Bir veya daha fazla veritabanı kullanıcısını, bu kullanıcı grubuna uygun belirli izinlere sahip özel veya yerleşik veritabanı rollerine üye olarak ekleyin.

  • SQL kimlik doğrulamasını kullanırken veritabanında bağımsız veritabanı kullanıcıları oluşturun. Bir veya daha fazla veritabanı kullanıcısını, bu kullanıcı grubuna uygun belirli izinlere sahip özel bir veritabanı rolüne yerleştirin.

    Not

    Ayrıca, bağımsız olmayan veritabanı kullanıcıları için grupları da kullanabilirsiniz.

İzinleri sınırlamak veya yükseltmek için kullanabileceğiniz aşağıdaki özellikler hakkında bilgi edinin:

Sonraki adım