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

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

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

  • اسم المستخدم = "كاساندرا"
  • كلمة المرور = "cassandra"

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

لمزيد من المعلومات، يمكنك الاطّلاع على أوامر Cassandra SQL Shell.

تفعيل مصادقة 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. ومع ذلك، إذا سبق لك تثبيت خادم الإدارة أو معالِجات الرسائل أو أجهزة التوجيه أو خوادم 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. إذا غيّرت كلمة المرور سابقًا، استخدِم كلمة المرور الحالية.
  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.