Amazon Web Services ブログ

Tag: AWS KMS

AWS-SaaS-Factory-1

マルチテナントソリューションでAmazon SQSを使う

AWS SaaS Factoryチームのシニアパートナーソリューションアーキテクト Raju Patel によって書かれた記事です。 モダンアプリケーションは、サービス統合、バッチ処理、またはワークフローオーケストレーションの一部として、キューイングに依存することがよくあります。キューは、システムの環境に拡張性と耐障害性を追加するうえ重要です。 これは、キューイング戦略をマルチテナントソリューションのワークロードにどのように適用するかを考える必要がある、Software-as-a-Service(SaaS)環境では特に当てはまります。SaaS アプリケーションのキューイングモデルを設計する際には、データの分離、パフォーマンス、および運用を考慮する必要があります。 多くの組織がアマゾンウェブサービス (AWS) 上で SaaS ソリューションを構築および運用する過程において、筆者は AWS SaaS Factory のパートナーソリューションアーキテクトとして彼らと連携をしてきました。特に、テナントの分離とスケーラビリティを考慮しつつ、俊敏性を高めるマルチテナントソリューションの構築において組織を支援することにフォーカスしています。 この記事では、Amazon Simple Queue Service (SQS) を利用して SaaS ソリューションを構築する際の一般的なシナリオをいくつか紹介します。ここでは、データ分離、スケーラビリティ、コンプライアンス要件が、キューイングモデルの選択にどのように関係するかを説明します。 本投稿には、マルチテナントソリューションでの SQS の利用について示すサンプルコードが含まれています。 SaaS におけるキューイングの課題 SaaS 環境におけるキューの役割について理解を深めるために、サンプルユースケースを見てみましょう。図 1 に示す概念図は、キューを使用する注文管理システムの一例です。 図 1 – キューを用いた注文管理と在庫更新のフロー 最初のフローは、注文、作成、確定、出荷の各サービスの統合を示しています。注文キューと出荷キューは、複数のテナントからメッセージを受信します。注文確定や注文出荷などのサービスは、Amazon Elastic Kubernetes Service (Amazon EKS) のコンテナで実行することも、AWS Lambda でサーバーレスで実行することもできます。 図 1 の 2 番目のフローは在庫の更新についてです。このフローでは、テナントがファイルをアップロードし、メッセージがキューに配置されて処理されます。バッチによる在庫更新プロセスでメッセージが取得され、ファイルから在庫テーブルにデータがロードされます。 キューの構成は比較的単純ですが、マルチテナンシーでは追加の考慮事項がいくつかあり、それらはキュー設計に影響を与える可能性があります。 たとえば、あるテナントが […]

Read More

VMware Cloud on AWS Outpostsの基礎についての深掘り

AWS で Sr. Manager, Solutions Architecture を務める Aarthi Raju と Sr. Partner Solutions Architect を務める Schneider Larbi による記事です。 お客様がワークロードのモダナイズとクラウドへの移行を検討する際、ユースケースによっては完全にクラウドに移行し、Amazon Elastic Compute Cloud (Amazon EC2) やコンテナ、サーバーレスアーキテクチャにアプリケーションを実装することを選択する方もいらっしゃいます。 vSphere ワークロードを持つお客様は、VMware Cloud on AWS を利用して、アプリケーションを高速かつシームレスにクラウドに移行しています。 VMware Cloud on AWS では、アプリケーションのコードやロジックをリファクタリングや変更することなく、ワークロードをより迅速に移行することができます。我々のチームは、vSphere のワークロードをクラウドに移行するお客様と仕事をしていく中で、低レイテンシー、ローカルでのデータ処理、あるいはデータのガバナンスやコンプライアンスなどの要件により、特定のワークロードについてはオンプレミスやエッジに残す必要があるとフィードバックを受け取りました。 Amazon Web Services (AWS) は、vSphere をご利用のお客様のこうしたユースケースに対応するため、VMware Cloud on AWS Outposts を発表しました。このサービスは、企業がこれらのワークロードを、オンプレミスのフルマネージドな VMware Cloud on AWS スタック上で実行できるようにするものです。 VMware Cloud […]

Read More

AWS Key Management Serviceで権限委譲 (Grants) を付与してアクセス許可 (Permissions) を管理する

本記事は Managing permissions with grants in AWS Key Management Service を翻訳したものです。 本投稿は、AWS KMS チームの Software development engineer の Rick Yin により寄稿されました。 AWS Key Management Service (AWS KMS) は、お客様が暗号化を使用してデータを保護するのに役立ちます。Amazon Relational Database Service (Amazon RDS) や Amazon Simple Storage Service (Amazon S3) バケットなど、暗号化された新しい Amazon Web Services (AWS) リソースを作成する場合、利用者が管理する AWS KMS キー ID を提供するだけでデータが暗号化され、暗号キーの保護と高可用性の実現の複雑さが軽減されます。 サービス内のデータを暗号化するときに、自分の管理下にあるキーを使用して、AWS サービスに暗号化を委任することを検討している場合、どのようにして AWS サービスがそのキーを必要なときにのみ使用し、すべてのリソースを復号するためのフルアクセスが常に許可されないようにしているのか疑問に思うかもしれません。その答えは、AWS […]

Read More

Amazon Connect Customer Profilesを使ってパーソナライズされた顧客体験を提供する

顧客がコンタクトを取りに来るシナリオでは、コンタクトセンターに到達する前に彼らのジャーニーを理解することは、パーソナライズされたセルフサービスおよびエージェント体験を提供するのに非常に役立ちます。過去の保留時間、顧客感情、最近のビジネストランザクションなどのデータは、効果的な顧客解決と顧客満足度スコア(CSAT)の向上において大きな役割を果たします。しかし、この顧客データを、異なるビジネスアプリケーションから単一のプロファイルに統合することは、困難で複雑で、コストがかかり、継続的なメンテナンスを必要とします。 Amazon Connect Customer Profiles は、すべての顧客データを単一のプロファイルインターフェースに統合することで、この課題を解決します。顧客プロファイルには、名前、住所、Eメール、購入履歴、および出荷状況、訪問したウェブページ、カスタマーサービスのコンタクト履歴などのマーケティングデータなどの関連情報を含めることができます。Customer Profiles は、Amazon Connect 内の過去のやり取りと、顧客関係管理 (CRM) システム、マーケティングオートメーションソリューション、業務アプリケーションなどのサードパーティアプリケーションからのデータを組み合わせて、統一された顧客プロファイルを提供します。Amazon Connect からのデータには、以前のキュー期間、保留数、エージェントへの連絡手順、会話記録、顧客の感情など、顧客の連絡履歴が含まれます。同様に、サードパーティアプリケーションのデータの例には、お客様の電話番号、住所、過去のトランザクション、チケットの詳細などがあります。 Salesforce、ServiceNow、Zendesk、Marketo用に用意されている事前構築されたコネクタを活用して、わずか数クリックで、サードパーティのアプリケーションからデータを取り込み、統一された顧客プロファイルを作成できます。お客様は、Amazon Connect Customer Profiles API を使用して、自社開発のアプリケーションとデータストアを統合することもできます。

Read More

Docker Hub による AWS Container Services の認証

本投稿は Nathan Arnold による記事 Authenticating with Docker Hub for AWS Container Services を翻訳したものです。 Docker Hub は最近利用規約を更新し、コンテナイメージ Pull の rate limits を導入しました。これらの制限は Pro や Team プランのアカウントには適用されませんが、匿名ユーザーは IP アドレスごとに6時間あたり 100 Pull まで、認証済みの無料アカウントは6時間あたり200 Pull までと制限されています。この記事では、新たに設けられた制限による運用の混乱を回避し、プライベートコンテナイメージへのアクセスを制御するために、Amazon ECS と Amazon EKS の両方を使用してプライベートリポジトリからイメージを Pull するために Docker Hub で認証する方法を学びます。まだ Docker Hub を使用していない場合は、AWSクラウド環境とネイティブに統合されたフルマネージドの代替手段としてAmazon Elastic Container Registry (Amazon ECR) を検討してみてはいかがでしょうか。 Amazon ECS による Docker […]

Read More

ラウンド 2 の ポスト量子暗号 TLS が KMS でサポートされました

AWS Key Management Service (AWS KMS) が AWS KMS API エンドポイントに接続する際に使われる Transport Layer Security (TLS) 1.2 暗号化プロトコルにおいて新しいハイブリッド型のポスト量子暗号(耐量子暗号)鍵交換アルゴリズムをサポートするようになりました。これらの新しいハイブリッドポスト量子アルゴリズムは、古典的な鍵交換による実証済みのセキュリティと、標準化作業で評価中の新しいポスト量子鍵交換の潜在的な耐量子安全特性を組み合わせたものです。これらのアルゴリズムの中で最も高速なものは、古典的な TLS ハンドシェイクと比較して約 0.3 ミリ秒のオーバーヘッドがあります。追加された新しいポスト量子暗号鍵交換アルゴリズムは、Kyber のラウンド 2 バージョン、Bit Flipping Key Encapsulation(BIKE)、および Supersingular Isogeny Key Encapsulation(SIKE)です。標準化に参加している各組織は、米国国立標準技術研究所(NIST) のポスト量子暗号の標準化プロセスの一環として、アルゴリズムを NIST に提出しています。このプロセスは、複数年にわたる数ラウンドの評価にまたがり、2021 年以降も続く可能性があります。 以前のハイブリッド量子暗号 TLS に関するブログ投稿で、AWS KMS がラウンド 1 バージョンの BIKE と SIKE を備えたハイブリッドポスト量子暗号 TLS 1.2 をリリースしたことを発表しました。ラウンド 1 のポスト量子暗号 アルゴリズムは引き続き AWS KMS でサポートされていますが、ラウンド […]

Read More

AWS上でどのようにゼロトラストアーキテクチャを考えていくか

2021年7月追記: AWSにおけるゼロトラストに関するアップデートされた情報は、以下をご参照ください。 https://aws.amazon.com/jp/security/zero-trust/ また、本Blogを詳細にアップデートしたBlog記事もありますので適宜ご参照ください。 「ゼロトラストアーキテクチャ: AWS の視点」 https://aws.amazon.com/jp/blogs/news/zero-trust-architectures-an-aws-perspective/ —————————————————————– 厳しい規制への対応やリスク回避を考慮事項として擁するお客様は、レガシーアプリケーションのリファクタリングや新しいアプリケーションのデプロイに際し、ゼロトラストアーキテクチャに関心を向けることがあります。このブログでは、お客様がお客様のアプリケーションを評価し、ゼロトラストの原則とAmazon Web Services (AWS)を利用して安全でスケーラブルなアーキテクチャを構築するための手助けを行います。 ゼロトラストとは? ゼロトラストセキュリティとは、アプリケーションのコンポーネントやマイクロサービスが互いに分離しており、どのコンポーネントやマイクロサービスも他のコンポーネントやマイクロサービスを信頼していないというモデルです。これは、あらゆるソースからの入力を潜在的に悪意のあるものとみなすように設計されたセキュリティの考え方です。基礎となる内部ネットワーク・ファブリックを信頼しないことから始まり、さらにすべてのマイクロサービスにおける入力と出力の評価におよびます。加えて、個々のコンポーネント、マイクロサービス、またはアイデンティティの侵害から保護するために、多層防御アプローチを設計することも含まれます。 (訳者注:ゼロトラストは特定の製品やソリューションを指すものではなく多層的なセキュリティ手法を踏まえた概念として、現在アメリカ国立技術標準研究所(NIST)においても、SP800-207(本blog執筆時点においてはドラフト)として定義化が進められています。) 伝統的なネットワークセキュリティの設計は、セキュリティの境界に依拠します。境界内のすべてのものは信頼され、境界外のものは信頼できないものとみなされます。ゼロトラストネットワークは、ビジネスデータや機密リソースへの意図しないアクセスのリスクを低減するために、リアルタイムですべてのアクションとリソースを評価します。 ゼロトラストの原則を用いたAWS上での設計 ゼロトラストアーキテクチャをよりよく理解するために、脅威モデリングにより、従来のアーキテクチャやクラウドネイティブアーキテクチャとを比較してみましょう。脅威モデリングは、ユーザーはすべての潜在的な攻撃の可能性を評価してリスクを定義し、管理策を決定するための試みです。脅威モデルの一つであるSTRIDEでは、以下のようなカテゴリの脅威を特定しています。 ユーザーIDのなりすまし(Spoofing) データの改ざん(Tempering) ソースの否認(Repudiation) 情報漏洩(Information Disclosure) サービスの拒否(Denial of Service) 特権の昇格(Elevation of Privilege) AWSのベストプラクティスアーキテクチャ AWSでは、AWS上でWell-Architectedなアプリケーションを設計するための基礎となるツールを提供しています。AWS Well-Architected Frameworkは、AWSのベストプラクティスとワークロードを比較し、安定的かつ効率的なシステムを構築するためのガイダンスを得るための戦略を紹介しています。Well-Architected Frameworkには、セキュリティを含む5つの明確な柱が含まれています。このフレームワークを基に、ゼロトラストをAWSアーキテクチャに適用した例としてWebアプリケーションを考えてみましょう。 図1: Webサイトホスティングの例 表現されているアーキテクチャは、セキュリティを考慮したWell architectedの一例です。システムは、以下のサービスを活用して一般的な攻撃ベクターから保護されています。 Elastic Load Balancing (ELB)/Application Load Balancer (ALB)による負荷分散により、複数のアベイラビリティゾーンとAmazon Elastic Compute Cloud (Amazon EC2) Auto Scalingグループに負荷を分散し、サービスの冗長化と疎結合を実現します。 AWSのSecurity Groupを利用した仮想ファイアウォールでは、インスタンスにセキュリティを移動させ、Webサーバとアプリケーションサーバの両方にステートフルなホストレベルのファイアウォールを提供します。 […]

Read More

AWS KMS の新機能 公開鍵暗号によるデジタル署名

AWS Key Management Service で公開鍵暗号をサポートするようになりました。AWS SDK の新しい API を使ってアプリケーションデータを保護するために公開鍵、秘密鍵のキーペアを作成、管理、利用することが可能になりました。既に提供されている共通鍵暗号機能と同様に、公開鍵暗号の秘密鍵は KMS サービスの外側には出ないカスタマーマスターキー(CMK)として生成出来ます。また、データキーとしても生成可能で、データキーの秘密鍵の部分はアプリケーションに CMK で暗号化して渡すことが可能です。公開鍵 CMK の秘密鍵の部分は、AWS KMS のハードウェアセキュリティモジュールに格納されるため、AWS 従業員を含む誰も平文のキーマテリアルにアクセスすることは出来ません。AWS KMS のサポートする公開鍵のタイプは、 RSA 2048, RSA 3072, RSA 4096, ECC NIST P-256, ECC NIST P-384, ECC NIST-521, ECC SECG P256k1となります。 リリースの背景 システム間でデジタルメッセージの整合性を保証する一般的な方法はデジタル署名です。送信者は元のメッセージに暗号アルゴリズムに基づいた暗号鍵を使ってデータ構造を追加します。これにより、暗号鍵にアクセス出来る受信者は暗号学的にメッセージが改変されていないことを確認できます。受信者が送信者が使ったのと同じ暗号鍵にアクセス出来ない場合に、公開鍵暗号によるデジタル署名の仕組みが役立ちます。送信者は鍵の公開部分をすべての受信者に公開できますが、送信者は鍵の秘密部分を使って署名をコントロールすることが引き続き可能です。公開鍵暗号は信頼されたソースコードや認証認可用のトークン、文書の電子署名、エレクトリックコマースのトランザクション、セキュアメッセージングなどに利用されています。AWS KMS は 基本的なデジタル署名と言われている機能をサポートします。これは署名オブジェクトの中に ID 情報が含まれていないものです。一般的に ID 情報をデジタル署名に添付する方式はデジタル証明書です。もしお客様のアプリケーションが署名や署名確認のためにデジタル証明書を必要としている場合には、AWS Certificate Manager のプライベート CA 機能をおすすめします。 このサービスはデジタル署名アプリケーションのためにプログラム的に暗号鍵を含んだ証明書を作成してデプロイする機能を提供します。典型的なデジタル証明書を使うアプリケーションは、Webサーバー上で通信をセキュアにするために使われるTLS 処理です。 AWS KMS […]

Read More

ポスト量子暗号 TLS が AWS KMS でサポートされました

AWS Key Management Service (AWS KMS) が KMS API エンドポイントに接続する際に使われる Transport Layer Security (TLS) ネットワーク暗号化プロトコルにおけるポスト量子暗号ハイブリッド鍵交換をサポートしました。この投稿では、ポスト量子暗号 TLS とは何か、 ハイブリッド鍵交換とは何か、 なぜこれらの技術が重要か 、この機能でどのようなメリットを得られるのか、そしてフィードバックの方法について説明します。 ポスト量子暗号 TLS とは? ポスト量子暗号 TLS は、ポスト量子暗号の暗号プロトコルを追加する機能です。 AWS はオープンソースの TLS 実装である s2n を使用しています。2019年6月に AWS はポスト量子暗号 s2n をリリースしました。これは、IETF ドラフトで定義されている2種類のポスト量子暗号ハイブリッド暗号スイートを実装しています。暗号スイートは、従来型とポスト量子暗号の両方のセキュリティ保護を行う暗号鍵交換方式を指定するものです。 ポスト量子暗号 TLS の重要性 大規模な量子コンピュータは、TLS 接続の暗号鍵交換で使用されている既存の公開鍵暗号を破る可能性があります。大規模な量子コンピューターは現時点で利用可能ではありませんが、長期的なセキュリティ保護のニーズについて考え、準備しておくことが重要です。記録された TLS トラフィックは将来的に大規模な量子コンピュータで復号出来る可能性があります。TLS 接続の上で送信されているデータの長期間の機密性維持が必要なアプリケーションを開発している場合、大規模な量子コンピュータが実用化され、悪意を持った人に利用可能になる前にポスト量子暗号に移行することを検討するべきでしょう。AWS はこの機能の提供について取り組んでおり、お客様にも準備して頂きたいと考えています。 AWS は大規模な量子コンピュータの実現を待つのではなく、今この機能を提供します。 お客様は、アプリケーションに対する潜在的なパフォーマンス影響を計測することが可能です。また、お客様は、ポスト量子暗号スキームによってもたらされる追加の利点を得ることが可能です。AWS はこの機能が既に存在する KMS エンドポイントへの接続に関するセキュリティーのバーを向上させると考えていると共に、新しい暗号スイート帯域利用率やレイテンシに影響を与えると考えています。また、TLS 接続を中継する中間システムにも影響を与える可能性があります。将来に渡るサービスの改善のために AWS はこれらのお客様環境における影響についてフィードバックして頂きたいと考えています。 ポスト量子暗号 […]

Read More