تحويل واحدة DB ASP.NET الموقع في MultiTenant - العضوية وأدوار معضلة

StackOverflow https://stackoverflow.com/questions/483414

سؤال

وأنا في عملية تغيير حتى موقع على شبكة الانترنت SQL DB واحد (ASP.NET/VB.NET) في التطبيق multitenant، حيث يحتوي كل عميل قاعدة البيانات الخاصة بهم.

في الموقع القديم، أشارت جميع ASP الأدوار، وتسجيلات والمقدمين على قاعدة بيانات واحدة.

والآن لدينا قواعد بيانات متعددة، وأنا أتساءل ماذا سيكون أفضل تصميم معماري / تقنيات للاستخدام. هناك قاعدة بيانات واحدة بتكوين المستأجرين، مثل اسم الشركة والإعدادات المختلفة (التي تكون عادة في الملف web.config) وسلسلة الاتصال لقاعدة بيانات المستأجر.

وإذا ما لدينا جميع أعضاء والاشياء دور في قاعدة بيانات واحدة بتكوين المستأجرين أو هل لدينا عضوية والأدوار في كل قاعدة بيانات المستأجرين الفردية؟ الخيار 2 يبدو صعبا لأنني أعتقد ASP.NET يحب مجموعة واحدة فقط من RoleProviders المحددة في الملف web.config.

لقد حاول احد ذلك من قبل أو حصل أي توصيات؟

هل كانت مفيدة؟

المحلول

إذا كنت تستخدم نموذج ASP.Net العضوية مع مقدمي المدمج في "ثم وضعها موضع واحد DB هو أسهل كما أشرت.

وخيار واحد، وأنا لم أحاول هذا، هو تحديد في ملف web.config الخاص مقدم لكل مستأجر. هذا من شأنه أن يسمح لكل مستأجر أن يكون ديسيبل عضوية خاصة بهم، ويسمح لك لتجنب الاصطدامات اسم المستخدم بين المستأجرين (إذا كان هذا هو الشرط).

نصائح أخرى

ويجب أن تكون قادرة على تكوين سلسلة اتصال قاعدة البيانات عضوية ASP.NET في وقت التشغيل. هذا موضوع لديها عدد قليل من الخيارات بما في ذلك مزود عضوية مخصصة أو تغيير قيمة في وقت مبكر يوم في طلب دورة حياة عبر Global.asax.cs.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top