info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
There is a proposal to add more strategic control of the access permissions,
see [epic 3559](https://gitlab.com/groups/gitlab-org/-/epics/3559).
### Allow access to your project with a job token
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/346298/) in GitLab 15.9. [Deployed behind the `:inbound_ci_scoped_job_token` feature flag](../../user/feature_flags.md), enabled by default.
Control your project's job token scope by creating an **inbound** allowlist of projects which can
access your project through its `CI_JOB_TOKEN`.
For example, you can add project `B` to the inbound allowlist for project `A`. Jobs
in the pipeline for "allowed project" `B` can now use the CI/CD job token to authenticate
API calls to access project `A`.
By default the allowlist includes your current project.
It is a security risk to disable this feature, so project maintainers or owners should
keep this setting enabled at all times. Add projects to the allowlist only when cross-project
access is needed.
### Disable the inbound job token scope allowlist
WARNING:
It is a security risk to disable the allowlist. A malicious user could try to compromise
a pipeline created in an unauthorized project. If the pipeline was created by one of
your maintainers, the job token could be used in an attempt to access your project.
You can disable the inbound job token scope allowlist for testing or a similar reason,
but you should enable it again as soon as possible.
Prerequisite:
- You must have at least the Maintainer role for the project.
To disable the inbound job token scope allowlist:
1. On the top bar, select **Main menu > Projects** and find your project.
1. On the left sidebar, select **Settings > CI/CD**.
1. Expand **Token Access**.
1. Toggle **Allow access to this project with a CI_JOB_TOKEN** to disabled.
Enabled by default in new projects.
### Add a project to the inbound job token scope allowlist
You can add projects to the inbound allowlist for a project. Projects added to the allowlist
can make API calls from running pipelines by using the CI/CD job token.
Prerequisite:
- You must have at least the Maintainer role in the current project and at least
the Guest role in the allowed project.
- You must not have more than 100 projects added to the allowlist.
To add a project:
1. On the top bar, select **Main menu > Projects** and find your project.
1. On the left sidebar, select **Settings > CI/CD**.
1. Expand **Token Access**.
1. Verify **Allow access to this project with a CI_JOB_TOKEN** is enabled.
1. Under **Allow CI job tokens from the following projects to access this project**,
add projects to the allowlist.
### Limit your project's job token access
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/328553) in GitLab 14.1. [Deployed behind the `:ci_scoped_job_token` feature flag](../../user/feature_flags.md), disabled by default.
> - [Enabled on GitLab.com and self-managed](https://gitlab.com/gitlab-org/gitlab/-/issues/332272) in GitLab 14.4.
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/332272) in GitLab 14.6.
NOTE:
This feature is disabled by default for all new projects and is [scheduled for removal](https://gitlab.com/gitlab-org/gitlab/-/issues/383084)
in GitLab 16.0. Project maintainers or owners should enable the **inbound** access control instead.
Control your project's job token scope by creating an **outbound** allowlist of projects which
can be accessed by your project's job token.
By default, the allowlist includes your current project.
- The accessed project must have the project attempting to access it [added to the inbound allowlist](#add-a-project-to-the-inbound-job-token-scope-allowlist).