クラウドネイティブセキュリティのための5つのヒント

クラウドネイティブセキュリティのための5つのヒント

コンテナとサーバーレス プラットフォームに基づくクラウド ネイティブ アプリケーションは、世界中の組織で急速に導入されています。クラウド ネイティブ アプリケーションは、スケーラビリティ、比類のない回復力、高速な開発速度をもたらしますが、課題ももたらします。

クラウドネイティブ アプリケーションには多数の可動部分があり、一時的なアーキテクチャ コンポーネントに基づいています。これにより、操作と保守が困難になります。さらに、当然ながら安全上のリスクもあります。クラウドネイティブ セキュリティには、新しいソリューション、戦略、ツールが必要です。ここでは、企業のクラウドネイティブ セキュリティの向上に役立つ 5 つのヒントを紹介します。

[[417272]]

クラウドネイティブとは何ですか?

クラウド ネイティブ アプリケーションはクラウド用に作成され、開発、展開、テスト、アップグレードといったソフトウェア開発ライフサイクル全体がクラウド環境で完了します。 「クラウド」の概念はパブリック クラウドに限定されず、リモート リソースとローカル リソースの両方を備えたハイブリッド クラウドや、複数のクラウド プロバイダーを備えたマルチクラウド環境を意味する場合もあります。

Cloud Native Computing Foundation (CNCF) は、クラウド ネイティブ コンピューティングでは、コンテナ化、マイクロサービス構造、動的オーケストレーションの 3 種類のツールを使用する必要があると考えています。コンテナ化とは、ソフトウェアとその関連する依存関係をバインドして、ソフトウェアを移植可能かつスケーラブルにすることを意味します。動的オーケストレーションには、Kubernetes などのツールを使用してクラウド コンテナを管理することが含まれます。マイクロサービス構造によりリソースを最適化できます。コンテナは、別のクラウドネイティブ コンピューティング機能であるサーバーレス関数に置き換えることができます。

クラウドネイティブのセキュリティの課題

クラウドネイティブ アプリケーションは、インフラストラクチャとアプリケーションのセキュリティにさらなる課題をもたらします。主な課題は次のとおりです。

  • 保護する複数のエンティティ: DevOps チームとインフラストラクチャ チームは、マイクロサービスを使用してクラウド ネイティブ アプリケーションを実行します。以前は、複数のプロセスまたはソフトウェア機能が単一の仮想マシン上で実行されていました。現在、各プロセスまたは機能は、個別のコンテナまたはサーバーレス関数としてパッケージ化されています。各エンティティは攻撃に対して脆弱であるため、開発サイクル全体を通じて保護する必要があります。
  • 多様な構造: クラウド ネイティブ システムには、多くのパブリック クラウド、プライベート クラウド、クラウド サービス、アプリケーション構造が含まれます。構造ごとに危険性と安全要件が異なります。セキュリティ チームは、この複雑な攻撃対象領域を理解し、さまざまなアーキテクチャごとにソリューションを見つける必要があります。
  • 変化する環境: パブリック クラウド環境とプライベート クラウド環境は常に変化しています。ソフトウェアのリリース サイクルが速いということは、マイクロサービス アプリケーションのすべてのコンポーネントを毎日アップグレードする必要があることを意味します。さらに、不変性とインフラストラクチャをコードとして使用すると、アプリケーションが常に分解され、リファクタリングされることになります。セキュリティ チームにとって、リリース サイクルを遅らせることなくこれらのテクノロジ アプリケーションを保護することは困難です。

クラウドネイティブアプリケーションを保護する方法

クラウド ネイティブ アプリケーションを保護するには、セキュリティのシフトレフト、機能およびコンテナ レベルでの境界セキュリティの適用、最小の役割と最小権限の適用、アプリケーションの依存関係の保護、セキュリティ責任の共有など、複数の方法があります。

1. 安全を左にシフトする

多くの企業は、クラウドネイティブ アプリケーション環境の速度、規模、動的ネットワークに対応できない既存のツールを依然として使用しています。サーバーレス機能を追加すると、インフラストラクチャ全体がより抽象化され、問題はさらに深刻になります。

サイバー攻撃者は、コンテナやサーバーレス コードの脆弱性、クラウド インフラストラクチャの構成ミスを探し、機密情報を含むエンティティにアクセスし、それを利用して権限を昇格し、他のエンティティを攻撃します。

もう 1 つの問題は、企業が CI/CD ツールを使用してアプリケーションを継続的に開発、テスト、リリースしていることです。コンテナを使用してクラウドネイティブ アプリケーションをデプロイする場合、開発者はローカル ライブラリまたはパブリック ライブラリからイメージを取得しますが、通常、これらのイメージにセキュリティ リスクが含まれているかどうかはチェックしません。

解決策の 1 つは、信頼できないイメージが CI/CD パイプラインに入るのを防ぐツールをセキュリティ チームに提供し、信頼できないイメージが本番環境に入る前にセキュリティ上の問題を引き起こすのを防ぐメカニズムを有効にすることです。開発プロセスの早い段階でイメージをスキャンして脆弱性やマルウェア コンポーネントなどを検出することにより、開発者はセキュリティ標準を強制できます。

2. 機能レベルとコンテナレベルで境界セキュリティを適用する

サーバーレス アプリケーションでは、システムは、さまざまなリソースからプロジェクト トリガーを受け取ることができる複数の呼び出し可能なコンポーネントに分割されます。これにより、攻撃者はより多くの攻撃オプションと悪意のある動作を実行する方法を得ることができます。

重要な方法の 1 つは、クラウド ネイティブ環境向けに作成された API およびアプリケーション セキュリティ ツールを使用することです。これに加えて、関数レベルで境界セキュリティを使用することが一般的です。つまり、関数が通常とは異なるソースによってトリガーされたかどうかを識別し、異常がないかイベント トリガーを監視します。

コンテナ化された環境では、オーケストレーション コントロール プレーン、物理ホスト、ポッド、コンテナなど、さまざまなレベルでセキュリティを実装することが重要です。オーケストレーション セキュリティのベスト プラクティスには、ノードの分離、コンテナー間のトラフィックの制限と監視、API サーバーに対するサードパーティの認証メカニズムの使用などがあります。

3. 最小限の役割と最小限の権限

クラウド ネイティブ リソース間では、頻繁なやり取りが多数発生します。サーバーレス関数またはインスタンスごとに固有の権限を構成できると、セキュリティを大幅に向上できます。アクセス制御は、機能ごとに IAM を使用するか、コンテナにきめ細かい権限を適用することで強化できます。少し時間を取って、各機能またはコンテナに対して最小限のロールまたは権限セットを作成してください。これにより、クラウド ネイティブ アーキテクチャの 1 つのポイントが侵害された場合でも、発生する損害は最小限に抑えられ、他のコンポーネントで権限昇格の問題が発生するのを防ぐことができます。

4. アプリケーションの依存関係を保護する

サーバーレス関数とアプリケーション コードは、多くの場合、npm や PyPI などのリポジトリから依存関係を取得します。

アプリケーションの依存関係を保護するには、完全なオープンソース コンポーネントとその脆弱性データベースを含む自動化ツールが必要です。同様に、開発プロセス中に安全な動作をトリガーできるクラウドネイティブのオーケストレーション ツールも必要です。これらのツールを継続的に実行することで、潜在的に危険なコード パッケージやコンテナーが生産ラインで実行されるのを防ぐことができます。

5. 安全に対する責任の共有

開発者、DevOps、セキュリティ チーム間の緊密な関係を構築します。開発者はセキュリティの専門家ではありませんが、コードを安全に記述できるようにセキュリティの実践方法を教えることはできます。セキュリティ チームは、アプリケーションがどのように開発、テスト、展開されるか、またプロセスでどのようなツールが使用されるかを把握し、これらのプロセスにセキュリティ要素を効果的に追加できるようにする必要があります。

クラウド ネイティブでは、セキュリティと開発を管理するためのさまざまなエンタープライズ方法が必要になるため、さまざまなチーム間のギャップをできるだけ早く減らすことが重要です。クラウド ネイティブの導入は、企業がコラボレーションと共有の文化を育む貴重な機会です。

結論は

この記事では、保護する必要があるエンティティの数の多さや、絶えず変化する環境と構造など、クラウド ネイティブの課題について触れています。同様に、クラウド ネイティブ環境を改善できる 5 つのベスト プラクティスが示されています。

  • セキュリティをシフトレフトすることで、生産ラインに入る前に問題を回避できます。
  • 機能レベルとコンテナ レベルで境界セキュリティを適用します。
  • クラウド ネイティブ アプリケーション内のエンティティに対して最小限のロールと最小限の権限を適用します。
  • アプリケーションの依存関係を保護します。
  • 開発、運用、セキュリティ チーム間でセキュリティの責任を共有することを推奨します。

レビュー

ビジネスのペースが加速するということは、サーバーレス アプリケーションなどのクラウド ネイティブ アプリケーションが企業でますます導入され、クラウド ネイティブ セキュリティもさらに注目されるようになることを意味します。この記事で紹介した 5 つのセキュリティ提案のうち、ソフトウェア セキュリティ関連の提案が大部分を占めていることは容易に想像できます。セキュリティ レフト シフト、アプリケーション依存性の保護、DevSecOps セキュリティ コラボレーション全体の実現など、結局のところ開発セキュリティと切り離せないものです。この観点から、クラウドネイティブの活用により、DevSecOpsとAPIセキュリティの重要性はさらに高まります。

<<:  Containerd の使い方を 1 つの記事で解説

>>:  クラウドネイティブの初体験: K8s への Springboot アプリケーションのデプロイ

推薦する

SEO担当者が仕事で避けるべき3つの言い訳の解説

人生において、私たちはいつも失敗の言い訳を探したがります。「...が好きじゃないから」「...だから...

アリババクラウド社長張建鋒氏:将来アプリケーションの80%はビジネス担当者によって開発される

11月3日、アリババクラウドインテリジェンスの張建鋒社長は2022年雲奇カンファレンスで、DingT...

オンライン口コミマーケティングの価値と必要条件についての簡単な議論

文字通り言えば、オンライン口コミマーケティングとは、インターネットを通じて口コミで広まるマーケティン...

最も美しいウェブデザインは何ですか?

この記事は、ウェブサイトデザイン会社 weavora.com からの翻訳です。同社が考えるウェブデザ...

ウェブサイトのコンテンツ構築、データ分析、情報アーキテクチャの関係についての簡単な説明

ほとんどのウェブマスターは、独自の考えに基づいてウェブサイトを運営しています。このようにウェブサイト...

王雲:ロサンゼルスcn2 gia vpsの年間支払いは月額16元と安く、200Mと10Gbpsの帯域幅を持つ独立したサーバーもあります

Wangyun.net では現在、VPS と専用サーバーを大幅割引でご提供しています。 (1) 米国...

SwiftVM 128 RAM 6 USD/半年/5g SSD

swiftvm は、優れたサーバー ハードウェア、優れたデータ センター、優れた価格といった特徴を備...

ベルテルスマンはKaixin.comを通じて母子専門のソーシャルネットワークに参入する可能性があると報じられている。

4月10日、メディア大手ベルテルスマンが5年前の中国市場での失敗から再起を図っていると報じられた。 ...

OpenHarmony 分散ソフトバスプロセス分析 v1.0丨2。ソフトバスを開いて接続を確立する

[[408696]]詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したH...

草の根ウェブマスター、あなたには執行力がありますか?

今日、私は a5 の「草の根ウェブマスターのインターネット起業の鍵は実行力」という記事を見て、私たち...

hostus-4 コア/3IP/6g メモリ/150g ハードディスク/5T トラフィック/700m ポート

高リソースの VPS にあまりお金をかけたくない場合は、次の 2 つの VPS が適している可能性が...

Baidu Wireless サイトマップを WordPress に追加する

多くの友人はWordPressなどのウェブサイト構築ツールを好んで使用しており、その人気度は非常に高...

企業ウェブサイトのトラフィックを増やすためのキーワードマイニング

企業ウェブサイトの責任者から、ウェブサイトのトラフィックが低すぎるという不満をよく聞きます。固定 I...

トラフィック市場を掌握し、モバイル決済広告は企業にとって新たなマーケティングツールとなる

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますモバイル決...

100TB - サーバー/ソフトレイヤー コンピュータ ルーム/100T トラフィックの 30% 割引

100tb.com は30% 割引コード 30OFFをリリースしました。割引コードを使用すると、専用...