Utilizzo di un driver client Cassandra.NET Core per accedere ad Amazon Keyspaces a livello di codice - Amazon Keyspaces (per Apache Cassandra)

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di un driver client Cassandra.NET Core per accedere ad Amazon Keyspaces a livello di codice

Questa sezione mostra come connettersi ad Amazon Keyspaces utilizzando un driver client.NET Core. I passaggi di configurazione variano a seconda dell'ambiente e del sistema operativo, potrebbe essere necessario modificarli di conseguenza. Amazon Keyspaces richiede l'uso di Transport Layer Security (TLS) per proteggere le connessioni con i client. Per connetterti ad Amazon Keyspaces tramite TLS, devi scaricare un certificato digitale Starfield e configurare il driver per utilizzare TLS.

  1. Scarica il certificato Starfield e salvalo in una directory locale, prendendo nota del percorso. Di seguito è riportato un esempio di utilizzo PowerShell.

    $client = new-object System.Net.WebClient $client.DownloadFile("https://certs.secureserver.net/repository/sf-class2-root.crt","path_to_file\sf-class2-root.crt")
  2. Installa CassandraC SharpDriver tramite nuget, usando la console nuget.

    PM> Install-Package CassandraCSharpDriver
  3. L'esempio seguente utilizza un progetto console.NET Core C# per connettersi ad Amazon Keyspaces ed eseguire una query.

    using Cassandra; using System; using System.Collections.Generic; using System.Linq; using System.Net.Security; using System.Runtime.ConstrainedExecution; using System.Security.Cryptography.X509Certificates; using System.Text; using System.Threading.Tasks; namespace CSharpKeyspacesExample { class Program { public Program(){} static void Main(string[] args) { X509Certificate2Collection certCollection = new X509Certificate2Collection(); X509Certificate2 amazoncert = new X509Certificate2(@"path_to_file\sf-class2-root.crt"); var userName = "ServiceUserName"; var pwd = "ServicePassword"; certCollection.Add(amazoncert); var awsEndpoint = "cassandra.us-east-2.amazonaws.com" ; var cluster = Cluster.Builder() .AddContactPoints(awsEndpoint) .WithPort(9142) .WithAuthProvider(new PlainTextAuthProvider(userName, pwd)) .WithSSL(new SSLOptions().SetCertificateCollection(certCollection)) .Build(); var session = cluster.Connect(); var rs = session.Execute("SELECT * FROM system_schema.tables;"); foreach (var row in rs) { var name = row.GetValue<String>("keyspace_name"); Console.WriteLine(name); } } } }

    Note sull'utilizzo:

    1. Sostituisci "path_to_file/sf-class2-root.crt" con il percorso del certificato salvato nel primo passaggio.

    2. Assicurati che il ServiceUsernome e la password ServicePasswordcorrispondano al nome utente e alla password che hai ottenuto quando hai generato le credenziali specifiche del servizio seguendo i passaggi da. Genera credenziali specifiche per il servizio

    3. Per un elenco degli endpoint disponibili, consulta. Endpoint di servizio per Amazon Keyspaces