GraphQL APIを構築できる「Hasura」をご紹介! NRI OSSソリューションマガジン 2024.8.21発行 Vol.212
1.GraphQL APIを構築できる「Hasura」をご紹介!
最近話題になっている、OSSで利用が可能なGraphQLサーバエンジンHasura GraphQL Engine(以下、Hasuraと表記)を紹介します。
Hasuraは、Backend for Frontend (BFF)なGraphQLサーバを構築するのに適しています。
REST APIでは、サーバのエンドポイントが複雑化してしまうという問題がありましたが、GraphQLは、エンドポイントを1つに集約できるというメリットを持ったAPIです。
しかしその反面、リクエストの形式がさまざまになってしまうためリクエストに応じた処理の実装負荷が高まってしまうという問題があります。
Hasuraはこの問題に対して、データベースのテーブルを定義するだけでサーバが構築でき、バグを最小限にしつつ、開発工数を減らせるようになります。
HasuraはOSS版でサーバを構築できますが、オンプレミスでのデプロイの拡張や、SSOとAPMを統合する場合はEnterprise版の利用が必要です。
Enterprise版の詳細は以下をご参照ください。
https://hasura.io/enterprise/
本番環境を構築するには、Docker上にデプロイだけでなくSaaS版のHasura Cloudが提供されています。
Hasura Cloudでは、DB操作をHasura上で完結できます。
https://hasura.io/cloud/
HasuraはHasura Remote Schema・Hasura Actionというカスタムロジックを組み込む機能が提供されています。
外部のGraphQL、REST APIの処理結果をGraphQLのスキーマとして埋め込めます。
Hasuraはさまざまなデータベースに対応していく方針であり、Amazon Athena、Redshiftにも対応していく見込みで今後の開発に期待できますね。
今回はHasuraの概要について簡単に紹介しました。
HasuraのOSS版で構築する方法は公式ドキュメントで公開されており、簡単に利用が可能です。
https://hasura.io/docs/latest/getting-started/overview/
GraphQLサーバに触れてみたい方はぜひお試しください。
OpenStandiaではOSSの技術サポートを提供しています。
現在のサポート対象OSSは下記OpenStandiaサイトから確認できます。
◆OpenStandiaサポート対象OSS一覧
https://openstandia.jp/services/#supportlist
2.OSS紹介ページ 今月のアップデート(新規:1件、更新:9件)
(新規)
Argo Events (https://openstandia.jp/oss_info/argoevents/)
(更新)
CoreDNS (https://openstandia.jp/oss_info/coredns/)
DRBD (https://openstandia.jp/oss_info/drbd/)
etcd (https://openstandia.jp/oss_info/etcd/)
gRPC (https://openstandia.jp/oss_info/grpc/)
Mlflow (https://openstandia.jp/oss_info/mlflow/)
OAuth2 Proxy (https://openstandia.jp/oss_info/oauth2-proxy/)
Quarkus (https://openstandia.jp/oss_info/quarkus/)
Spring Framework (https://openstandia.jp/oss_info/spring/)
Vite (https://openstandia.jp/oss_info/vite/)
3.OSS紹介ページ 今月のアクセスランキングTOP10
オープンソース情報ページ「OpenStandia OSS紹介」のアクセスTOP10をご紹介
↑ 1位 (4位) Apache Tomcat (https://openstandia.jp/oss_info/tomcat/)
→ 2位 (2位) Apache HTTP Server (https://openstandia.jp/oss_info/apache/)
→ 3位 (3位) PHP (https://openstandia.jp/oss_info/php/)
↑ 4位 (5位) PostgreSQL (https://openstandia.jp/oss_info/postgresql/)
↑ 5位 (6位) MySQL (https://openstandia.jp/oss_info/mysql/)
↓ 6位 (1位) Keycloak (https://openstandia.jp/oss_info/keycloak/)
→ 7位 (7位) Nginx (https://openstandia.jp/oss_info/nginx/)
→ 8位 (8位) Spring Framework (https://openstandia.jp/oss_info/spring/)
→ 9位 (9位) Red Hat Enterprise Linux (https://openstandia.jp/oss_info/redhatenterpriselinux/)
→ 10位 (10位) Rocky Linux (https://openstandia.jp/oss_info/rocky-linux/)
※( )内は前月の順位
◆OSS総合情報ページ「OpenStandia OSS紹介」はこちら
https://openstandia.jp/oss_info/
4.今月注目のバグ&セキュリティ情報
【firefox】Web互換性Shimを使用したCSPの厳密な動的バイパス
Firefoxは、強化されたトラッキング保護によってブロックされた一部のトラッキングスクリプトの代わりに、Web互換性シムを追加します。
コンテンツセキュリティポリシーによって「厳密な動的」モードで保護されているサイトでは、HTML要素を挿入できる攻撃者が、一部のシムに対してDOM Clobbering攻撃を使用してXSSを実行し、CSPの厳密な動的保護を回避できる可能性があります。
この脆弱性は、Firefox 129より前、Firefox ESR 115.14より前、およびFirefox ESR 128.1より前に影響します。
本脆弱性の影響を受ける環境は下記となります。
・Red Hat Enterprise Linux 6
firefox(*)
・Red Hat Enterprise Linux 7
firefox(*)
・Red Hat Enterprise Linux 8
firefox(*)
・Red Hat Enterprise Linux 9
firefox(*)
*詳細バージョンについては、Red Hat 社の今後のアナウンスをご確認ください。
関連情報
・National Vulnerability Database
https://nvd.nist.gov/vuln/detail/CVE-2024-7524
・Common Vulnerabilities and Exposures (CVE)
https://www.cve.org/CVERecord?id=CVE-2024-7524
◆OpenStandiaオープンソース年間サポートサービスのご紹介
https://openstandia.jp/services/