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

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

يمكنك إضافة المستخدمين وإزالتهم وتعديلهم باستخدام عبارات Cassandra CREATE/ALTER/DROP USER. لمزيد من المعلومات، يُرجى الاطّلاع على أوامر CQL Shell في Cassandra.

  • تذكَّر تعديل اسم مستخدم Cassandra وكلمة المرور في ملف الإعداد الذي تستخدمه لتثبيت مكوّنات Edge أو ترقيتها. سيؤدي ذلك إلى إزالة أي انقطاع أو الحدّ منه أثناء عمليات الحواف.
  • تفعيل مصادقة Cassandra أثناء التثبيت

    يمكنك تفعيل مصادقة Cassandra في وقت التثبيت.

    لتفعيل مصادقة Cassandra في وقت التثبيت، أدرِج السمة CASS_AUTH في ملف الإعدادات لجميع عقد Cassandra:

    CASS_AUTH=y # The default value is n.

    تستفيد مكونات Edge التالية من Cassandra:

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

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

    CASS_USERNAME=cassandra_username
    CASS_PASSWORD=cassandra_password

    يمكنك تغيير بيانات اعتماد Cassandra بعد تثبيت Cassandra. ومع ذلك، إذا سبق لك تثبيت "خادم الإدارة" أو "معالجات الرسائل" أو "أجهزة التوجيه" أو "خوادم Qpid" أو "خوادم Postgres "، عليك أيضًا تعديل هذه المكوّنات لاستخدام بيانات الاعتماد الجديدة.

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

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

      المكان:

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

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

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

    تعديل مكوّنات Edge التي تتصل بخدمة 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. أنشئ ملف إعدادات صامتًا يتضمّن المحتوى الموضّح أدناه:
      # Specify IP address or DNS name of cassandra node
      IP1=192.168.1.1
      IP2=192.168.1.2
      IP3=192.168.1.3
      # Must resolve to IP address or DNS name of host
      HOSTIP=$(hostname -i)
      # Set to ‘y’ to enable Cassandra authentication.
      CASS_AUTH=y # Possible values are ‘y/n’
      # Cassandra username. If it does not exist, this user would be created as a SUPERUSER
      CASS_USERNAME=cassandra_username # Default value is cassandra - don't use for production
      # Cassandra Password. If CASS_USERNAME does not exist, create SUPERUSER with this as password
      CASS_PASSWORD=cassandra_password # Default value is cassandra - don't use for production
      # Space-separated IP/DNS names of the Cassandra hosts
      CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
      
      # Username of an existing C* user. Only needed if you have disabled or changed details of the default cassandra user(‘cassandra’)
      CASS_EXISTING_USERNAME=existing_cassandra_username
      # Password of an existing C* user. Only needed if you have disabled or change password of the default cassandra user(‘cassandra’)
      CASS_EXISTING_PASSWORD=existing_cassandra_password
      # Cassandra port
      CASS_PORT=9042 # The default port is 9042.
    2. سجِّل الدخول إلى عقدة Cassandra الأولى ونفِّذ الأمر التالي:

      apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG

      يمكنك اختياريًا تمرير المواقع كوسيطات أمر إلى النص البرمجي، كما هو موضّح في المثال التالي:

      CASS_AUTH=y HOSTIP=$(hostname -i) CASS_PORT=9042 CASS_EXISTING_USERNAME=existing_cassandra_username CASS_EXISTING_PASSWORD=existing_cassandra_password CASS_USERNAME=cassandra_username CASS_PASSWORD=cassandra_password  CASS_HOSTS="192.168.1.1:1,1 192.168.1.2:1,1 192.168.1.3:1,1" apigee-service apigee-cassandra enable_cassandra_authentication

      ملاحظات:

      • بالنسبة إلى بيانات اعتماد Cassandra التلقائية، يُفعِّل الأمر أعلاه مصادقة Cassandra ويعيد تشغيل Cassandra.
      • بالنسبة إلى بيانات الاعتماد غير التلقائية، يغيّر الأمر أيضًا عامل التكرار، وينشئ مستخدمًا مشرفًا ويُجري عملية إصلاح على system_auth keyspace.
    3. كرِّر الخطوتَين 1 و2 على جميع عقد Cassandra.