Data Cloud Summit 本登録開始


Data Cloud Summit は、データ駆動型のビジネスへの変革に不可欠な、データ分析・基盤ソリューションに特化したオンライン セミナーです。


本イベントでは、BigQuery、Cloud Spanner など Google Cloud のデータ分析・データベース製品の最新情報、製品 Deep Dive のセッションを Google Cloud のエンジニアがお届けします。
そして、お客様セッションでは、NTT コミュニケーションズ株式会社、デサントジャパン株式会社、楽天グループ株式会社、Ubie 株式会社にご登壇いただき、現場目線でのデータクラウド活用事例をお話しいただきます。


最終日のハンズオン セッションの登録も開始しております。
ぜひ Day 1 ~ 3 のセッションで興味を持った製品をハンズオンでお試しください。



■ 開催概要


9 月 7  日(火)~ 9 月 9 日(木)13:00 - 18:10

Cloud Study Jam(ハンズオン)9 月 10 日(金)14:00 - 17:00

※ プログラムは変更になる可能性がございます。最新の情報は上記 Web ページにてご確認ください。


【お問い合わせ】

Data Cloud Summit 事務局



脆弱なコード

デベロッパーやピアレビューの最大限の努力にもかかわらず、脆弱なコードがソース コントロールに紛れ込み、検出されないままになることがあります。そのため、継続的にファジングや静的コード解析をし、開発ライフサイクルの早い段階でバグを発見できることが重要です。そこで、CI/CD システムの一部として、プロジェクトがファジングSAST ツールを使っているかどうかを検出するチェックを追加しました。

ビルドシステムの侵害

GitHub プロジェクトで一般的に使われる CI/CD ソリューションは、GitHub Actions です。このアクション ワークフローの危険なところは、信頼できないユーザー入力を扱ってしまう可能性があることです。つまり、攻撃者は悪意のある pull リクエストを作成することで、特権 GitHub トークンにアクセスし、それを使ってレビューを経ずに悪意のあるコードをリポジトリにプッシュすることができます。Scorecard の Token-Permissions 防止チェックは、このリスクを緩和するため、GitHub トークンをデフォルトで読み取り専用にし、GitHub ワークフローが最小権限の原則に従っていることを検証します。

悪質な依存関係

どんなソフトウェアでも、依存関係が弱いほど安全です。これは当たり前に思えるかもしれませんが、依存関係を知るための第一歩は、依存関係を宣言し、その依存関係にも依存性を宣言させることです。この起源情報があれば、ソフトウェアのリスクを評価し、そのリスクを低減できます。残念ながら、よく目にするアンチパターンがいくつかあり、それによってこの起源の原則が崩れています。1 つ目のアンチパターンは、バイナリのチェックインです。プロジェクト内のバイナリ コンテンツを簡単に検証またはチェックする方法はないからです。Scorecards は、これを評価する Binary-Artifacts チェックを提供します。

もう 1 つのアンチパターンは、スクリプトで curl | bash を使って動的に依存関係をプルすることです。暗号化ハッシュを使うと、依存関係を既知の値に固定することができます。その値が変更されると、ビルドシステムはそれを検知してビルドを拒否します。依存関係がある場合、依存関係の固定は便利です。これはコンパイル時だけでなく、Dockerfiles や CI/CD ワークフローなどにも当てはまります。Scorecards は、Frozen-Deps チェックによってこのアンチパターンをチェックします。このチェックは、最近の CodeCov 攻撃のような悪意のある依存関係攻撃を軽減する際に役立ちます。

ハッシュを固定したとしても、依存関係で脆弱性の修正が発生すると、ハッシュを更新する必要があります。dependabotrenovatebot といったツールは、ハッシュの確認と更新をする機会を与えてくれます。Scorecards の Automated-Dependency-Update チェックは、デベロッパーがそのようなツールを使って依存関係を更新していることを検証します。

重要なのは、依存関係として取り込む前に、そのプロジェクトの脆弱性を把握することです。Scorecards の新しい Vulnerabilities チェックでは、脆弱性アラート システムをサブスクライブしなくても、この情報が提供されます。

影響力の拡大

現時点で、Scorecards プロジェクトは、50,000 を超えるオープンソース プロジェクトのセキュリティ基準を評価する規模になっています。このプロジェクトを拡大するため、アーキテクチャの大幅な再設計をし、水平スケーラビリティと高いスループットを実現する PubSub モデルを採用しました。この全自動ツールでは、定期的に重要なオープンソース プロジェクトを評価し、毎週更新されるパブリック BigQuery データセットを通して Scorecards チェック情報を公開しています。

このデータは、bq コマンドライン ツールで取得できます。次の例は、Kubernetes プロジェクトのデータをエクスポートする方法を示しています。リポジトリの URL を置き換えると、別のプロジェクトのデータをエクスポートできます。

$ bq query --nouse_legacy_sql 'SELECT Repo, Date, Checks FROM openssf.scorecardcron.scorecard_latest WHERE Repo="github.com/kubernetes/kubernetes"'


分析対象となるすべてのプロジェクトの最新データをエクスポートしたい方は、こちらの手順をご覧ください。

インターネットはどの程度基準を満たしているか

対象プロジェクトの Scorecards データは、最近発表された Google Open Source Insights プロジェクトに含まれており、OpenSSF Security Metrics プロジェクトでも公開されています。これらのサイトのデータからは、Kubernetes などの広く使われているパッケージであっても、埋める必要がある重要なセキュリティ ギャップがまだ存在することがわかります。

また、Google のデータ分析・視覚化ツールの 1 つである Google データポータルで Scorecards データを分析してみました。次の図は、実行されたチェックと、50,000 個のリポジトリに対する合格 / 失格の結果の内訳です。

 


ご覧のように、これらの主要プロジェクトのセキュリティを向上するには、たくさんの作業が必要です。多くのプロジェクトには、継続的なファジングが行われていない、脆弱性報告のセキュリティ ポリシーが定義されていない、依存関係が固定されていないなどの問題があり、これらは一般的な問題のごく一部にすぎません。業界が一丸となってこういった幅広いセキュリティ リスクへの認識を高め、すべての人に利益をもたらすような改善をする必要があります。

実際の Scorecards

いくつかの大規模プロジェクトが Scorecards を採用し、その経験について継続的にフィードバックを行っています。以下に、実際に Scorecards を使った例をご紹介します。

Envoy
以前、Envoy のメンテナンス担当者がプロジェクトに Scorecards を採用し、それを新しい依存関係を導入する際のポリシーに組み込んだ過程についてお話ししました。それ以降、新しい依存関係を Envoy に導入する pull リクエストは、依存関係のメンテナンス担当者からの承認が必要になりました。担当者は Scorecards を使い、一連の基準に照らして依存関係を評価します

それに加えて、Envoy は独自の Scorecards 評価に基づいて専用のセキュリティ健全性指標を改善する作業にも着手し、現在は C++ の依存関係を固定し、Python の依存関係には pip ハッシュを要求しています。さらに、継続的インテグレーション フローで Github のアクションも固定しています。

以前、Envoy は依存関係についての Scorecards データを CSV として出力するツールを作成し、その結果から表を作成していました。


現在はプロジェクトのデータが増えましたが、Envoy では依存関係についての最新の Scorecard 情報を自動生成し、次のようなドキュメントで公開できるようになっています。


Scorecards
Scorecards 自体のスコアも改善しました。たとえば、CodeCov スタイルの攻撃を防ぐため、依存関係をハッシュで固定するようにしました(Docker 依存関係ワークフロー依存関係など)。また、この推奨テンプレートに基づいてセキュリティ ポリシーも含めました。

参加する

Scorecards コミュニティが拡大を続けるのを楽しみにしています。現在、このプロジェクトは 23 名のデベロッパーの貢献を受けています。Scorecards の新機能やスケーリングの作業を行ってくださった AzeemNaveenLaurentAsraChris に感謝します。

この楽しい作業に参加したい方は、初めての方向けの Issue をご確認ください。

特定のプロジェクトで Scorecards を実行する際にサポートを受けたい方は、GitHub で pull リクエストを送り、こちらにプロジェクトを追加してください。

最後になりますが、私たちにはさまざまなアイデアがあり、追加したいチェックもさらにたくさんありますが、ぜひ皆さんの意見を聞きたいと思っています。Scorecards の次のバージョンで期待するチェックをお知らせください。


次のステップ

次に示すのは、私たちが特に期待している大きな拡張です。
このプロジェクトの成功に貢献してくださった Scorecards コミュニティと OpenSSF の皆さんに改めてお礼を申し上げます。メンテナンスしているプロジェクトで Scorecards を採用しスコアを改善したという方は、ぜひお知らせください。次にお会いするときまで、ぜひスコアの改善を続けてください!

Reviewed by Eiji Kitamura - Developer Relations Team

2021 年 7 月 8 日より、すべてのスタンドアロン Gmail キャンペーンが読み取り専用になりました。この日以降、新しいキャンペーンの作成、または既存キャンペーンでの広告グループの作成はできなくなりました。この変更は、Google Ads と AdWords API だけでなく、Google 広告アカウントの管理に利用する他のすべてのインターフェースにも適用されます。

具体的に影響を受けるキャンペーンのタイプは、AdvertisingChannelSubTypeDISPLAY_GMAIL_AD のものです。この場合、以下の操作は失敗し、エラーは OPERATION_NOT_PERMITTED_FOR_CONTEXT、トリガーは DISPLAY_GMAIL_AD となります。
  • 新しい Gmail キャンペーンの作成
  • 新しい Gmail 広告グループの作成
  • Gmail 広告の作成または更新
既存キャンペーンのデータは引き続き利用できます。

API ユーザーが引き続き Gmail をターゲットにするための一般的な回避策はありません。今後も Gmail をターゲットにしたい場合は、キャンペーンに Gmail 広告が含まれている、Google 広告ウェブ インターフェースファインド キャンペーンを利用できます。

ご質問やサポートが必要なことがありましたら、フォーラムからご連絡ください。




- Google Ads API チーム、Mike Cloonan
Reviewed by Thanet Knack Praneenararat - Ads Developer Relations Team



ご質問やさらにサポートが必要なことがありましたら、フォーラムまたは [email protected] にご連絡ください。



Reviewed by Thanet Knack Praneenararat - Ads Developer Relations Team

Google I/O 2021 のバーチャル ステージがすべて終了したので、App Actions、Conversational Actions、Smart Home Actions についてのハイライトや新しいプロダクトのお知らせをお届けします。I/O の期間中には、たくさんのすばらしいライブイベントやミートアップも開催されました。その要約も併せて紹介します。

App Actions

App Actions を使うと、Android アプリを拡張して Google アシスタントを導入できます。Android デベロッパーのために、App Actions が Android フレームワークの一部になったことをお知らせできたのはうれしいことです。ベータ版として shortcuts.xml 構成リソースが導入され、最新の Google Assistant Plug App Actions はますます Android プラットフォームに近づいています。

Capabilities

Capabilities は新しい Android フレームワーク API で、ユーザーが皆さんのアプリを起動し、特定のタスクを直接行う際に使うアクションの種類を宣言できます。アシスタントは、実際に利用できる Capabilities API の最初の具体的実装を提供します。Capabilities では、shortcuts.xml リソースを作成して機能を定義し、起動方法と起動時に何をするかという 2 つのことを指定します。Capability を追加するには、組み込みインテント(BII)を使います。組み込みインテントは、ユーザーの入力を個々のフィールドにマッピングするために必要な自然言語理解をすべて提供するインテントで、あらかじめシステムに組み込まれています。BII とユーザーの会話が一致すると、Capability によって Android インテントが起動し、解釈済みの BII フィールドがアプリに渡されます。そのため、応答として何を表示すればよいかがわかります。

このフレームワークの統合は、現在ベータリリース段階にあり、将来的には actions.xml を使う App Actions のオリジナル実装の後継となる予定です。アプリに新しい shortcuts.xml と古い actions.xml の両方が含まれる場合、後者は無視されます。

検出のための音声ショートカット

Google アシスタントは、関連性の高いショートカットをユーザーに提案します。また、ユーザーが「OK Google, ショートカット」と言うと、ショートカットを簡単に探して追加できるようになっています。

Google アシスタントの音声ショートカットのイメージ

現在ベータ版の Google Shortcuts Integration ライブラリを使うと、動的に任意の数のショートカットを Google にプッシュし、ユーザーに音声ショートカットとして表示できるようになります。アシスタントは、関連性の高いショートカットをユーザーに提案し、皆さんの Android アプリをさらに便利に利用できるようにします。

In-App Promo SDK の gif

In-App Promo SDK

アシスタントができるのは、ショートカットの提案だけではありません。現在ベータ版の In-App Promo SDK を使うと、ユーザーがアシスタントの音声コマンドで繰り返し利用するアクションのショートカットを、アプリであらかじめ提案できます。この SDK では、提案したいショートカットをそのユーザーがすでに作成しているかをチェックし、ショートカットの作成を促すことができます。

Android Studio の Google アシスタント プラグイン

Capabilities のテストをサポートするため、Android Studio の Google Assistant プラグインがリリースされました。これには、更新版の App Action Test Tool が含まれています。App Action のプレビューを作成できるので、Play ストアに公開する前に統合をテストできます。

新しい App Actions リソース

以下の新規コンテンツや更新版コンテンツをご覧ください。

Conversational Actions

Google アシスタントの新機能基調講演では、Google アシスタント デベロッパー プラットフォームのプロダクト ディレクターを務める Rebecca Nathenson が、Conversational Actions について今後予定しているいくつかのアップデートや変更点に触れました。

インタラクティブ描画キャンバスのアップデート

これから数週間で、インタラクティブ描画キャンバスに新機能を導入します。描画キャンバスのデベロッパーは、クライアント側でインテントのフルフィルメントを管理できるようになるので、Webhook をはさむ必要がなくなる場合があります。トランザクションやアカウントのリンクなど、サーバー側のフルフィルメントが必要なユースケースでは、必要に応じてサーバー側フルフィルメントをオプトインできるようになります。

さらに、新しい関数 outputTts() を導入し、クライアント側でテキスト読み上げを起動できるようにします。これにより、エンドユーザーのレイテンシが改善されます。

さらに、ホームと個人ユーザーの両方のストレージの取得や設定をする API がアップデートされ、ユーザー情報をクライアント側に格納できるようになります。これまで、ユーザー情報には Webhook でしかアクセスできませんでしたが、ウェブアプリ内に永続化できるようになります。


以上のインタラクティブ描画キャンバスの新機能は、まもなく Conversational Actions のデベロッパー プレビューの一部として公開されます。新機能の詳細については、プレビューページをご覧ください。

スマート ディスプレイのトランザクション UX のアップデート

同じく近日中に Conversational Actions に導入されるのが、トランザクションを完了する際のワークフローのアップデートです。これにより、ユーザーは選択した支払い方法の CVC コードを確認することで、スマート スクリーンからトランザクションを完了できるようになります。この変更について詳細を確認したい方は、スマート デバイスでの新しいトランザクション機能のデモ動画をご覧ください。

Conversational Action をリリースする際のヒント

マーケティング チームの編成戦略や、Conversational Action をリリースする際の市場開拓計画については、テクニカル セッション Conversational Actions のリリースを成功させるをご覧ください。

AMA : Google アシスタントでのゲーム

Google アシスタントと Conversational Actions を使ったゲームの構築に興味がある方には、AMA の録画をご覧ください。Google 社員がゲームの設計、構築、リリースに関する I/O 参加者からの質問に回答しています。


Smart Home Actions

スマートホームの新機能基調講演では、Smart Home Actions のいくつかのアップデートについて説明しました。質の高いスマートホーム統合に今後も注力するために改訂版のポリシーをリリースするとともに、ユーザーのためにエンゲージメントと信頼性が高い Actions を構築できるように、新機能を追加しました。

テストスイートとアナリティクス

更新版のスマートホーム向けテストスイートでは、TTS を使わない自動テストがサポートされます。さらに、アナリティクス ダッシュボードが拡張され、さらに詳しいログや徹底的に掘り下げたエラーレポートが表示されるようになっています。これにより、Action の潜在的な問題をすばやく特定できるようになります。この拡張の詳細については、スマートホームのデバッグ ワークショップをお試しください。また、2 つの新しいデバッグ Codelabs があり、ツールを使って Action の質を改善する操作を習得できます。

通知

事前通知のサポートを拡大し、RunCycle と SensorState のデバイス特性を含めました。ユーザーは、複数のデバイス イベントの事前通知を受信できるようになります。また、フォローアップ レスポンスのリリースについてもお知らせしました。フォローアップ レスポンスを使うと、スマート デバイスがデバイスの変更の成功や失敗について非同期でユーザーに通知できます。

WebRTC

CameraStream 特性に WebRTC サポートを追加しました。スマートカメラのユーザーは、低遅延とデバイス間の半二重トークによるメリットを活用できるようになります。基調講演で触れたように、スマートカメラでは、現在サポートされているその他のプロトコルのアップデートもする予定です。

Bluetooth Seamless Setup

オンボーディング操作を改善するため、Bluetooth Seamless Setup によるデバイスのオンボーディングで、BLE(Bluetooth Low Energy)を有効化できるようになります。Google Home と Nest デバイスは、ローカルハブとして動作し、ローカル フルフィルメントが構成された任意の Action で、近くのデバイスのプロビジョニングと登録ができるようになります。

Matter

Project CHIP は正式に Matter という名称になりました。この IP ベースの接続プロトコルが正式にリリースされたら、このプロトコルを使うデバイスをサポートする予定です。詳しくは、Project CHIP 入門のテクニカル セッションをご覧ください。

エコシステムとコミュニティ

Voice AI を構築する女性たちと音声革命におけるその役割

Voice AI は私たちのテクノロジーとの関わりを根本的に変えつつあり、その未来はそれを構築する人たちにかかっています。このセッションでは、Google のプロダクト管理シニア ディレクターである Lilian Rincon のインタビューなど、Voice AI の分野で活躍する才能ある女性たちを紹介します。また、簡単ではないが不可欠な目標である、Voice AI におけるジェンダー平等の達成に向けた戦略も紹介します。

AMA : アシスタント投資プログラムによるスタートアップへの資金提供

この「Ask Me Anything」セッションを進行するのは、Google for Startups Accelerator : Voice AI を運営するオールスター チームです。このチームが、音声技術を使ったビジネスの構築に関心のある世界中のスタートアップ企業や投資家からの質問に答えました。イベントの録画は、こちらからご覧ください。AMA セッションの翌日には、Voice AI アクセラレータ 2021 年のデモデーが開催されました。プレゼンテーションの録画は、こちらからご覧いただけます。

次のタイトルの AMA のイメージ: アシスタント投資プログラムによるスタートアップへの資金提供

Women in Voice ミートアップ

私たちは、Voice AI のすばらしい女性たちと交流し、エコシステムの包括性を高め、音声業界に関わる女性たちの成功をサポートする方法について話し合いました。このミートアップを主催したのは、Leslie Garcia-AmayaJessica Dene Earley-ChaKarina AlarconMike BifulcoCathy PearlToni KlopfensteinShikha KapoorWalquiria Saad です。

スマートホーム デベロッパー ミートアップ

今年のバーチャル I/O ならではの特徴の 1 つは、世界中の学生、ホビイスト、デベロッパーと交流し、スマートホームの現状や今後の機能などについて話し合えたことでした。アジア太平洋、南北アメリカ、ヨーロッパ中東アフリカのリージョンで 3 つのミートアップを開催し、コミュニティからのすばらしいフィードバックを集めました。

アシスタント Google Developers Experts ミートアップ

毎年、Assistant Google Developer Expert ミートアップを開催し、交流と知識の共有をしています。今年は、Google アシスタントの構築に興味がある方全員をお招きし、人脈を作ったり交流したりすることができました。最後には、一部の参加者がアシスタント サンドボックスに集まって、バーチャル写真を撮影しました。

GoogleIO アシスタント ミートアップのイメージ

お読みいただき、ありがとうございました!意見や質問を共有したい方は、Reddit の r/GoogleAssistantDev からお願いします。

Twitter で @ActionsOnGoogle をフォローして最新情報を受け取り、#AoGDevs を付けてツイートして、皆さんが作っているものについて教えてください。皆さんのアプリのリリースを楽しみにしています。



Google Ads API チーム、David Wihl

Reviewed by Thanet Knack Praneenararat - Ads Developer Relations Team

Core Web Vitals という取り組みの目的は、ウェブで優れたユーザー エクスペリエンスを実現するうえで欠かせない品質シグナルに関するガイドを一元的に提供することです。Core Web Vitals は、Google が新しいページ エクスペリエンス ランキング シグナルを計測する際の土台です。これにより、Google 検索で使われる一連のランキング要素に、ユーザー エクスペリエンスが加わることになります。

優れたページ エクスペリエンスの基準を満たすサイトを構築して管理するには、さまざまな要素を考慮して対応することが必要です。サイトオーナーは、測定ツールや自動化ツールの機能を活用してガイドやサポートを得ることができます。サイトの Core Web Vitals を計測するさまざまなツールがあります。また、AMP などの他のツールでも、すぐに使える幅広いパフォーマンス最適化やベスト プラクティスが用意されているので、パフォーマンスのよいウェブサイトを簡単に構築するうえで役立ちます。WordPress プラットフォームを使ってコンテンツを作成、公開している方なら、WordPress の公式 AMP プラグインを使うと、サイトでシームレスに AMP を利用できます。 

この投稿では、WordPress の公式 AMP プラグインを使って構築したウェブサイトのパフォーマンスに注目し、サイトの Core Web Vitals を最適化する際にさらに考慮すべき側面について説明します。また、ガイダンスを得るための AMP プラグイン サポート チャンネルも紹介します。

AMP プラグインの活用

AMP プラグインのランディング ページである amp-wp.org は、AMP プラグイン自体を使って構築されました。つまりこのサイトは、プラグインですぐに利用できる最適化とベスト プラクティスのメリットをすべて享受しています。たとえば、AMP はコンテンツのずれが起きない設計になっているので、通常は CLS の最適化について心配する必要はありません。AMP ページ エクスペリエンス ガイドを使って、このサイトのページ エクスペリエンス関連の動作を確認してみましょう。

ステップ 1: 分析ツールの実行

まず amp.dev/page-experience に移動し、サイトの URL を入力して [Analyze] をクリックします。

ツールが実行され、サイトでさまざまなパフォーマンス テストが行われる間、しばらく待ちます。このツールは、対象ページのページ エクスペリエンスに関連するさまざまな特徴を確認します。

ステップ 2: 結果の解析

すべてのテストが終了すると、AMP ページ エクスペリエンス ガイドにその旨が表示され、サイトの状態について簡潔な概要を確認できます。ご覧のように、amp-wp.org のページ エクスペリエンスは優れていることがわかります。

結果ページを下にスクロールすると、それぞれの Core Web Vital 指標の詳細を見ることができます。

この結果は、パブリッシャーとしてうれしい内容です。AMP が提供するすべてのパフォーマンス最適化とベスト プラクティスにリソースを費やす必要がなく、サイトのパフォーマンスが優れているからです。

CWV をさらに最適化する

自動化ツールを使って Core Web Vitals に影響するたくさんの要素に対処するときは、期待される内容を理解することが重要です。私たちの調査によれば、デベロッパーが AMP ページを提供する方法には、まだ最適化の余地があります。つまり、AMP などのツールを使うことで、目的の達成に向けて大きく前進することができますが、追加の作業をしてさらにサイトを最適化する必要があるかもしれません。

さらに最適化が必要になるのは、以下のような場合です。

  • ページのヒーロー要素の指定が適切でない場合、一部の最適化が行われません。 
  • 場合によっては、広告によって効率が低下し、読み込み時間が増加して、ページの CWV に影響することがあります。この点を意識し、パフォーマンスが優れた広告ソリューションを使う必要があります。
  • 最初のビューポートに表示される場所に重い埋め込み要素がある場合、ページの初期読み込みが遅くなります。
  • サイトで必要となる主要なイメージの最適化が行われていない可能性があります。

amp-wp.org の場合、スコアは高いものの、AMP ページ エクスペリエンス ガイドにはさらにサイトを改善できる 2 つの推奨事項が表示されています。たとえば、読み込み速度(LCP)を改善するために、ページのヒーロー イメージを適切にマークすることが推奨されています。

これは、ページのヒーロー要素(イメージなど)に data-hero 属性を付けることで、簡単に実現できます。これを行うと、AMP プラグインは自動的にヒーロー イメージをサーバーでレンダリングするようになるので、Largest Contentful Paint(LCP)指標が改善され、ページの CWV スコアが上昇します。

サポートを受ける場所

WordPress の公式 AMP プラグインなどのツールを活用しても Core Web Vitals のパフォーマンスが向上しない場合は、WordPress.org サポート フォーラムを通してプラグインをサポートしているチームに相談したり、質問したり、結果を共有したりできます。皆さんを最大限にサポートいたします。

さらに詳しく知りたい方は、AMPWordPress の公式 AMP プラグインのサイトをご覧ください。また、こちらの動画シリーズでは、WordPress の AMP プラグインの全貌について、解説や知見をご覧いただくことができます。パフォーマンスやページ エクスペリエンス全般についてさらに詳しく知りたい方は、Google 検索セントラルweb.dev のドキュメントをご覧ください。技術的に有用な情報が多数掲載されています。

投稿者 : Google、AMP と WordPress デベロッパー アドボケート、Alberto Medina


Reviewed by Chiko Shimizu - Developer Relations team

サポートを受ける場所
Call Ads について疑問に思うことがありましたら、フォーラムまたは [email protected] にご連絡ください。



この新しい脆弱性スキーマでは、オープンソースで脆弱性を管理するうえで、いくつかの重要な問題に対処することを目指しています。以下を満たす既存の標準形式は存在しないことがわかっています。

  • 実際のオープンソース パッケージ エコシステムのネーミングやバージョニングのスキームに厳密に一致するバージョン指定を強制する。たとえば、CPE などの既存のメカニズムでは、CVE などの脆弱性と、パッケージ マネージャーのパッケージ名や一連のバージョンを自動的に照合することは困難。
  • どんなオープンソース エコシステムの脆弱性も記述でき、エコシステムの独自ロジックがなくても処理できる。
  • 自動システムにも人間にも使いやすい。

このスキーマが、すべての脆弱性データベースをエクスポートできる形式の定義となることを期待しています。一元的に利用できる形式があるということは、脆弱性データベース、オープンソース ユーザー、セキュリティ研究者が簡単にツールを共有し、オープンソース全体の脆弱性情報を利用できるということです。つまり、誰でもオープンソースの脆弱性を完全に把握でき、簡単に自動化も行えるので、検知や修正にかかる時間も短くなります。

現状


脆弱性スキーマの仕様は何度かの反復を経ており、最終版に近づくにあたって、さらなるフィードバックを求めています。現在、たくさんのパブリックな脆弱性データベースがこの形式でエクスポートできるようになっており、さらに多くのデータベースで作業が進行中です。
OSV サービスもこれらすべての脆弱性データベースの集約をしており、ウェブ UI から参照できます。同じ既存 API を使い、コマンド 1 つで照会することもできます。

  curl -X POST -d \

      '{"commit": "a46c08c533cfdf10260e74e2c03fa84a13b6c456"}' \

      "https://api.osv.dev/v1/query"

    

  curl -X POST -d \

      '{"version": "2.4.1", "package": {"name": "jinja2", "ecosystem": "PyPI"}}' \

      "https://api.osv.dev/v1/query"



脆弱性データベースのメンテナンスの自動化


質の高い脆弱性データを作るのも困難な作業です。OSV ではすでに自動化が行われていますが、それに加えて、脆弱性データベースをメンテナンスするための自動化ツールを構築し、そのツールをコミュニティの Python アドバイザリ データベース作成に役立てました。この自動処理では、既存のフィードを受け取り、パッケージと正確に照合し、検証済みの正確なバージョン範囲を含むエントリを生成します。人間の介入は最低限にとどめられています。このツールは、既存の脆弱性データベースが存在しないエコシステムや、継続的なデータベースのメンテナンスがほとんどサポートされていないエコシステムにも展開する予定です。


参加する


この形式についてフィードバックを提供し、この形式を採用してくれた、すべてのオープンソース デベロッパーに感謝します。今後もオープンソース コミュニティと連携し、さらに開発を進めるとともに、すべてのエコシステムに広く採用を促してゆきたいと思います。この形式の採用に興味がある方は、公開仕様へのフィードバックをお願いいたします。

Reviewed by Eiji Kitamura - Developer Relations Team