بهطور پیشفرض، Cassandra نصب میکند بدون اینکه احراز هویت فعال باشد. یعنی هر کسی می تواند به کاساندرا دسترسی داشته باشد. می توانید احراز هویت را پس از نصب Edge یا به عنوان بخشی از فرآیند نصب فعال کنید.
اگر تصمیم دارید احراز هویت را در Cassandra فعال کنید، از اعتبار پیش فرض زیر استفاده می کند:
- نام کاربری = 'کاساندرا'
- رمز عبور = 'کاساندرا'
می توانید از این حساب استفاده کنید، رمز عبور دیگری برای این حساب تعیین کنید، یا یک کاربر جدید کاساندرا ایجاد کنید. با استفاده از عبارات Cassandra CREATE/ALTER/DROP USER
کاربران را اضافه، حذف و اصلاح کنید.
برای اطلاعات بیشتر، دستورات پوسته Cassandra SQL را ببینید.
در حین نصب، احراز هویت 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
پس از نصب کاساندرا می توانید اعتبارات کاساندرا را تغییر دهید. با این حال، اگر قبلاً سرور مدیریت، پردازشگرهای پیام، روترها، سرورهای Qpid یا سرورهای Postgres را نصب کردهاید، باید آن مؤلفهها را نیز بهروزرسانی کنید تا از اعتبارنامههای جدید استفاده کنید.
برای تغییر اعتبار Cassandra پس از نصب Cassandra:
- با استفاده از ابزار
cqlsh
و اعتبار پیش فرض وارد هر گره Cassandra شوید. شما فقط باید رمز عبور را در یک گره تغییر دهید و به تمام گره های Cassandra در حلقه پخش می شود:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
کجا:
- cassIP آدرس IP گره Cassandra است.
- 9042 پورت پیش فرض کاساندرا است.
- کاربر پیش فرض
cassandra
است. - رمز عبور پیش فرض
cassandra
است. اگر قبلا رمز عبور را تغییر داده اید، از رمز عبور فعلی استفاده کنید. اگر رمز عبور حاوی هر کاراکتر خاصی است، آن را در یک نقل قول قرار دهید.
- دستور زیر را در اعلان
cqlsh>
برای به روز رسانی رمز عبور اجرا کنید:ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- همانطور که مثال زیر نشان می دهد از ابزار
cqlsh
خارج شوید:exit
- اگر هنوز سرور مدیریت، پردازشگرهای پیام، روترها، سرورهای Qpid یا سرورهای Postgres را نصب نکردهاید ، ویژگیهای زیر را در فایل پیکربندی تنظیم کنید و سپس آن مؤلفهها را نصب کنید:
CASS_USERNAME=cassandra CASS_PASSWORD=NEW_PASSWORD
- اگر قبلاً سرور مدیریت، پردازشگرهای پیام، روترها، سرورهای Qpid، یا سرورهای Postgres را نصب کردهاید ، برای فرآیند بهروزرسانی آن مؤلفهها برای استفاده از رمز عبور جدید ، «بازنشانی رمزهای عبور لبه» را ببینید.
نصب پست احراز هویت Cassandra را فعال کنید
برای فعال کردن احراز هویت:
- تمام اجزای Edge را که با نام کاربری و رمز عبور Cassandra به Cassandra متصل می شوند، به روز کنید.
- در تمام گرههای Cassandra، احراز هویت را فعال کنید.
- نام کاربری و رمز عبور Cassandra را در هر گره تنظیم کنید. شما فقط باید اعتبار یک گره کاساندرا را تغییر دهید و آنها به تمام گره های کاساندرا در حلقه پخش می شوند.
از روش زیر برای به روز رسانی تمام اجزای Edge که با کاساندرا در ارتباط هستند با اعتبار جدید استفاده کنید. توجه داشته باشید که این مرحله را قبل از بهروزرسانی اعتبار کاساندرا انجام دهید:
- در گره مدیریت سرور، دستور زیر را اجرا کنید:
/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
این دستور به طور خودکار سرور مدیریت را راه اندازی مجدد می کند.
- برای هر یک از خدمات زیر، مرحله 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 و تنظیم نام کاربری و رمز عبور از روش زیر استفاده کنید:
- وارد اولین گره کاساندرا شوید.
- دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra enable_cassandra_authentication -e y
این دستور احراز هویت را فعال می کند و Cassandra را مجدداً راه اندازی می کند.
- مراحل 1 و 2 را در تمام گره های کاساندرا تکرار کنید.
- با استفاده از ابزار
cqlsh
و اعتبار پیش فرض وارد هر گره Cassandra شوید. شما فقط باید رمز عبور را در یک گره کاساندرا تغییر دهید و به تمام گره های کاساندرا در حلقه پخش می شود:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
کجا
- cassIP آدرس IP گره Cassandra است.
- 9042 بندر کاساندرا است.
- کاربر پیش فرض
cassandra
است. - رمز عبور پیش فرض
cassandra
است. اگر قبلا رمز عبور را تغییر داده اید، از رمز عبور فعلی استفاده کنید.
- دستور زیر را در اعلان
cqlsh>
برای به روز رسانی رمز عبور اجرا کنید:ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- برای اطمینان از اینکه فضای کلید همیشه در دسترس است، دستور زیر را در اعلان
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'};
- از ابزار
cqlsh
خارج شوید:exit
- همانطور که در مثال زیر نشان داده شده است،
nodetool repair
را اجرا کنید تا مطمئن شوید که تغییر به تمام گرههای Cassandra منتشر میشود:/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw 'password'] repair system_auth
در صورتی که احراز هویت JMX را برای Cassandra فعال کرده باشید، فقط باید نام کاربری و رمز عبور خود را وارد کنید.