تفعيل مصادقة Cassandra

يتم تثبيت Cassandra تلقائيًا بدون تفعيل المصادقة. هذا يعني أنه يمكن لأي شخص الوصول إلى Cassandra. يمكنك تفعيل المصادقة بعد تثبيت Edge أو كجزء من عملية التثبيت.

إذا قررت تفعيل المصادقة على Cassandra، ستستخدم بيانات الاعتماد التلقائية التالية:

  • username = 'cassandra'
  • password = 'cassandra'

يمكنك استخدام هذا الحساب أو ضبط كلمة مرور مختلفة له أو إنشاء مستخدم Cassandra جديد. يمكنك إضافة المستخدمين وإزالتهم وتعديلهم باستخدام عبارات CREATE/ALTER/DROP USER في Cassandra.

لمزيد من المعلومات، يُرجى الاطّلاع على أوامر واجهة SQL في Cassandra.

تفعيل مصادقة Cassandra أثناء التثبيت

يمكنك تفعيل مصادقة Cassandra في وقت التثبيت. ومع ذلك، على الرغم من إمكانية تفعيل المصادقة عند تثبيت Cassandra، لا يمكنك تغيير اسم المستخدم وكلمة المرور التلقائيين. عليك تنفيذ هذه الخطوة يدويًا بعد اكتمال تثبيت Cassandra.

لتفعيل مصادقة Cassandra في وقت التثبيت، يجب تضمين السمة CASS_AUTH في ملف الإعداد لجميع عُقد Cassandra:

CASS_AUTH=y # The default value is n.

تصل مكوّنات Edge التالية إلى Cassandra:

  • خادم الإدارة
  • معالِجات الرسائل
  • أجهزة توجيه
  • خوادم Qpid
  • خوادم Postgres

لذلك، عند تثبيت هذه المكوّنات، يجب ضبط السمات التالية في ملف الإعداد لتحديد بيانات اعتماد Cassandra:

CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

يمكنك تغيير بيانات اعتماد Cassandra بعد تثبيت Cassandra. ومع ذلك، إذا كنت قد ثبّتّ Management Server أو Message Processors أو Routers أو خوادم Qpid أو خوادم Postgres، عليك أيضًا تحديث هذه المكوّنات لاستخدام بيانات الاعتماد الجديدة.

لتغيير بيانات اعتماد Cassandra بعد تثبيت Cassandra:

  1. سجِّل الدخول إلى أي عقدة Cassandra باستخدام أداة cqlsh وبيانات الاعتماد التلقائية. ما عليك سوى تغيير كلمة المرور على عقدة واحدة وسيتم بثها إلى جميع عقد Cassandra في الحلقة:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    المكان:

    1. ‫cassIP هو عنوان IP لعقدة Cassandra.
    2. ‫9042 هو منفذ Cassandra التلقائي.
    3. المستخدم التلقائي هو cassandra.
    4. كلمة المرور التلقائية هي cassandra. إذا غيّرت كلمة المرور سابقًا، استخدِم كلمة المرور الحالية. إذا كانت كلمة المرور تحتوي على أي رموز خاصة، يجب تضمينها بين علامتي اقتباس مفردتين.
  2. نفِّذ الأمر التالي في طلب cqlsh> لتعديل كلمة المرور:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. اخرج من أداة cqlsh، كما هو موضّح في المثال التالي:
    exit
  4. إذا لم يسبق لك تثبيت خادم الإدارة أو معالجات الرسائل أو أجهزة التوجيه أو خوادم Qpid أو خوادم Postgres، اضبط السمات التالية في ملف الإعداد ثم ثبِّت هذه المكوّنات:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. إذا سبق لك تثبيت خادم الإدارة أو معالجات الرسائل أو أجهزة التوجيه أو خوادم Qpid أو خوادم Postgres، يُرجى الاطّلاع على إعادة ضبط كلمات مرور Edge لمعرفة الإجراءات اللازمة لتعديل هذه المكوّنات لاستخدام كلمة المرور الجديدة.

تفعيل مصادقة Cassandra بعد التثبيت

لتفعيل المصادقة:

  • حدِّث جميع مكوّنات Edge التي تتصل بـ Cassandra باستخدام اسم المستخدم وكلمة المرور في Cassandra.
  • فعِّل المصادقة على جميع عُقد Cassandra.
  • اضبط اسم مستخدم Cassandra وكلمة المرور على أي عُقدة واحدة. ما عليك سوى تغيير بيانات الاعتماد على عقدة Cassandra واحدة وسيتم بثها إلى جميع عقد Cassandra في الحلقة.

استخدِم الإجراء التالي لتعديل جميع مكوّنات Edge التي تتواصل مع Cassandra باستخدام بيانات الاعتماد الجديدة. يُرجى العِلم أنّه عليك تنفيذ هذه الخطوة قبل تعديل بيانات اعتماد Cassandra:

  1. على عقدة خادم الإدارة، نفِّذ الأمر التالي:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server
      store_cassandra_credentials -u cassandra_username -p cassandra_password

    يمكنك اختياريًا تمرير ملف إلى الأمر الذي يحتوي على اسم المستخدم وكلمة المرور الجديدَين:

    apigee-service edge-management-server store_cassandra_credentials  -f configFile

    حيث يحتوي configFile على ما يلي:

    CASS_USERNAME=cassandra_username # Default is cassandra
    CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special chars

    يعيد هذا الأمر تشغيل "خادم الإدارة" تلقائيًا.

  2. لكل خدمة من الخدمات التالية، كرِّر الخطوة 1:
    • جميع معالِجات الرسائل
    • جميع أجهزة التوجيه
    • جميع خوادم Qpid ‏ (edge-qpid-server)
    • خوادم Postgres ‏ (edge-postgres-server)

    عند تكرار الخطوة 1 لكل خدمة، استبدِل edge-management-server في الأمر أعلاه باسم الخدمة المناسب. على سبيل المثال، عند تنفيذ خطوة خدمة جهاز التوجيه، استخدِم الأمر التالي:

    /opt/apigee/apigee-service/bin/apigee-service edge-router
      store_cassandra_credentials -u cassandra -p cassandra

اتّبِع الإجراء التالي لتفعيل مصادقة Cassandra وضبط اسم المستخدم وكلمة المرور:

  1. سجِّل الدخول إلى عقدة Cassandra الأولى.
  2. نفِّذ الأمر التالي:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra
      enable_cassandra_authentication -e y

    يؤدي هذا الأمر إلى تفعيل المصادقة وإعادة تشغيل Cassandra.

  3. كرِّر الخطوتَين 1 و2 على جميع عُقد Cassandra.
  4. سجِّل الدخول إلى أي عقدة Cassandra باستخدام أداة cqlsh وبيانات الاعتماد التلقائية. ما عليك سوى تغيير كلمة المرور على عقدة Cassandra واحدة وسيتم بثها إلى جميع عقد Cassandra في الحلقة:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    المكان

    • ‫cassIP هو عنوان IP لعقدة Cassandra.
    • ‫9042 هو منفذ Cassandra.
    • المستخدم التلقائي هو cassandra.
    • كلمة المرور التلقائية هي cassandra. إذا غيّرت كلمة المرور سابقًا، استخدِم كلمة المرور الحالية.
  5. نفِّذ الأمر التالي في طلب cqlsh> لتعديل كلمة المرور:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. نفِّذ الأمر التالي في طلب cqlsh> للتأكّد من أنّ مساحة المفاتيح متاحة دائمًا.

    بالنسبة إلى مركز بيانات واحد:

    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};

    بالنسبة إلى مركزَي بيانات:

    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'};
  7. للخروج من أداة "cqlsh":
    exit
  8. شغِّل nodetool repair للتأكّد من نشر التغيير على جميع عُقد Cassandra، كما هو موضّح في المثال التالي:
    /opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw 'password'] repair system_auth

    ما عليك سوى تمرير اسم المستخدم وكلمة المرور إذا كنت قد فعّلت مصادقة JMX لـ Cassandra.