Anmeldeinformationen für den Zugriff auf die Clientbibliothek für elastische DatenbankenCredentials used to access the Elastic Database client library

Die Clientbibliothek für elastische Datenbanken verwendet drei verschiedene Arten von Anmeldeinformationen für den Zugriff auf den Shardzuordnungs-Manager.The Elastic Database client library uses three different kinds of credentials to access the shard map manager. Verwenden Sie jeweils die Anmeldeinformationen mit den geringstmöglichen Zugriffsrechten.Depending on the need, use the credential with the lowest level of access possible.

  • Verwaltungsanmeldeinformationen: Zum Erstellen oder Bearbeiten eines Shard-Zuordnungs-Managers.Management credentials: for creating or manipulating a shard map manager. (Siehe Glossar)(See the glossary.)
  • Zugriffsanmeldeinformationen: Zum Zugreifen auf einen vorhandenen Shard-Zuordnungs-Manager zum Abrufen von Informationen zu ShardsAccess credentials: to access an existing shard map manager to obtain information about shards.
  • Verbindungsanmeldeinformationen: Zum Herstellen einer Verbindung mit ShardsConnection credentials: to connect to shards.

Informationen finden Sie auch unter Verwalten von Datenbanken und Anmeldungen in Azure SQL-Datenbank.See also Managing databases and logins in Azure SQL Database.

Informationen zu AnmeldeinformationenAbout management credentials

Die Verwaltungsanmeldeinformationen werden zum Erstellen eines ShardMapManager-Objekts (Java, .NET) für Anwendungen verwendet, die Shardzuordnungen ändern.Management credentials are used to create a ShardMapManager (Java, .NET) object for applications that manipulate shard maps. (Beispiele finden Sie unter Hinzufügen eines Shards mithilfe von Tools für elastische Datenbanken und Datenabhängiges Routing.)(For example, see Adding a shard using Elastic Database tools and data-dependent routing). Der Benutzer der Clientbibliothek für elastische Datenbanken erstellt die SQL-Benutzer und SQL-Anmeldungen und stellt sicher, dass diesen Lese-/Schreibberechtigungen für die globale Shardzuordnungs-Datenbank und auch alle Sharddatenbanken gewährt werden.The user of the elastic scale client library creates the SQL users and SQL logins and makes sure each is granted the read/write permissions on the global shard map database and all shard databases as well. Diese Anmeldeinformationen werden zum Verwalten der globalen und der lokalen Shard-Maps verwendet, wenn Änderungen an der Shard-Map vorgenommen werden.These credentials are used to maintain the global shard map and the local shard maps when changes to the shard map are performed. Verwenden Sie beispielsweise die Verwaltungsanmeldeinformationen, um das Objekt für den Shard-Zuordnungs-Manager zu erstellen (mit GetSqlShardMapManager (Java, .NET)):For instance, use the management credentials to create the shard map manager object (using GetSqlShardMapManager (Java, .NET):

// Obtain a shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmAdminConnectionString,ShardMapManagerLoadPolicy.Lazy);

Die Variable smmAdminConnectionString ist eine Verbindungszeichenfolge, die die Verwaltungsanmeldeinformationen enthält.The variable smmAdminConnectionString is a connection string that contains the management credentials. Die Benutzer-ID und das Kennwort liefern Lese-/Schreibzugriff auf die Shardzuordnungs-Datenbank sowie auf einzelne Shards.The user ID and password provide read/write access to both shard map database and individual shards. Die Verbindungszeichenfolge für die Verwaltung umfasst auch den Servernamen und den Datenbanknamen, um die globale Shard-Map-Datenbank zu identifizieren.The management connection string also includes the server name and database name to identify the global shard map database. Nachfolgend sehen Sie eine typische Verbindungszeichenfolge für diesen Zweck:Here is a typical connection string for that purpose:

"Server=<yourserver>.database.windows.net;Database=<yourdatabase>;User ID=<yourmgmtusername>;Password=<yourmgmtpassword>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;”

Verwenden Sie die Werte nicht im Format username@server, sondern einfach nur den Wert „username“.Do not use values in the form of "username@server"—instead just use the "username" value. Der Hintergrund ist, dass die Anmeldeinformationen für den Zugriff sowohl auf die Shard-Zuordnungs-Manager-Datenbank als auch auf einzelne Shards verwendet werden, die sich auf unterschiedlichen Servern befinden können.This is because credentials must work against both the shard map manager database and individual shards, which may be on different servers.

ZugriffsanmeldeinformationenAccess credentials

Beim Erstellen eines Shard-Zuordnungs-Managers in einer Anwendung, die keine Shard-Zuordnungen verwaltet, verwenden Sie Anmeldeinformationen, die Leseberechtigungen für die globale Shard-Zuordnung besitzen.When creating a shard map manager in an application that does not administer shard maps, use credentials that have read-only permissions on the global shard map. Die aus der globalen Shardzuordnung unter diesen Anmeldeinformationen abgerufenen Informationen werden für datenabhängiges Routing und zur Auffüllung des Shardzuordnungscaches auf dem Client verwendet.The information retrieved from the global shard map under these credentials is used for data-dependent routing and to populate the shard map cache on the client. Die Anmeldeinformationen werden über das gleiche Aufrufmuster wie für GetSqlShardMapManager bereitgestellt:The credentials are provided through the same call pattern to GetSqlShardMapManager:

// Obtain shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmReadOnlyConnectionString, ShardMapManagerLoadPolicy.Lazy);  

Beachten Sie, dass smmReadOnlyConnectionString verwendet wird, um die Verwendung unterschiedlicher Anmeldeinformationen für diesen Zugriff für Benutzer ohne Administratorrechte darzustellen. Diese Anmeldeinformationen dürfen keine Schreibberechtigungen für die globale Shardzuordnung bereitstellen.Note the use of the smmReadOnlyConnectionString to reflect the use of different credentials for this access on behalf of non-admin users: these credentials should not provide write permissions on the global shard map.

VerbindungsanmeldeinformationenConnection credentials

Bei Verwendung der OpenConnectionForKey-Methode (Java, .NET) sind zusätzliche Anmeldeinformationen erforderlich, um auf ein mit einem Sharding-Schlüssel verbundenes Shard zuzugreifen.Additional credentials are needed when using the OpenConnectionForKey (Java, .NET) method to access a shard associated with a sharding key. Diese Anmeldeinformationen müssen Berechtigungen für schreibgeschützten Zugriff auf die lokalen Shard-Map-Tabellen bereitstellen, die sich im Shard befinden.These credentials need to provide permissions for read-only access to the local shard map tables residing on the shard. Dies ist erforderlich, um eine Verbindungsüberprüfung für datenabhängiges Routing im Shard durchzuführen.This is needed to perform connection validation for data-dependent routing on the shard. Dieser Codeausschnitt ermöglicht den Datenzugriff im Kontext des datenabhängigen Routings:This code snippet allows data access in the context of data-dependent routing:

using (SqlConnection conn = rangeMap.OpenConnectionForKey<int>(targetWarehouse, smmUserConnectionString, ConnectionOptions.Validate))

In diesem Beispiel enthält smmUserConnectionString die Verbindungszeichenfolge für die Benutzeranmeldeinformationen.In this example, smmUserConnectionString holds the connection string for the user credentials. Für die Azure SQL-Datenbank finden Sie nachfolgend eine typische Verbindungszeichenfolge für Benutzeranmeldeinformationen:For Azure SQL DB, here is a typical connection string for user credentials:

"User ID=<yourusername>; Password=<youruserpassword>; Trusted_Connection=False; Encrypt=True; Connection Timeout=30;”  

Genau wie bei den Administratoranmeldeinformationen sollten Sie keine Werte im Format „username@server“ verwenden.As with the admin credentials, do not use values in the form of "username@server". Verwenden Sie stattdessen einfach „Benutzername“.Instead, just use "username". Beachten Sie außerdem, dass die Verbindungszeichenfolge keinen Server- und Datenbanknamen enthält.Also note that the connection string does not contain a server name and database name. Dies liegt daran, dass der OpenConnectionForKey-Aufruf die Verbindung basierend auf dem Schlüssel automatisch an den richtigen Shard leitet.That is because the OpenConnectionForKey call automatically directs the connection to the correct shard based on the key. Daher werden der Datenbankname und der Servername nicht bereitgestellt.Hence, the database name and server name are not provided.

Informationen finden Sie auch unterSee also

Verwalten von Datenbanken und Anmeldungen in der Azure SQL-DatenbankManaging databases and logins in Azure SQL Database

Sichern der SQL-DatenbankSecuring your SQL Database

Aufträge für die elastische DatenbankElastic Database jobs

Zusätzliche RessourcenAdditional resources

Verwenden Sie noch keine elastischen Datenbanktools?Not using elastic database tools yet? Sehen Sie sich unseren Leitfaden zu den ersten Schritten an.Check out our Getting Started Guide. Bei Fragen erreichen Sie uns im Forum für SQL-Datenbank, Featureanforderungen können Sie im Feedbackforum für SQL-Datenbank einreichen.For questions, please reach out to us on the SQL Database forum and for feature requests, please add them to the SQL Database feedback forum.