クラウドオンボーディングのアクセス許可とロールのエラーを解決する (AWS、Azure、GCP)
目的
クラウドオンボーディングの失敗の多くは、アクセス許可に起因します。Tenable One Cloud Exposure が使用するロールまたはサービスアカウントにアクションがない、組織のポリシーによってブロックされている、または間違った範囲で作成されたなどです。アカウントまたは組織がオンボーディングを完了しなかった場合、ステータスが Connected with Issues または Failed を示した場合、またはセットアップスクリプトが正常に完了したように見えたにも関わらず Missing permissions エラーを返した場合に、このプレイブックを使用します。
注意: セットアップスクリプトがエラーなしで終了しても、接続のアクセス許可が満たされていないままになることがあります (たとえば、Tenable が必要とするものをすべて付与する権限を持たないアイデンティティで実行されている場合)。完了 ステップで アクセス許可がないことが報告された場合、エラーなしで完了したスクリプトではアクセス許可の完了は確認されません。
ステップ 1: ロールとサービスアカウントの設定を検証する
注意: これらのチェックは、CSP に関係なく適用されます。
ロールまたはサービスアカウントが正しいことを確認するには
- 提供されたオンボーディングスクリプトまたは Terraform モジュールを使用して、ロールまたはサービスアカウントをデプロイします。手動でトリミングされたアクセス許可セットは、 Missing permissions エラーの最も一般的な原因です。
- 個別のアカウントではなく組織全体のオンボーディング組織レベルで接続することで、アカウントを一度に 1 つずつオンボーディングする必要がなくなり、新しいアカウントとそのリソースが追加されても、クラウドサイバーエクスポージャー は継続的に可視化を確保できます。組織で設定を実行して、メンバーアカウントが自動的に検出され接続されるようにします。
-
アクセス許可を変更した後、次の方法で修正を確認します。
- オンボーディングウィザードを再度開き、[完了] をクリックします。
- 次のオーケストレーションサイクルまで待ってから、問題が解決したかどうかを確認します。
ステップ 2: クラウド固有のブロッカーを確認する
AWS
- サービス制御ポリシー (SCP)。 組織レベルの SCP は、ロールと CloudFormation スタックが正しいと思われる場合でも、クラウドサイバーエクスポージャー ロールを密かにブロックできます。クラウドサイバーエクスポージャー が必要とするアクションを拒否する SCP がないことを確認します。これは、メンバーアカウントが Connected with Issues ステータスでスタックする原因として頻繁に発生します。
- 組織全体の StackSets AWS 組織の場合は、CloudFormation StackSet がすべてのメンバーアカウントにロールをデプロイしたことを確認します。ロールのないアカウントは、管理アカウントに問題がなければ見える場合でも、ステータスが Connected with Issues または Failed 表示されます。
- クロスアカウントの CloudTrail と KMS。 CloudTrail バケットが別のログアーカイブアカウントにある場合、または別のアカウントの AWS Key Management Service (KMS) キーで暗号化されている場合、クラウドサイバーエクスポージャー ロールにはクロスアカウント読み取りアクセス権と KMS 復号化アクセス許可が必要です。
Azure
- ビルトインロールとカスタムロールクラウドサイバーエクスポージャー は、特定の組み込みロールの割り当てをチェックします。同等に見えるカスタムロールでも、チェックに失敗する可能性があります。Tenable によって指定された組み込みロールを割り当てます。
- ディレクトリのアクセス許可。 Microsoft Entra ID テナントまたは組織のオンボーディングには、十分なディレクトリ権限 (同意を付与するためのグローバル管理者ロールなど) が必要です。通常、最後のステップの Missing permissions to retrieve organization data エラーは、この原因を示しています。
- セカンドテナントまたはシングルサインオン (SSO) 認証ループ。 プライマリコンテナが企業ドメイン SSO を強制する場合、2 つ目の Microsoft Entra ID テナントをオンボーディングすると認証ループが発生する可能性があります。この問題を解決するには、ターゲットテナントの管理者認証情報を使用してプライベートまたはシークレットのブラウザウィンドウを使用するか、アプリケーションをサービスプリンシパルとして手動で登録して、テナント ID、クライアント ID、シークレットを直接入力します。
GCP
- 組織の範囲とプロジェクトの範囲。 個別のプロジェクトをオンボーディングする場合、プロジェクト所有者ロールだけでは十分ではありません。組織レベルで必要なロールを割り当てます。
ステップ 3: 接続を確認する
接続ステータスを確認する方法
- オンボーディングウィザードを再度開き、[完了] をクリックしてキーのアクセス許可を検証します。ここでは、主要なアクセス許可のみがチェックされ、フルセットはチェックされません。
- 次のオーケストレーションサイクルを待ちます。
- 管理アカウントだけでなく、各メンバーアカウント、サブスクリプション、またはプロジェクトに Connected ステータスが表示され、データが入力され始めることを確認します。
- 最初の完全な分析が完了するまで待ちます。大規模な企業の場合、検出結果のデータが入力されるまでに数時間かかることがあります。
重要: それでもアカウントが接続されない場合や、ロール、SCP、StackSets が正しいにも関わらず次のオーケストレーションサイクル後にアカウントがスタックした場合は、Tenable サポートにお問い合わせください。コンテナ ID、クラウドプロバイダー、および正確なエラーテキストを入力します。