# エラー: 403 "統合によってリソースにアクセスできません"

このエラーは、 Dependabot によって作成されたプル要求で発生する可能性があり、いくつかの異なる方法で解決できます。

> \[!NOTE]
> このトラブルシューティングの記事は、\_\_ でこのエラーが表示される場合Dependabot関連します。 他の GitHub 製品でこのエラーが発生し、トラブルシューティングが困難な場合は、 GitHub のサポートにお問い合わせください。 詳しくは、「[GitHub Support へのお問い合わせ](/ja/support/contacting-github-support)」をご覧ください。

## このエラーについて

```text
403: Resource not accessible by integration
```

Dependabot は、ワークフローが読み取り専用スコープで実行される場合、ワークフローの実行をトリガーするときに信頼されていないと見なされます。

## エラーの原因を確認する

Dependabot ワークフローでcode scanningを使用している場合は、使用しているスコープを調査します。

ブランチ code scanning 結果をアップロードするには、通常、 `security-events: write` スコープが必要です。 ただし、 code scanning では、 `pull_request` イベントによってアクションの実行がトリガーされたときに、常に結果のアップロードが許可されます。 このため、Dependabotブランチでは、`pull_request` イベントではなく `push` イベントを使用することをお勧めします。

## 問題を修正する

デフォルトブランチやその他の重要な長期運用されるブランチへのプッシュ、またはこれらのブランチに対してオープンされたプルリクエストを実行できます。

```yaml
on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
```

または、 Dependabot ブランチを除くすべてのプッシュで実行することもできます。

```yaml
on:
  push:
    branches-ignore:
      - 'dependabot/**'
  pull_request:
```

### デフォルトブランチで分析がまだ失敗しています

既定のブランチで行われたコミットで CodeQL 分析ワークフロー がまだ失敗する場合は、次のことを確認する必要があります。

* コミットをDependabotが作成したかどうか
* コミットを含む pull request がスカッシュとマージを使用してマージされたかどうか

この種類のマージ コミットは Dependabot によって作成されるため、コミットで実行されるすべてのワークフローには読み取り専用のアクセス許可が与えられます。 リポジトリで code scanning および Dependabot セキュリティ更新プログラムまたはバージョン更新プログラムを有効にした場合は、マージ **コミットの作成** 戦略を使用して pull request で自動マージを有効にすることをお勧めします。 これにより、 Dependabotによって作成されるスカッシュ マージ コミットが回避されます。 自動マージの有効化方法の詳細については、「[プルリクエストを自動的にマージする](/ja/pull-requests/how-tos/merge-and-close-pull-requests/automatically-merging-a-pull-request#enabling-auto-merge)」を参照してください。