Google Cloudプロジェクトの接続
クラウドインフラを保護することは、データを守るうえで極めて重要です。Aikidoのセキュリティチェックを活用することで、インフラの設定ミスを検出・対処できます。
Aikidoがクラウド環境に対して実行するセキュリティチェックの一覧を確認するには、クラウド概要ページの「checks」タブに移動します。GCPでフィルタすると、接続済みのGCPプロジェクトに対して実行される特定のチェックを確認できます。
始めるには、Aikidoのクラウド概要ページに移動し、「Connect cloud」をクリックします。ステップバイステップのセットアップウィザードに従って、GCPプロジェクトをAikidoに接続してください。

まず、正しいプロジェクトを特定するためにプロジェクトIDを入力する必要があります。次に、特定のGCPサービスに対するAPIアクセスの有効化を求められます。これは、AikidoがAPIリクエストを通じてクラウドリソースのセキュリティを検査するために重要なステップです。
APIアクセスを有効化した後、セットアップウィザードはGCPプロジェクト内の特定サービスに対する制限付きの読み取り専用アクセス権を持つサービスアカウントの作成をガイドします。このアカウントには必要なロールと権限が関連付けられますが、それらはすべて読み取り専用です。これにより、Aikidoはリソースへの意図しない変更のリスクなしにセキュリティチェックを実行できます。
カスタムロール
Section titled “カスタムロール”セットアップ時に推奨ロールを割り当てたくない場合は、以下のカスタムロールを作成し、サービスアカウントに割り当てることができます。
title: Aikido Custom Roledescription: Minimal permissions for Aikido Securitystage: GAincludedPermissions: - alloydb.clusters.list - alloydb.instances.getIamPolicy - alloydb.instances.list - apikeys.keys.list - appengine.applications.get - appengine.applications.getIamPolicy - appengine.services.list - appengine.versions.list - artifactregistry.dockerimages.get - artifactregistry.dockerimages.list - artifactregistry.files.get - artifactregistry.files.list - artifactregistry.locations.get - artifactregistry.locations.list - artifactregistry.packages.get - artifactregistry.packages.list - artifactregistry.repositories.get - artifactregistry.repositories.list - artifactregistry.tags.get - artifactregistry.tags.list - artifactregistry.versions.get - artifactregistry.versions.list - backupdr.backupPlanAssociations.list - batch.jobs.list - bigquery.datasets.get - bigquery.datasets.getIamPolicy - bigquery.tables.list - bigtable.instances.list - cloudasset.assets.listResource - cloudfunctions.functions.list - cloudkms.cryptoKeyVersions.list - cloudkms.cryptoKeys.getIamPolicy - cloudkms.cryptoKeys.list - cloudkms.cryptoKeyVersions.getIamPolicy - cloudkms.cryptoKeyVersions.list - cloudkms.keyRings.getIamPolicy - cloudkms.keyRings.list - cloudfunctions.functions.getIamPolicy - cloudfunctions.functions.list - cloudsql.backupRuns.list - cloudsql.instances.list - cloudsql.users.list - composer.environments.list - compute.addresses.list - compute.autoscalers.list - compute.backendBuckets.list - compute.backendServices.list - compute.disks.getIamPolicy - compute.disks.list - compute.firewalls.list - compute.forwardingRules.list - compute.globalAddresses.list - compute.globalForwardingRules.list - compute.healthChecks.list - compute.images.getIamPolicy - compute.images.list - compute.instanceGroupManagers.list - compute.instanceGroups.get - compute.instanceGroups.list - compute.instanceTemplates.list - compute.instances.getIamPolicy - compute.instances.list - compute.instanceTemplates.list - compute.machineImages.list - compute.networks.list - compute.nodeGroups.list - compute.nodeTemplates.list - compute.projects.get - compute.regions.list - compute.regionSslPolicies.list - compute.resourcePolicies.getIamPolicy - compute.resourcePolicies.list - compute.routers.list - compute.routes.list - compute.securityPolicies.list - compute.snapshots.list - compute.sslPolicies.list - compute.subnetworks.getIamPolicy - compute.subnetworks.list - compute.targetHttpProxies.list - compute.targetHttpsProxies.list - compute.targetPools.list - compute.targetSslProxies.list - compute.targetVpnGateways.list - compute.urlMaps.list - compute.vpnGateways.list - compute.vpnTunnels.list - container.clusters.get - container.clusters.getIamPolicy - container.clusters.list - dataplex.lakes.list - dataplex.tasks.list - dataplex.zones.list - dataproc.clusters.getIamPolicy - dataproc.clusters.list - datastore.databases.list - deploymentmanager.deployments.list - dns.managedZones.list - dns.policies.list - dns.resourceRecordSets.list - iam.roles.get - iam.roles.list - iam.serviceAccountKeys.get - iam.serviceAccountKeys.list - iam.serviceAccounts.getIamPolicy - iam.serviceAccounts.list - logging.buckets.list - logging.logMetrics.list - logging.sinks.list - metastore.services.list - monitoring.alertPolicies.list - monitoring.groups.list - monitoring.notificationChannels.list - orgpolicy.policies.list - orgpolicy.policy.get - pubsub.snapshots.list - pubsub.subscriptions.list - pubsub.topics.getIamPolicy - pubsub.topics.list - redis.clusters.list - redis.instances.list - resourcemanager.folders.get - resourcemanager.folders.list - resourcemanager.projects.get - resourcemanager.projects.getIamPolicy - resourcemanager.projects.list - run.jobs.getIamPolicy - run.jobs.list - run.locations.list - run.services.getIamPolicy - run.services.list - secretmanager.secrets.getIamPolicy - secretmanager.secrets.list - spanner.instances.list - storage.buckets.getIamPolicy - storage.buckets.list - tpu.nodes.list - vpcaccess.connectors.listサービスアカウントを作成したら、アクセスキーを生成してAikidoにアップロードする必要があります。このキーは、Aikidoがリソースをスキャンするために必要なAPIリクエストを行う際に使用されます。
最後に、Aikido上で接続したプロジェクトに名前を付け、稼働している環境を指定します。この情報は、Aikidoが重要度とビジネスへの影響に基づいて検出結果に優先順位を付けるのに役立ちます。

アカウントを接続してから1〜2分以内に、Aikidoは脅威となりうる設定ミスを報告します。
高度なルール
Section titled “高度なルール”上記のチェックに加えて、Aikidoは有効化可能な補完的なチェック/ルール一式を提供しています。これらは高度なクラウドルールと呼ばれ、こちらで確認できます。これらのルールのいずれかを有効化すると、数秒以内に結果(フィード内の新しい課題として)が表示されます。
標準チェックと同様に、これらはクラウド環境のスキャンごとに評価されます。さらに、コンプライアンスレポートにも対応付けられています。デフォルトでは、高度なルールは有効化しない限りコンプライアンスレポート上でdisabledとして表示されます。