فعال کردن اصالت‌سنجی Cassandra

به‌طور پیش‌فرض، Cassandra بدون فعال بودن اصالت‌سنجی نصب می‌شود. یعنی هرکسی می‌تواند به Cassandra دسترسی داشته باشد. می‌توانید اصالت‌سنجی را پس‌از نصب Edge یا به‌عنوان بخشی از فرایند نصب فعال کنید.

بااستفاده از دستورات Cassandra CREATE/ALTER/DROP USER می‌توانید کاربران را اضافه، حذف، و اصلاح کنید. برای اطلاعات بیشتر، فرمان‌های پوسته Cassandra SQL را ببینید.

فعال کردن اصالت‌سنجی 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. بااستفاده از ابزار cqlsh و اطلاعات کاربری پیش‌فرض، به سیستم یکی از گره‌های Cassandra وارد شوید. فقط باید گذرواژه را در یک گره تغییر دهید و این تغییر به همه گره‌های 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. اگر قبلاً Management Server،‏ Message Processors،‏ Routers،‏ Qpid servers، یا Postgres servers را نصب کرده‌اید، برای اطلاع از روش به‌روزرسانی این مؤلفه‌ها برای استفاده از گذرواژه جدید، به بازنشانی گذرواژه‌های 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. برای هریک از سرویس‌های زیر، «مرحله ۱» را تکرار کنید:
    • همه پردازشگرهای پیام
    • همه رهیاب‌ها
    • همه سرورهای Qpid‏ (edge-qpid-server)
    • سرورهای Postgres‏ (edge-postgres-server)

    وقتی «مرحله ۱» را برای هر سرویس تکرار می‌کنید، 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. مراحل ۱ و ۲ را در همه گره‌های Cassandra تکرار کنید.