Firebase অ্যাপ চেকের জন্য অডিট লগিং

এই পৃষ্ঠাটি ক্লাউড অডিট লগের অংশ হিসাবে Firebase দ্বারা তৈরি অডিট লগগুলিকে বর্ণনা করে৷

ওভারভিউ

ফায়ারবেস পরিষেবাগুলি আপনাকে "কে কী, কোথায় এবং কখন?" প্রশ্নের উত্তর দিতে সাহায্য করার জন্য অডিট লগ লেখে। এগুলি হল ক্লাউড অডিট লগ, আপনার Firebase প্রকল্পের সাথে সংযুক্ত Google ক্লাউড প্রকল্পের অংশ হিসাবে সরবরাহ করা হয়েছে৷

আপনার ফায়ারবেস প্রকল্পগুলির প্রতিটিতে সরাসরি প্রকল্পের মধ্যে থাকা সংস্থানগুলির জন্য শুধুমাত্র অডিট লগ থাকে৷

ক্লাউড অডিট লগগুলির একটি সাধারণ ওভারভিউয়ের জন্য, ক্লাউড অডিট লগ ওভারভিউ দেখুন। অডিট লগ ফরম্যাটের গভীরভাবে বোঝার জন্য, অডিট লগ বুঝতে দেখুন।

উপলব্ধ অডিট লগ

Firebase অ্যাপ চেকের জন্য নিম্নলিখিত ধরনের অডিট লগ পাওয়া যায়:

  • অ্যাডমিন কার্যকলাপ নিরীক্ষণ লগ

    মেটাডেটা বা কনফিগারেশন তথ্য লেখা "প্রশাসক লিখুন" অপারেশন অন্তর্ভুক্ত।

    আপনি অ্যাডমিন অ্যাক্টিভিটি অডিট লগ অক্ষম করতে পারবেন না।

  • ডেটা অ্যাক্সেস অডিট লগ

    মেটাডেটা বা কনফিগারেশন তথ্য পড়া "অ্যাডমিন রিড" অপারেশনগুলি অন্তর্ভুক্ত করে। এছাড়াও "ডেটা রিড" এবং "ডেটা রাইটিং" ক্রিয়াকলাপগুলি অন্তর্ভুক্ত করে যা ব্যবহারকারী-প্রদত্ত ডেটা পড়তে বা লিখতে পারে।

    ডেটা অ্যাক্সেস অডিট লগগুলি পেতে, আপনাকে অবশ্যই সেগুলিকে স্পষ্টভাবে সক্ষম করতে হবে৷

অডিট লগের প্রকারের সম্পূর্ণ বিবরণের জন্য, অডিট লগের প্রকারগুলি দেখুন।

নিরীক্ষিত অপারেশন

Firebase অ্যাপ চেকের প্রতিটি অডিট লগ টাইপের সাথে কোন API ক্রিয়াকলাপগুলি সামঞ্জস্যপূর্ণ তা নিম্নলিখিতগুলি সংক্ষিপ্ত করে:

অডিট লগ বিভাগ ফায়ারবেস অ্যাপ চেক অপারেশন
প্রকল্পের কার্যক্রম
অ্যাডমিন কার্যকলাপ আপডেট সার্ভিস
ব্যাচআপডেট সার্ভিসেস
ডেটা অ্যাক্সেস (ADMIN_READ) GetService
তালিকা পরিষেবাগুলি
অ্যাপ অপারেশন
অ্যাডমিন কার্যকলাপ UpdateAppAttestConfig
UpdateDeviceCheckConfig
UpdatePlayIntegrityConfig
UpdateRecaptchaEnterpriseConfig
UpdateRecaptchaV3Config
UpdateSafetyNetConfig
DebugToken তৈরি করুন
UpdateDebugToken
ডিবাগ টোকেন মুছুন
ডেটা অ্যাক্সেস (ADMIN_READ) GetAppAttestConfig
BatchGetAppAttestConfigs
GetDeviceCheckConfig
BatchGetDeviceCheckConfigs
GetPlayIntegrityConfig
BatchGetPlayIntegrityConfigs
GetRecaptchaEnterpriseConfig
BatchGetRecaptchaEnterpriseConfigs
GetRecaptchaV3Config
BatchGetRecaptchaV3Configs
GetSafetyNetConfig
BatchGetSafetyNetConfigs
GetDebugToken
ListDebugTokens

অডিট লগ বিন্যাস

অডিট লগ এন্ট্রিতে নিম্নলিখিত বস্তুগুলি অন্তর্ভুক্ত থাকে:

  • লগ এন্ট্রি নিজেই, যা LogEntry টাইপের একটি বস্তু। দরকারী ক্ষেত্রগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:

    • logName রিসোর্স আইডি এবং অডিট লগের ধরন রয়েছে।
    • resource নিরীক্ষিত অপারেশন লক্ষ্য ধারণ করে.
    • timeStamp নিরীক্ষিত অপারেশনের সময় থাকে।
    • protoPayload নিরীক্ষিত তথ্য রয়েছে।
  • অডিট লগিং ডেটা, যা একটি AuditLog অবজেক্ট যা লগ এন্ট্রির protoPayload ক্ষেত্রে রাখা হয়।

  • ঐচ্ছিক পরিষেবা-নির্দিষ্ট অডিট তথ্য, যা একটি পরিষেবা-নির্দিষ্ট বস্তু। পুরানো ইন্টিগ্রেশনের জন্য, এই অবজেক্টটি AuditLog অবজেক্টের serviceData ক্ষেত্রে রাখা হয়; নতুন ইন্টিগ্রেশন metadata ক্ষেত্র ব্যবহার করে।

এই অবজেক্টের অন্যান্য ক্ষেত্রগুলির জন্য, এবং কীভাবে সেগুলিকে ব্যাখ্যা করতে হয়, অডিট লগ বুঝুন পর্যালোচনা করুন।

লগ নাম

ক্লাউড অডিট লগ রিসোর্স নামগুলি Firebase প্রোজেক্ট বা অন্য Google ক্লাউড সত্তাকে নির্দেশ করে যা অডিট লগগুলির মালিক এবং লগটিতে অ্যাডমিন অ্যাক্টিভিটি, ডেটা অ্যাক্সেস, নীতি অস্বীকার করা বা সিস্টেম ইভেন্ট অডিট লগিং ডেটা রয়েছে কিনা তা নির্দেশ করে৷ উদাহরণ স্বরূপ, নিম্নলিখিতটি প্রজেক্ট-লেভেল অ্যাডমিন অ্যাক্টিভিটি অডিট লগ এবং একটি প্রতিষ্ঠানের ডেটা অ্যাক্সেস অডিট লগগুলির জন্য লগ নামগুলি দেখায়৷ ভেরিয়েবলগুলি ফায়ারবেস প্রকল্প এবং সংস্থা সনাক্তকারীকে নির্দেশ করে।

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

কাজের নাম

Firebase App চেক অডিট লগগুলি পরিষেবার নাম firebaseappcheck.googleapis.com ব্যবহার করে।

সমস্ত ক্লাউড লগিং API পরিষেবার নাম এবং তাদের সংশ্লিষ্ট নিরীক্ষণ করা সংস্থান প্রকারের সম্পূর্ণ তালিকার জন্য, সম্পদের মানচিত্র পরিষেবাগুলি দেখুন৷

সম্পদের ধরন

ফায়ারবেস অ্যাপ চেক অডিট লগ সমস্ত অডিট লগের জন্য রিসোর্স টাইপ audited_resource ব্যবহার করে।

সমস্ত ক্লাউড লগিং নিরীক্ষণ করা সম্পদের ধরন এবং বর্ণনামূলক তথ্যের একটি তালিকার জন্য, পর্যবেক্ষণ করা সম্পদের ধরন দেখুন।

অডিট লগিং সক্ষম করুন

অ্যাডমিন কার্যকলাপ নিরীক্ষা লগ সবসময় সক্রিয় করা হয়; আপনি তাদের নিষ্ক্রিয় করতে পারবেন না।

ডেটা অ্যাক্সেস অডিট লগগুলি ডিফল্টরূপে অক্ষম থাকে এবং স্পষ্টভাবে সক্ষম না করা পর্যন্ত লেখা হয় না (ব্যতিক্রমটি হল BigQuery-এর জন্য ডেটা অ্যাক্সেস অডিট লগ, যা নিষ্ক্রিয় করা যাবে না)৷

আপনার কিছু বা সমস্ত ডেটা অ্যাক্সেস অডিট লগ সক্ষম করার নির্দেশাবলীর জন্য, ডেটা অ্যাক্সেস লগ কনফিগার করুন দেখুন।

অনুমতি এবং ভূমিকা

ক্লাউড IAM অনুমতি এবং ভূমিকা Google ক্লাউড সংস্থানগুলিতে অডিট লগ ডেটা অ্যাক্সেস করার আপনার ক্ষমতা নির্ধারণ করে৷

আপনার ব্যবহারের ক্ষেত্রে কোন লগিং-নির্দিষ্ট অনুমতি এবং ভূমিকাগুলি প্রযোজ্য হবে তা সিদ্ধান্ত নেওয়ার সময়, নিম্নলিখিতগুলি বিবেচনা করুন:

  • লগস ভিউয়ার রোল ( roles/logging.viewer ) আপনাকে অ্যাডমিন অ্যাক্টিভিটি, পলিসি ডিনাইড, এবং সিস্টেম ইভেন্ট অডিট লগগুলিতে শুধুমাত্র পড়ার অ্যাক্সেস দেয়৷ আপনার যদি এই ভূমিকাটি থাকে তবে আপনি _Default বালতিতে থাকা ডেটা অ্যাক্সেস অডিট লগগুলি দেখতে পারবেন না।

  • ব্যক্তিগত লগ দর্শকের ভূমিকা (roles/logging.privateLogViewer ) এর মধ্যে রয়েছে roles roles/logging.viewer logging.viewer-এ থাকা অনুমতিগুলি, এছাড়াও _Default বালতিতে ডেটা অ্যাক্সেস অডিট লগ পড়ার ক্ষমতা।

    মনে রাখবেন যে যদি এই ব্যক্তিগত লগগুলি ব্যবহারকারী-সংজ্ঞায়িত বালতিতে সংরক্ষণ করা হয়, তবে যে কোনও ব্যবহারকারীর কাছে সেই বালতিগুলিতে লগ পড়ার অনুমতি রয়েছে সে ব্যক্তিগত লগগুলি পড়তে পারে৷ লগ বালতি সম্পর্কে আরও তথ্যের জন্য, রাউটিং এবং স্টোরেজ ওভারভিউ দেখুন।

অডিট লগ ডেটাতে প্রযোজ্য ক্লাউড IAM অনুমতি এবং ভূমিকা সম্পর্কে আরও তথ্যের জন্য, অ্যাক্সেস নিয়ন্ত্রণ দেখুন।

লগ দেখুন

অডিট লগগুলি খুঁজে পেতে এবং দেখতে, আপনাকে Firebase প্রকল্প, ফোল্ডার বা সংস্থার সনাক্তকারী জানতে হবে যার জন্য আপনি অডিট লগিং তথ্য দেখতে চান৷ আপনি আরও ইনডেক্স করা LogEntry ক্ষেত্রগুলি নির্দিষ্ট করতে পারেন, যেমন resource.type ; বিস্তারিত জানার জন্য, দ্রুত লগ এন্ট্রি খুঁজুন পর্যালোচনা করুন।

নিম্নে অডিট লগের নাম দেওয়া হল; তারা Firebase প্রকল্প, ফোল্ডার বা সংস্থার শনাক্তকারীদের জন্য ভেরিয়েবল অন্তর্ভুক্ত করে:

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

আপনি GCP কনসোল, gcloud কমান্ড-লাইন টুল বা লগিং API ব্যবহার করে ক্লাউড লগিং-এ অডিট লগ দেখতে পারেন।

কনসোল

আপনি আপনার ফায়ারবেস প্রকল্প, ফোল্ডার বা সংস্থার জন্য আপনার অডিট লগ এন্ট্রিগুলি পুনরুদ্ধার করতে GCP কনসোলে লগ এক্সপ্লোরার ব্যবহার করতে পারেন:

  1. GCP কনসোলে, লগিং > লগ এক্সপ্লোরার পৃষ্ঠাতে যান।

    লগ এক্সপ্লোরার পৃষ্ঠায় যান

  2. লগ এক্সপ্লোরার পৃষ্ঠায়, একটি বিদ্যমান ফায়ারবেস প্রকল্প, ফোল্ডার বা সংস্থা নির্বাচন করুন৷

  3. ক্যোয়ারী নির্মাতা ফলকে, নিম্নলিখিতগুলি করুন:

    • রিসোর্স টাইপে , Google ক্লাউড রিসোর্স নির্বাচন করুন যার অডিট লগ আপনি দেখতে চান।

    • লগ নামে , আপনি যে অডিট লগ টাইপ দেখতে চান তা নির্বাচন করুন:

      • অ্যাডমিন অ্যাক্টিভিটি অডিট লগের জন্য, কার্যকলাপ নির্বাচন করুন।
      • ডেটা অ্যাক্সেস অডিট লগের জন্য, data_access নির্বাচন করুন।
      • সিস্টেম ইভেন্ট অডিট লগের জন্য, system_event নির্বাচন করুন।
      • নীতি অস্বীকৃত অডিট লগের জন্য, নীতি নির্বাচন করুন।

    আপনি যদি এই বিকল্পগুলি দেখতে না পান, তাহলে Firebase প্রোজেক্ট, ফোল্ডার বা প্রতিষ্ঠানে এই ধরনের কোনো অডিট লগ উপলব্ধ নেই।

    লগ এক্সপ্লোরার ব্যবহার করে অনুসন্ধান সম্পর্কে আরও বিশদ বিবরণের জন্য, লগ কোয়েরি তৈরি করুন দেখুন।

জিক্লাউড

gcloud কমান্ড-লাইন টুল ক্লাউড লগিং API-কে একটি কমান্ড-লাইন ইন্টারফেস প্রদান করে। প্রতিটি লগ নামের একটি বৈধ PROJECT_ID , FOLDER_ID , বা ORGANIZATION_ID সরবরাহ করুন৷

আপনার ফায়ারবেস প্রকল্প-স্তরের অডিট লগ এন্ট্রিগুলি পড়তে, নিম্নলিখিত কমান্ডটি চালান:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID

আপনার ফোল্ডার-স্তরের অডিট লগ এন্ট্রিগুলি পড়তে, নিম্নলিখিত কমান্ডটি চালান:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID

আপনার প্রতিষ্ঠান-স্তরের অডিট লগ এন্ট্রিগুলি পড়তে, নিম্নলিখিত কমান্ডটি চালান:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID

gcloud টুল ব্যবহার সম্পর্কে আরও তথ্যের জন্য, লগ এন্ট্রি পড়ুন দেখুন।

API

আপনার প্রশ্নগুলি তৈরি করার সময়, ভেরিয়েবলগুলিকে বৈধ মান দিয়ে প্রতিস্থাপন করুন, উপযুক্ত প্রকল্প-স্তর, ফোল্ডার-স্তর, বা সংস্থা-স্তরের অডিট লগ নাম বা অডিট লগ নামের তালিকাভুক্ত শনাক্তকারীগুলিকে প্রতিস্থাপন করুন৷ উদাহরণস্বরূপ, যদি আপনার ক্যোয়ারীতে একটি PROJECT_ID অন্তর্ভুক্ত থাকে, তাহলে আপনি যে প্রোজেক্ট আইডেন্টিফায়ারটি সরবরাহ করেন সেটিকে অবশ্যই বর্তমানে নির্বাচিত ফায়ারবেস প্রোজেক্ট উল্লেখ করতে হবে।

আপনার অডিট লগ এন্ট্রিগুলি দেখতে লগিং API ব্যবহার করতে, নিম্নলিখিতগুলি করুন:

  1. entries.list পদ্ধতির জন্য ডকুমেন্টেশনে এই API চেষ্টা করুন বিভাগে যান।

  2. এই API ফর্মটি চেষ্টা করে দেখুন অনুরোধের মূল অংশে নিম্নলিখিতটি রাখুন। এই পূর্বনির্ধারিত ফর্মটিতে ক্লিক করা স্বয়ংক্রিয়ভাবে অনুরোধের অংশটি পূরণ করে, তবে আপনাকে প্রতিটি লগ নামের একটি বৈধ PROJECT_ID সরবরাহ করতে হবে৷

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. এক্সিকিউট এ ক্লিক করুন।

ক্যোয়ারী সম্পর্কে আরো বিস্তারিত জানার জন্য, লগিং ক্যোয়ারী ভাষা দেখুন।

একটি অডিট লগ এন্ট্রির উদাহরণের জন্য এবং এতে সবচেয়ে গুরুত্বপূর্ণ তথ্য কীভাবে খুঁজে পাওয়া যায়, নমুনা অডিট লগ এন্ট্রি দেখুন।

রুট অডিট লগ

আপনি অডিট লগগুলিকে সমর্থিত গন্তব্যগুলিতে রুট করতে পারেন যেভাবে আপনি অন্যান্য ধরণের লগগুলিকে রুট করতে পারেন৷ আপনি আপনার অডিট লগগুলিকে রুট করতে চাইতে পারেন এমন কিছু কারণ এখানে রয়েছে:

  • অডিট লগগুলিকে দীর্ঘ সময়ের জন্য রাখতে বা আরও শক্তিশালী অনুসন্ধান ক্ষমতা ব্যবহার করতে, আপনি Google ক্লাউড স্টোরেজ, BigQuery, বা Google Cloud Pub/Sub-এ আপনার অডিট লগগুলির কপি রুট করতে পারেন৷ ক্লাউড পাব/সাব ব্যবহার করে, আপনি অন্যান্য অ্যাপ্লিকেশন, অন্যান্য সংগ্রহস্থল এবং তৃতীয় পক্ষের কাছে যেতে পারেন।

  • একটি সম্পূর্ণ সংস্থা জুড়ে আপনার অডিট লগগুলি পরিচালনা করতে, আপনি একত্রিত সিঙ্ক তৈরি করতে পারেন যা সংস্থার যে কোনও বা সমস্ত ফায়ারবেস প্রকল্প থেকে লগগুলিকে রুট করতে পারে৷

  • যদি আপনার সক্ষম করা ডেটা অ্যাক্সেস অডিট লগগুলি আপনার ফায়ারবেস প্রকল্পগুলিকে আপনার লগ বরাদ্দের উপর চাপ দেয় তবে আপনি সিঙ্ক তৈরি করতে পারেন যা লগিং থেকে ডেটা অ্যাক্সেস অডিট লগগুলিকে বাদ দেয়৷

রাউটিং লগ সংক্রান্ত নির্দেশাবলীর জন্য, সিঙ্ক কনফিগার করুন দেখুন।

মূল্য নির্ধারণ

অ্যাডমিন অ্যাক্টিভিটি অডিট লগ এবং সিস্টেম ইভেন্ট অডিট লগগুলি কোনও খরচের নয়৷

ডেটা অ্যাক্সেস অডিট লগ এবং নীতি অস্বীকার করা অডিট লগ চার্জযোগ্য।

ক্লাউড লগিং মূল্য সম্পর্কে আরও তথ্যের জন্য, Google ক্লাউডের অপারেশন স্যুট মূল্য দেখুন: ক্লাউড লগিং