Entity Framework, WebAPI, ASP.NET Identity kullanarak çok kiracılı bir uygulama oluşturdum. Temel olarak, kiracının alt etki alanını okur ve onu kullanarak veritabanından bağlantı dizesini okur ve çalışma zamanına ayarlar.ASP.NET Kimlik + Taşıyıcı Jetonu + Çoklu Kiracı
Her şey harika, veritabanı vb. Yaratıyor, ancak tek sorun şu anda ASP.NET Identity Bearer Token.
http://tenant1.#####.com/token için bir taşıyıcı erişim belirteci oluşturduğumda, belirteç aynı uygulamada (makine anahtarı belirtilmemiş) imzalanmış gibi görünüyor ve http://tenant2.#####.com denetleyicilerine de erişim izni veriyor. Farklı alt alanlar/kiracılar gibi.
Bunun etrafında herhangi bir yolu var mı? Ya da belki de ASP.NET Kimliğine değil, diğer Güvenlik Çerçevesine bakmalı mıyım?
Jetonların üzerinde kontrolü ele geçirip, kiracı adına özel bir veri eklemeniz gerekir. Jetonlar iddialara dayandığından bu mümkün olmalıdır. Ardından, geçerli kiracının simgeden biriyle eşleşip eşleşmediğini doğrulamak için her istek üzerine başka bir kontrol edin. Bu kontrol örneğin özel bir http modülünde yapılabilir. –
Merhaba, bu senaryoda hak talepleri "güvenli" bir yaklaşım mıdır? Çünkü tek yapmamız gereken, doğru bir kiracı iddiasıyla bir jetonu taklit edebilmektir ve talep geçebilir mi? –
İstemci tarafında bir jetonu taklit edemezsiniz. –