[{"data":1,"prerenderedAt":959},["ShallowReactive",2],{"/ja-jp/blog/gitlab-business-logic-security-analyzer":3,"navigation-ja-jp":224,"banner-ja-jp":657,"footer-ja-jp":665,"blog-post-authors-ja-jp-Chris Widstrom":903,"blog-related-posts-ja-jp-gitlab-business-logic-security-analyzer":918,"blog-share-wrapper-ja-jp":940,"next-steps-ja-jp":950},{"id":4,"title":5,"authors":6,"body":8,"category":203,"date":204,"description":205,"extension":206,"externalUrl":207,"faq":207,"featured":208,"heroImage":209,"meta":210,"navigation":208,"path":211,"seo":212,"slug":215,"stem":216,"tags":217,"template":221,"updatedDate":222,"__hash__":223},"blogPosts/ja-jp/blog/gitlab-business-logic-security-analyzer.md","SASTスキャナーが見逃すビジネスロジックの脆弱性を検出する",[7],"Chris Widstrom",{"type":9,"value":10,"toc":194},"minimark",[11,28,37,42,45,58,61,70,74,77,98,106,109,117,120,123,132,152,159,162,165,174,177,180],[12,13,14,15,21,22,27],"p",{},"オブジェクトレベル認可の不備は、",[16,17,20],"a",{"href":18,"rel":19},"https://owasp.org/API-Security/editions/2023/en/0x11-t10/",[],"OWASP API Security Top 10","の第1位に位置づけられています。また",[16,23,26],{"href":24,"rel":25},"https://owasp.org/www-community/Source_Code_Analysis_Tools",[],"OWASPも指摘している","とおり、従来の静的アプリケーションセキュリティテスト（SAST）ツールは、アクセス制御の欠陥の検出を苦手としてきました。認可チェックの欠落とは、本来あるべきコードが存在しないという状態です。パターンを照合するスキャナーには、照合すべき対象そのものがありません。このギャップを見つけられるのは、そのエンドポイントが本来何を適用すべきかをあらかじめ把握している場合だけです。",[12,29,30,31,36],{},"GitLabは、パターンベースのスキャナーが見逃すビジネスロジックの脆弱性を捉えるために、GitLab Duo Agent Platform上で",[16,32,35],{"href":33,"rel":34},"https://docs.gitlab.com/ja-jp/user/application_security/business_logic_scanning/",[],"Business Logic Security Analyzer","を開発しています。現在、GitLab.comをご利用のGitLab Ultimateのお客様を対象に、早期アクセスとして提供しています。",[38,39,41],"h2",{"id":40},"正しいコード誤った意図","正しいコード、誤った意図",[12,43,44],{},"アプリケーションセキュリティチームであれば、次の3つはいずれも見覚えのあるものでしょう。",[46,47,48,52,55],"ol",{},[49,50,51],"li",{},"リクエストから注文IDを受け取り、その注文を誰が所有しているかを確認しないまま注文内容を返すエンドポイント。",[49,53,54],{},"ユーザープロファイルのroleフィールドが、クライアントから送られてきたJSONをそのまま受け入れてしまう。",[49,56,57],{},"ユーザーIDが連番の整数になっている。",[12,59,60],{},"いずれもコードとしては正しく動作し、危険なシンクに信頼できないデータが到達するわけでもなく、既知の不正なシグネチャが現れるわけでもありません。そのため、従来のSASTエンジンが備えるテイント解析やパターンルールの大半をすり抜けます。ところが、これらが連鎖すると、攻撃者は全顧客の注文情報と管理者ロールを手にできてしまいます。",[62,63],"iframe",{"src":64,"frameBorder":65,"allow":66,"referrerPolicy":67,"style":68,"title":69},"https://player.vimeo.com/video/1233523012?title=0&byline=0&portrait=0&badge=0&autopause=0&player_id=0&app_id=58479","0","autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share","strict-origin-when-cross-origin","position:absolute;top:0;left:0;width:100%;height:100%;","Transcend 3 Omer Azaria and Rajat Pandit_100626",[71,72],"script",{"src":73},"https://player.vimeo.com/api/player.js",[38,75,76],{"id":76},"リポジトリ全体をスキャンする理由",[12,78,79,80,85,86,91,92,97],{},"エージェントがコードを書くようになり、GitLabのお客様全体でコードベースの規模は",[16,81,84],{"href":82,"rel":83},"https://about.gitlab.com/ja-jp/gitlab-security-standard/",[],"最大500%","まで拡大しました。4月までに公開されたCVEは、",[16,87,90],{"href":88,"rel":89},"https://www.first.org/newsroom/releases/20260615",[],"Forum of Incident Response and Security Teams","が2月に示した予測を46%上回るペースで増えています。コードを生成するAIモデルは、既存の弱点を発見し、つなぎ合わせるコストも同時に引き下げました。そのしわ寄せが集中するのが認可のロジックです。デベロッパーもエージェントも、チェック自体は1〜2行で書きます。しかし、その1〜2行が抜け落ちたとき、欠落に気づかれないまま残ってしまうケースが少なくありません。GitLabでプロダクトマネジメント担当バイスプレジデントを務めるOmer Azariaは、",[16,93,96],{"href":94,"rel":95},"https://about.gitlab.com/ja-jp/blog/transcend-india-announcements/",[],"GitLab Transcend","でこう述べています。「私たちは板挟みの状態にあります。コードは増え、攻撃は速くなり、それでもチームの規模は変わりません」",[12,99,100,105],{},[16,101,104],{"href":102,"rel":103},"https://about.gitlab.com/ja-jp/blog/gitlab-duo-security-review-flow/",[],"GitLab Duoセキュリティレビュー","は、マージリクエストの中から認可の不備を探します。ただし、ビジネスロジックの欠陥の多くは、差分だけを見ても姿を現しません。あるエンドポイントが所有者を確認すべきかどうかは、データモデル、アプリケーションが定義するロール、そして同じレコードを扱う他のエンドポイントの挙動によって決まるからです。1つのハンドラーを判断するには、その周囲にあるアプリケーションを読む必要があります。",[12,107,108],{},"Business Logic Security Analyzerがリポジトリ全体をスキャンするのは、このためです。そして、それを実行する基盤としてGitLabが適しているのも、同じ理由によります。ソースコード、それをビルドするパイプライン、そこに紐づくセキュリティの検出結果、そしてそれらを制御するポリシー。これらすべてが1つのシステムの中にあります。ここでスキャンを実行するエージェントは、アプリケーションの全体像を把握したうえで、セキュリティチームが普段作業している場所に検出結果を書き込みます。",[12,110,111,112,116],{},"GitLabはTranscendで",[16,113,115],{"href":82,"rel":114},[],"GitLab Security Standard","を発表しました。コードは豊富にあり、信頼は不足しているという前提に立ち、各エージェントがより大きな自律性を獲得するために通過すべき5つのステージを定めたものです。そのうち「検証」のステージは、人間が書いたかエージェントが書いたかを問わず、すべての変更が作成者には手を加えられない制御を通過することを求めています。Business Logic Security Analyzerが動くのは、まさにその作成者の手が届かない場所。検出結果は、コードベースの他の部分を統制しているのと同じレポートおよびダッシュボードに残ります。",[38,118,119],{"id":119},"アナライザーの仕組み",[12,121,122],{},"Business Logic Security Analyzerは、GitLab Duo Agent Platform上の基本フローの1つで、ビジネスロジックの欠陥を対象とします。まず着手したのは、オブジェクトレベル認可の不備、認可の欠如または不適切な認可、そしてマスアサインメントの3つ。リポジトリ全体のスキャンを実行できるほか、パイプラインの通過後にマージリクエストごとの自動スキャンも実行できます。",[12,124,125,126,131],{},"こうした欠陥を検出するには、そのアプリケーションが本来何をするものなのかというモデルが欠かせません。パターンスキャナーはそれを持ちませんが、リポジトリを読み込むエージェントであれば自ら構築できます。アナライザーがまず行うのは、アプリケーションのエントリーポイントの列挙と、誰に何が許可されるべきかの対応づけ。どのレコードがどのユーザーに属するのか、どのアクションが管理者向けなのか、という観点から、対象範囲内の各ハンドラーを読み、レコードに触れる前にそのルールを適用しているかどうかを確認します。検出結果は",[16,127,130],{"href":128,"rel":129},"https://docs.gitlab.com/ja-jp/user/application_security/vulnerability_report/",[],"脆弱性レポート","とマージリクエストのセキュリティウィジェットに、SASTの結果と同等のものとして表示され、トリアージ、修正、監査に活用できます。",[12,133,134,135,139,140,143,144,147,148,151],{},"以下のデモアプリケーションでは、",[136,137,138],"code",{},"refund_order","がリクエストから",[136,141,142],{},"order_id","を受け取り、呼び出し元がその注文の所有者であるか、あるいは管理者であるかを確認しないまま",[136,145,146],{},"refunded=1","を設定しています。クエリはパラメーター化されているため、テイントルールは何も検知しません。アナライザーはこれを",[136,149,150],{},"app/orders.py:17","のCWE-639、深刻度Criticalとして報告し、その説明の中で所有者確認が欠落している点を指摘します。",[12,153,154],{},[155,156],"img",{"alt":157,"src":158},"デモアプリケーションに対するBusiness Logic Security Analyzerのスキャン結果を、GitLabの脆弱性レポートに表示したスクリーンショット。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1792521341/w2sdpy8hv2ucqxfejmn6.png",[38,160,161],{"id":161},"アナライザーを支えるモデル",[12,163,164],{},"Business Logic Security Analyzerは、AnthropicのClaude Mythos 5.1に対応するGitLabで最初の機能であり、承認済み環境をご利用のお客様に早期アクセスとして提供されます。モデルが参照するのは、GitLabのプロンプトとお客様のリポジトリだけ。アナライザーが必要とするコンテキスト、すなわちデータモデル、ロール、そして各エンドポイントが適用するルールは、いずれもそのリポジトリの中にあります。Anthropic IndiaでHead of Applied AIを務めるRajat Pandit氏は、Transcendでこう語りました。「防御する側が攻撃する側よりも多くのコンテキストを持つとき、高度なモデルは形勢を防御側に有利なものへと変えます」",[12,166,167,168,173],{},"Mythosに加えて、AnthropicのClaude Opus 5.5、Sonnet 5.5、Sonnet 5、Sonnet 4.6にも対応しており、今後のリリースではさらに多くのモデルへの対応を予定しています。いずれもGitLabのAIゲートウェイを経由するGitLab管理モデルとして動作し、",[16,169,172],{"href":170,"rel":171},"https://docs.gitlab.com/ja-jp/user/gitlab_duo/data_usage/",[],"データの取り扱い条件","もGitLab Duo Agent Platformの他の機能と変わりません。",[38,175,176],{"id":176},"早期アクセスのお申し込み",[12,178,179],{},"Business Logic Security Analyzerは現在、GitLab.comをご利用のGitLab Ultimateのお客様のうち、限られた範囲を対象とした早期アクセスの段階にあります。ご参加いただくお客様には、自社のコードベースでアナライザーを実行し、セキュリティチームがまだ把握していなかった真陽性を見つけ出していただきます。アナライザーがどこで正しく、どこで誤り、どこで沈黙するのか。GitLabは各チームと協力しながら、その検証を進めていきます。スキャンのたびにGitLabクレジットを消費し、そのコストはアプリケーションのアタックサーフェス（攻撃対象領域）の規模に応じて変動します。",[12,181,182,183,188,189,193],{},"ご検討をご希望の場合は、担当のアカウントチームまでご連絡ください。まだGitLabをご利用でない場合は、",[16,184,187],{"href":185,"rel":186},"https://about.gitlab.com/ja-jp/sales/",[],"セールスチーム","へお問い合わせください。グループで機能が有効化されたら、GitLab Duo ChatまたはAPIからリポジトリ全体のスキャンを開始できます。マージリクエストをスキャンする場合は、プロジェクトにBusiness Logicのスキャンプロファイルを割り当ててください。前提条件とセットアップ手順については、",[16,190,192],{"href":33,"rel":191},[],"Business Logic Security Analyzerのドキュメント","をご覧ください。",{"title":195,"searchDepth":196,"depth":196,"links":197},"",2,[198,199,200,201,202],{"id":40,"depth":196,"text":41},{"id":76,"depth":196,"text":76},{"id":119,"depth":196,"text":119},{"id":161,"depth":196,"text":161},{"id":176,"depth":196,"text":176},"security","2026-10-20","早期アクセスで提供を開始したBusiness Logic Security Analyzerは、リポジトリ全体を読み取り、各エンドポイントが本来適用すべきルールを推論して、その欠落を検出します。","md",null,true,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1756122536/akivvcnafog9c4dhhzkp.png",{},"/ja-jp/blog/gitlab-business-logic-security-analyzer",{"config":213,"title":5,"description":205},{"noIndex":214},false,"gitlab-business-logic-security-analyzer","ja-jp/blog/gitlab-business-logic-security-analyzer",[218,219,220],"AI","features","product","BlogPost","2026-10-21","6ak-qd17vOilt8b_yHoHYaIBYGmNtxd4zxcxh5NGBHo",{"logo":225,"freeTrial":230,"sales":235,"login":240,"items":245,"search":576,"minimal":609,"duo":627,"switchNav":636,"pricingDeployment":647},{"config":226},{"href":227,"dataGaName":228,"dataGaLocation":229},"/ja-jp/","gitlab logo","header",{"text":231,"config":232},"無料トライアルを開始",{"href":233,"dataGaName":234,"dataGaLocation":229},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp&glm_content=default-saas-trial/","free trial",{"text":236,"config":237},"デモをリクエスト",{"href":238,"dataGaName":239,"dataGaLocation":229},"/request-a-demo/","sales",{"text":241,"config":242},"サインイン",{"href":243,"dataGaName":244,"dataGaLocation":229},"https://gitlab.com/users/sign_in/","sign in",[246,332,420,425,500,554],{"text":247,"left":208,"config":248,"menu":250},"プラットフォーム",{"dataNavLevelOne":249},"platform",{"type":251,"link":252,"columns":256,"feature":321},"lists",{"text":253,"config":254},"プラットフォームを詳しく見る",{"href":255,"dataGaName":249,"dataGaLocation":229},"/ja-jp/platform/",[257,280,303],{"title":258,"items":259},"実行とワークフロー",[260,265,270,275],{"text":261,"config":262},"CI/CD",{"href":263,"dataGaLocation":229,"dataGaName":264},"/ja-jp/solutions/continuous-integration/","ci/cd",{"text":266,"config":267},"ソースコード管理",{"href":268,"dataGaLocation":229,"dataGaName":269},"/ja-jp/solutions/source-code-management/","source code management",{"text":271,"config":272},"アジャイルデリバリー",{"href":273,"dataGaLocation":229,"dataGaName":274},"/ja-jp/solutions/agile-delivery/","agile delivery",{"text":276,"config":277},"アーティファクト管理",{"href":278,"dataGaLocation":229,"dataGaName":279},"/ja-jp/artifact-central/","artifact management",{"title":281,"items":282},"セキュリティとガバナンス",[283,288,293,298],{"text":284,"config":285},"アプリケーションセキュリティテスト",{"href":286,"dataGaLocation":229,"dataGaName":287},"/ja-jp/solutions/application-security-testing/","application security testing",{"text":289,"config":290},"ガバナンスとコンプライアンス",{"href":291,"dataGaLocation":229,"dataGaName":292},"/ja-jp/solutions/software-compliance/","governance and compliance",{"text":294,"config":295},"シークレット管理",{"href":296,"dataGaLocation":229,"dataGaName":297},"/ja-jp/gitlab-secrets-manager/","secrets management",{"text":299,"config":300},"サプライチェーンセキュリティ",{"href":301,"dataGaLocation":229,"dataGaName":302},"/ja-jp/solutions/supply-chain/","supply chain security",{"title":304,"items":305},"コンテキストとAI",[306,311,316],{"text":307,"config":308},"エージェント型オーケストレーション",{"href":309,"dataGaLocation":229,"dataGaName":310},"/ja-jp/gitlab-duo-agent-platform/","agentic orchestration",{"text":312,"config":313},"コンテキストグラフ",{"href":314,"dataGaLocation":229,"dataGaName":315},"/ja-jp/gitlab-orbit/","context graph",{"text":317,"config":318},"可視性と測定",{"href":319,"dataGaLocation":229,"dataGaName":320},"/ja-jp/solutions/visibility-measurement/","visibility and measurement",{"config":322,"title":325,"text":326,"link":327},{"background":323,"textColor":324},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1790185102/o7dn32anqcb6z8dgd3as.jpg')","#000","GitLabが選ばれる理由","ひとつのプラットフォームで、ソフトウェアライフサイクル全体を通じてスピードと制御を両立できます。",{"text":328,"config":329},"詳細はこちら",{"href":330,"dataGaName":331,"dataGaLocation":229},"/ja-jp/why-gitlab/","why gitlab",{"text":333,"left":208,"config":334,"menu":336},"ソリューション",{"dataNavLevelOne":335},"solutions",{"type":251,"link":337,"columns":341,"feature":411},{"text":338,"config":339},"すべてのソリューションを表示",{"href":340,"dataGaName":335,"dataGaLocation":229},"/ja-jp/solutions/",[342,360,378],{"title":343,"items":344},"成果",[345,350,355],{"text":346,"config":347},"DevOpsモダナイゼーション",{"href":348,"dataGaLocation":229,"dataGaName":349},"/ja-jp/assessments/devops-modernization-assessment/","devops modernization",{"text":351,"config":352},"セキュリティモダナイゼーション",{"href":353,"dataGaLocation":229,"dataGaName":354},"/ja-jp/assessments/security-modernization-assessment/","security modernization",{"text":356,"config":357},"AIモダナイゼーション",{"href":358,"dataGaLocation":229,"dataGaName":359},"/ja-jp/assessments/ai-modernization-assessment/","ai modernization",{"title":361,"items":362},"規模別",[363,368,373],{"text":364,"config":365},"エンタープライズ",{"href":366,"dataGaLocation":229,"dataGaName":367},"/ja-jp/enterprise/","enterprise",{"text":369,"config":370},"スモールビジネス",{"href":371,"dataGaLocation":229,"dataGaName":372},"/ja-jp/small-business/","small business",{"text":374,"config":375},"スタートアップ",{"href":376,"dataGaLocation":229,"dataGaName":377},"/ja-jp/solutions/startups/","startups",{"title":379,"items":380},"業界",[381,386,391,396,401,406],{"text":382,"config":383},"金融サービス",{"href":384,"dataGaLocation":229,"dataGaName":385},"/ja-jp/solutions/finance/","financial services",{"text":387,"config":388},"公共部門",{"href":389,"dataGaLocation":229,"dataGaName":390},"/ja-jp/solutions/public-sector/","public sector",{"text":392,"config":393},"通信",{"href":394,"dataGaLocation":229,"dataGaName":395},"/ja-jp/solutions/telecommunications/","telecommunications",{"text":397,"config":398},"自動車",{"href":399,"dataGaLocation":229,"dataGaName":400},"/ja-jp/solutions/automotive/","automotive",{"text":402,"config":403},"教育",{"href":404,"dataGaLocation":229,"dataGaName":405},"/ja-jp/solutions/education/","education",{"text":407,"config":408},"航空宇宙",{"href":409,"dataGaLocation":229,"dataGaName":410},"/ja-jp/solutions/aerospace/","aerospace",{"config":412,"title":413,"text":414,"link":415},{"background":323,"textColor":324},"GitLabのセキュリティ標準","セキュリティを犠牲にすることなく、ソフトウェアファクトリーを強化し、自律的なAIエージェントを実現する方法をご覧ください。",{"text":416,"config":417},"標準を見る",{"href":418,"dataGaName":419,"dataGaLocation":229},"/ja-jp/gitlab-security-standard/","gitlab security standard",{"text":421,"config":422},"料金",{"href":423,"dataGaName":424,"dataGaLocation":229,"dataNavLevelOne":424},"/ja-jp/pricing/","pricing",{"text":426,"config":427,"menu":429},"リソース",{"dataNavLevelOne":428},"resources",{"type":251,"link":430,"columns":434,"feature":491},{"text":431,"config":432},"すべてのリソースを表示",{"href":433,"dataGaName":428,"dataGaLocation":229},"/ja-jp/resources/",[435,463],{"title":436,"items":437},"検索する",[438,443,448,453,458],{"text":439,"config":440},"製品ドキュメント",{"href":441,"dataGaName":442,"dataGaLocation":229},"https://docs.gitlab.com/ja-jp/","docs",{"text":444,"config":445},"GitLab University",{"href":446,"dataGaName":447,"dataGaLocation":229},"https://university.gitlab.com/","university",{"text":449,"config":450},"技術デモ",{"href":451,"dataGaName":452,"dataGaLocation":229},"/ja-jp/gitlab-technical-demo-series/","demo series",{"text":454,"config":455},"インタラクティブデモ",{"href":456,"dataGaName":457,"dataGaLocation":229},"/ja-jp/demo-hub/","demo hub",{"text":459,"config":460},"GitLabサービス",{"href":461,"dataGaName":462,"dataGaLocation":229},"/ja-jp/services/","services",{"title":464,"items":465},"つなげる",[466,471,476,481,486],{"text":467,"config":468},"ブログ",{"href":469,"dataGaName":470,"dataGaLocation":229},"/ja-jp/blog/","blog",{"text":472,"config":473},"コミュニティ",{"href":474,"dataGaName":475,"dataGaLocation":229},"/community/","community",{"text":477,"config":478},"お客様事例",{"href":479,"dataGaName":480,"dataGaLocation":229},"/ja-jp/customers/","customers",{"text":482,"config":483},"パートナー",{"href":484,"dataGaName":485,"dataGaLocation":229},"/ja-jp/partners/","partners",{"text":487,"config":488},"イベント",{"href":489,"dataGaName":490,"dataGaLocation":229},"/events/","events",{"config":492,"title":493,"text":494,"link":495},{"background":323,"textColor":324},"GitLabの最新情報","最新の機能と改善点に関する情報をお届けします。",{"text":496,"config":497},"最新情報を読む",{"href":498,"dataGaName":499,"dataGaLocation":229},"/ja-jp/whats-new/","whats new",{"text":501,"config":502,"menu":504},"企業情報",{"dataNavLevelOne":503},"company",{"type":251,"columns":505},[506],{"items":507},[508,513,519,524,529,534,539,544,549],{"text":509,"config":510},"GitLabについて",{"href":511,"dataGaName":512,"dataGaLocation":229},"/ja-jp/company/","about",{"text":514,"config":515,"footerGa":518},"採用情報",{"href":516,"dataGaName":517,"dataGaLocation":229},"/jobs/","jobs",{"dataGaName":517},{"text":520,"config":521},"プレス",{"href":522,"dataGaName":523,"dataGaLocation":229},"/press/","press",{"text":525,"config":526},"ハンドブック",{"href":527,"dataGaName":528,"dataGaLocation":229},"https://handbook.gitlab.com/","handbook",{"text":530,"config":531},"経営陣",{"href":532,"dataGaName":533,"dataGaLocation":229},"/company/team/e-group/","leadership",{"text":535,"config":536},"投資家向け情報",{"href":537,"dataGaName":538,"dataGaLocation":229},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":540,"config":541},"トラストセンター",{"href":542,"dataGaName":543,"dataGaLocation":229},"/ja-jp/security/","trust center",{"text":545,"config":546},"AI Transparency Center",{"href":547,"dataGaName":548,"dataGaLocation":229},"/ja-jp/ai-transparency-center/","ai transparency center",{"text":550,"config":551},"ニュースレター",{"href":552,"dataGaName":553,"dataGaLocation":229},"/company/contact/#contact-forms","newsletter",{"text":555,"config":556,"menu":557},"お問い合わせ",{"dataNavLevelOne":503},{"type":251,"columns":558},[559],{"items":560},[561,566,571],{"text":562,"config":563},"営業担当へのお問い合わせ",{"href":564,"dataGaName":565,"dataGaLocation":229},"/ja-jp/sales/","talk to sales",{"text":567,"config":568},"サポートポータル",{"href":569,"dataGaName":570,"dataGaLocation":229},"https://support.gitlab.com/hc/en-us","support portal",{"text":572,"config":573},"カスタマーポータル",{"href":574,"dataGaName":575,"dataGaLocation":229},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":577,"login":578,"suggestions":585},"閉じる",{"text":579,"link":580},"リポジトリとプロジェクトを検索するには、次にログインします",{"text":581,"config":582},"GitLab.com",{"href":243,"dataGaName":583,"dataGaLocation":584},"search login","search",{"text":586,"default":587},"提案",[588,591,595,597,601,605],{"text":589,"config":590},"GitLab Duo Agent Platform",{"href":309,"dataGaName":589,"dataGaLocation":584},{"text":592,"config":593},"コード提案（AI）",{"href":309,"dataGaName":594,"dataGaLocation":584},"Code Suggestions (AI)",{"text":261,"config":596},{"href":263,"dataGaName":261,"dataGaLocation":584},{"text":598,"config":599},"GitLab on AWS",{"href":600,"dataGaName":598,"dataGaLocation":584},"/ja-jp/partners/technology-partners/aws/",{"text":602,"config":603},"GitLab on Google Cloud",{"href":604,"dataGaName":602,"dataGaLocation":584},"/ja-jp/partners/technology-partners/google-cloud-platform/",{"text":606,"config":607},"GitLabを選ぶ理由",{"href":330,"dataGaName":608,"dataGaLocation":584},"Why GitLab?",{"freeTrial":610,"mobileIcon":614,"desktopIcon":619,"secondaryButton":622},{"text":231,"config":611},{"href":612,"dataGaName":234,"dataGaLocation":613},"https://gitlab.com/-/trials/new/","nav",{"altText":615,"config":616},"GitLabアイコン",{"src":617,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":615,"config":620},{"src":621,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":623,"config":624},"はじめに",{"href":625,"dataGaName":626,"dataGaLocation":613},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp/get-started/","get started",{"freeTrial":628,"mobileIcon":632,"desktopIcon":634},{"text":629,"config":630},"GitLab Duoの詳細はこちら",{"href":309,"dataGaName":631,"dataGaLocation":613},"gitlab duo",{"altText":615,"config":633},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":635},{"src":621,"dataGaName":618,"dataGaLocation":613},{"button":637,"mobileIcon":642,"desktopIcon":644},{"text":638,"config":639},"/switch",{"href":640,"dataGaName":641,"dataGaLocation":613},"#contact","switch",{"altText":615,"config":643},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":645},{"src":646,"dataGaName":618,"dataGaLocation":613},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":648,"mobileIcon":653,"desktopIcon":655},{"text":649,"config":650},"料金ページに戻る",{"href":423,"dataGaName":651,"dataGaLocation":613,"icon":652},"back to pricing","GoBack",{"altText":615,"config":654},{"src":617,"dataGaName":618,"dataGaLocation":613},{"altText":615,"config":656},{"src":621,"dataGaName":618,"dataGaLocation":613},{"title":658,"titleMobile":659,"button":660,"config":663},"GitLab Orbitが登場: AIエージェントのためのコンテキストレイヤー","GitLab Orbitが登場",{"text":328,"config":661},{"href":314,"dataGaName":662,"dataGaLocation":229},"orbit",{"layout":664,"disabled":214},"release",{"data":666},{"text":667,"config":668,"items":673,"minimal":895},"GitはSoftware Freedom Conservancyの商標です。当社は「GitLab」をライセンスに基づいて使用しています",{"twitter":669,"facebook":670,"youtube":671,"linkedin":672},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[674,721,778,820,862],{"title":675,"links":676,"subMenu":692},"価格",[677,682,687],{"text":678,"config":679},"プランの表示",{"href":423,"dataGaName":680,"dataGaLocation":681},"view plans","footer",{"text":683,"config":684},"Premiumを選ぶ理由",{"href":685,"dataGaName":686,"dataGaLocation":681},"/ja-jp/pricing/premium/","why premium",{"text":688,"config":689},"Ultimateを選ぶ理由",{"href":690,"dataGaName":691,"dataGaLocation":681},"/ja-jp/pricing/ultimate/","why ultimate",[693],{"title":555,"links":694},[695,697,699,701,706,711,716],{"text":562,"config":696},{"href":564,"dataGaName":239,"dataGaLocation":681},{"text":567,"config":698},{"href":569,"dataGaName":570,"dataGaLocation":681},{"text":572,"config":700},{"href":574,"dataGaName":575,"dataGaLocation":681},{"text":702,"config":703},"ステータス",{"href":704,"dataGaName":705,"dataGaLocation":681},"https://status.gitlab.com/","status",{"text":707,"config":708},"利用規約",{"href":709,"dataGaName":710,"dataGaLocation":681},"/terms/","terms of use",{"text":712,"config":713},"プライバシーに関する声明",{"href":714,"dataGaName":715,"dataGaLocation":681},"/ja-jp/privacy/","privacy statement",{"text":717,"config":718},"Cookie設定",{"dataGaName":719,"dataGaLocation":681,"id":720,"isOneTrustButton":208},"cookie preferences","ot-sdk-btn",{"title":247,"links":722,"subMenu":735},[723,725,727,729,731,733],{"text":253,"config":724},{"href":255,"dataGaName":249,"dataGaLocation":681},{"text":307,"config":726},{"href":309,"dataGaName":310,"dataGaLocation":681},{"text":261,"config":728},{"href":263,"dataGaName":264,"dataGaLocation":681},{"text":312,"config":730},{"href":314,"dataGaName":315,"dataGaLocation":681},{"text":294,"config":732},{"href":296,"dataGaName":297,"dataGaLocation":681},{"text":325,"config":734},{"href":330,"dataGaName":331,"dataGaLocation":681},[736],{"title":737,"links":738},"トピック",[739,743,748,753,758,763,768,773],{"text":261,"config":740},{"href":741,"dataGaName":742,"dataGaLocation":681},"/ja-jp/topics/ci-cd/","cicd",{"text":744,"config":745},"GitOps",{"href":746,"dataGaName":747,"dataGaLocation":681},"/ja-jp/topics/gitops/","gitops",{"text":749,"config":750},"DevOps",{"href":751,"dataGaName":752,"dataGaLocation":681},"/ja-jp/topics/devops/","devops",{"text":754,"config":755},"バージョン管理",{"href":756,"dataGaName":757,"dataGaLocation":681},"/ja-jp/topics/version-control/","version control",{"text":759,"config":760},"DevSecOps",{"href":761,"dataGaName":762,"dataGaLocation":681},"/ja-jp/topics/devsecops/","devsecops",{"text":764,"config":765},"クラウドネイティブ",{"href":766,"dataGaName":767,"dataGaLocation":681},"/ja-jp/topics/cloud-native/","cloud native",{"text":769,"config":770},"コーディングのためのAI",{"href":771,"dataGaName":772,"dataGaLocation":681},"/ja-jp/topics/devops/ai-for-coding/","ai for coding",{"text":774,"config":775},"エージェント型AI",{"href":776,"dataGaName":777,"dataGaLocation":681},"/ja-jp/topics/agentic-ai/","agentic ai",{"title":333,"links":779},[780,782,784,786,788,791,793,795,797,799,801,803,805,808,812,816],{"text":346,"config":781},{"href":348,"dataGaName":349,"dataGaLocation":681},{"text":351,"config":783},{"href":353,"dataGaName":354,"dataGaLocation":681},{"text":356,"config":785},{"href":358,"dataGaName":359,"dataGaLocation":681},{"text":382,"config":787},{"href":384,"dataGaName":385,"dataGaLocation":681},{"text":789,"config":790},"公共機関",{"href":389,"dataGaName":390,"dataGaLocation":681},{"text":392,"config":792},{"href":394,"dataGaName":395,"dataGaLocation":681},{"text":397,"config":794},{"href":399,"dataGaName":400,"dataGaLocation":681},{"text":402,"config":796},{"href":404,"dataGaName":405,"dataGaLocation":681},{"text":407,"config":798},{"href":409,"dataGaName":410,"dataGaLocation":681},{"text":364,"config":800},{"href":366,"dataGaName":367,"dataGaLocation":681},{"text":369,"config":802},{"href":371,"dataGaName":372,"dataGaLocation":681},{"text":374,"config":804},{"href":376,"dataGaName":377,"dataGaLocation":681},{"text":744,"config":806},{"href":807,"dataGaName":747,"dataGaLocation":681},"/ja-jp/solutions/gitops/",{"text":809,"config":810},"ソフトウェアコンポジション解析",{"href":301,"dataGaName":811,"dataGaLocation":681},"software composition analysis",{"text":813,"config":814},"バリューストリーム管理",{"href":319,"dataGaName":815,"dataGaLocation":681},"value stream management",{"text":817,"config":818},"すべてのソリューション",{"href":340,"dataGaName":819,"dataGaLocation":681},"all solutions",{"title":426,"links":821},[822,827,832,835,837,839,841,843,845,847,849,851,853,855,858],{"text":823,"config":824},"インストール",{"href":825,"dataGaName":826,"dataGaLocation":681},"/ja-jp/install/","install",{"text":828,"config":829},"クイックスタートガイド",{"href":830,"dataGaName":831,"dataGaLocation":681},"/ja-jp/get-started/","quick setup checklists",{"text":439,"config":833},{"href":834,"dataGaName":442,"dataGaLocation":681},"https://docs.gitlab.com/ja-jp",{"text":444,"config":836},{"href":446,"dataGaName":447,"dataGaLocation":681},{"text":449,"config":838},{"href":451,"dataGaName":452,"dataGaLocation":681},{"text":454,"config":840},{"href":456,"dataGaName":457,"dataGaLocation":681},{"text":459,"config":842},{"href":461,"dataGaName":462,"dataGaLocation":681},{"text":467,"config":844},{"href":469,"dataGaName":470,"dataGaLocation":681},{"text":472,"config":846},{"href":474,"dataGaName":475,"dataGaLocation":681},{"text":477,"config":848},{"href":479,"dataGaName":480,"dataGaLocation":681},{"text":482,"config":850},{"href":484,"dataGaName":485,"dataGaLocation":681},{"text":487,"config":852},{"href":489,"dataGaName":490,"dataGaLocation":681},{"text":550,"config":854},{"href":552,"dataGaName":553,"dataGaLocation":681},{"text":856,"config":857},"最新リリース",{"href":498,"dataGaName":499,"dataGaLocation":681},{"text":859,"config":860},"すべてのリソース",{"href":433,"dataGaName":861,"dataGaLocation":681},"all resources",{"title":863,"links":864},"会社情報",[865,867,869,871,873,875,877,879,881,885,890],{"text":509,"config":866},{"href":511,"dataGaName":503,"dataGaLocation":681},{"text":514,"config":868},{"href":516,"dataGaName":517,"dataGaLocation":681},{"text":520,"config":870},{"href":522,"dataGaName":523,"dataGaLocation":681},{"text":525,"config":872},{"href":527,"dataGaName":528,"dataGaLocation":681},{"text":530,"config":874},{"href":532,"dataGaName":533,"dataGaLocation":681},{"text":535,"config":876},{"href":537,"dataGaName":538,"dataGaLocation":681},{"text":540,"config":878},{"href":542,"dataGaName":543,"dataGaLocation":681},{"text":545,"config":880},{"href":547,"dataGaName":548,"dataGaLocation":681},{"text":882,"config":883},"Sustainability",{"href":884,"dataGaName":882,"dataGaLocation":681},"/sustainability/",{"text":886,"config":887},"ダイバーシティ、インクルージョン、ビロンギング（DIB）",{"href":888,"dataGaName":889,"dataGaLocation":681},"/ja-jp/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":891,"config":892},"現代奴隷制の透明性に関する声明",{"href":893,"dataGaName":894,"dataGaLocation":681},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":896},[897,899,901],{"text":707,"config":898},{"href":709,"dataGaName":710,"dataGaLocation":681},{"text":717,"config":900},{"dataGaName":719,"dataGaLocation":681,"id":720,"isOneTrustButton":208},{"text":712,"config":902},{"href":714,"dataGaName":715,"dataGaLocation":681},[904],{"id":905,"title":7,"body":207,"config":906,"content":908,"description":207,"extension":912,"meta":913,"navigation":208,"path":914,"seo":915,"stem":916,"__hash__":917},"blogAuthors/en-us/blog/authors/chris-widstrom.yml",{"template":907},"BlogAuthor",{"config":909,"name":7,"bio":911},{"headshot":910},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1789567036/sg1tlg9ctpwcmsbak2ij.jpg","Senior PM, SAST & SCA","yml",{},"/en-us/blog/authors/chris-widstrom",{},"en-us/blog/authors/chris-widstrom","aKDm1EPnJF7ZeX_kF88TW3So_WnmvuVjk7NgeZDNBfI",[919,926,934],{"title":920,"description":921,"heroImage":922,"category":203,"date":204,"authors":923,"slug":925,"externalUrl":207},"AIガバナンスダッシュボードで、AIエージェントの活動を一元的に可視化","GitLab AIガバナンスダッシュボードなら、GitLab Duo Agent Platformのエージェントから、デベロッパーが使う外部接続エージェントまで、AIエージェントの活動を1か所で確認できます。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1773860699/gf9bdnis6ggrn4huvfrl.png",[924],"Alisa Ho","ai-governance-dashboard",{"title":927,"description":928,"heroImage":929,"category":203,"date":930,"authors":931,"slug":933,"externalUrl":207},"GitLab Secrets Managerでシークレットをコードと同じ統制下に","ビルド時のシークレットを必要なジョブだけに絞り込み、ランタイムのシークレットも 同じストアから届けることで、認証情報の守りを固めます。コードを統制しているのと同じ権限と 監査証跡のもとでシークレットを扱えます。GitLab 19.5で一般提供（GA）を開始しました。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1791993648/t2kod74bclspits5cc5o.png","2026-10-15",[932],"Mark Settle","secrets-manager-ga",{"title":935,"description":936,"heroImage":209,"category":203,"date":937,"authors":938,"slug":939,"externalUrl":207},"組織全体のセキュリティリスクを1つのダッシュボードで把握する","複数のトップレベルグループを運用する企業向けに、GitLabが組織全体の脆弱性と単一のリスクスコアを集約して表示します。","2026-10-08",[924],"security-risk-in-one-dashboard",{"header":941,"text":942,"button":946,"disclaimer":949},"無料の\n\n30日間のGitLabトライアルを開始\n",[943,944,945],"GitLab Duo Agent Platformへのアクセス","GitLabの最も高度な機能を試す","AIで複雑なタスクを自動化する",{"text":231,"config":947},{"href":948,"dataGaName":234,"dataGaLocation":470},"https://gitlab.com/-/trials/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/ja-jp/blog/","クレジットカードなしでご登録いただけます。",{"header":951,"blurb":952,"button":953,"secondaryButton":957},"今すぐ開発をスピードアップ","DevSecOpsに特化したインテリジェントオーケストレーションプラットフォームで実現できることをご確認ください。\n",{"text":231,"config":954},{"href":955,"dataGaName":234,"dataGaLocation":956},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/ja-jp/","feature",{"text":555,"config":958},{"href":564,"dataGaName":239,"dataGaLocation":956},1792707078076]