我正在Windows上使用Cassandra數據庫構建ASP.NET Core MVC應用程序。使用Cassendra數據庫實現ASP.NET Core身份驗證
我需要使用Cassandra來實現ASP.NET Core Identity的幫助。
在Google上,我在版本2.0.0.1中發現了AspNet.Identity.Cassandra
,但它與ASP.NET Core 1.0不兼容。
我正在Windows上使用Cassandra數據庫構建ASP.NET Core MVC應用程序。使用Cassendra數據庫實現ASP.NET Core身份驗證
我需要使用Cassandra來實現ASP.NET Core Identity的幫助。
在Google上,我在版本2.0.0.1中發現了AspNet.Identity.Cassandra
,但它與ASP.NET Core 1.0不兼容。
幾個選項
我工作數據存儲適配器上的ASP.NET Core Identity 它允許你建立核心ASP.NET Web應用程序,包括會員,登錄和用戶數據。藉助這個庫,您可以在Apache Cassandra上存儲用戶的會員相關數據。
請注意,圖書館是alpha版本,需要完成
如果你想嘗試一下,請按照下列步驟操作:
1 - 從包管理器運行以下命令控制檯安裝Cassandra身份提供程序。
Install-Package AspNetCore.Identity.Cassandra -Version 1.0.0-alpha1
2 - 添加設置appsettings.json
{
"CassandraNodes": [
"127.0.0.1"
],
"CassandraOptions": {
"KeyspaceName": "identity",
"Replication": {
"class": "NetworkTopologyStrategy",
"datacenter1": "1"
}
}
}
3 - 在配置服務Startup.cs
public void ConfigureServices(IServiceCollection services)
{
// CassandraOptions configuration
services.Configure<CassandraOptions>(Configuration.GetSection("CassandraOptions"));
// Cassandra ISession initialization
services.AddCassandraSession<Cassandra.ISession>(() =>
{
var cluster = Cassandra.Cluster.Builder()
.AddContactPoints(Configuration.GetSection("CassandraNodes").GetChildren().Select(x => x.Value))
.Build();
var session = cluster.Connect();
return session;
});
// Added custom Cassandra stores
services.AddIdentity<ApplicationUser, ApplicationRole>()
.UseCassandraStores<Cassandra.ISession>()
.AddDefaultTokenProviders();
// Other code omitted
}
4 - 最後,在程序初始化DB .cs
public static class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build()
.InitializeIdentityDb<ApplicationUser, ApplicationRole>();
}
欲瞭解更多信息,請在github上檢查project site。
儘管此鏈接可能會回答問題,但最好在此處包含答案的重要部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/17648534) –
@ LW001我改進了我的回答 –
你的問題或**具體**問題是什麼?要求我們爲你找到資源(指南,教程)或圖書館是無關緊要的。請在提問前閱讀常見問題解答:http://stackoverflow.com/help/on-topic – Tseng