|
1 | 1 | --- |
2 | | -title: How to manage allowed IP addresses for Managed Inference deployments |
3 | | -description: This page explains how to configure allowed IP addresses for Managed Inference deployments |
| 2 | +title: How to manage access to your Managed Inference deployments |
| 3 | +description: This page explains how to manage and restrict access and authentication for your Managed Inference deployments |
4 | 4 | tags: managed-inference ai-data ip-address |
5 | 5 | dates: |
6 | | - validation: 2025-03-19 |
| 6 | + validation: 2025-07-31 |
7 | 7 | posted: 2024-03-06 |
8 | 8 | --- |
9 | 9 | import Requirements from '@macros/iam/requirements.mdx' |
10 | 10 |
|
| 11 | +import apiAuthentication from './assets/scaleway-api-authentication.webp' |
11 | 12 |
|
12 | | -Allowed IPs restrict the IPs allowed to access your Managed Inference endpoints. In the absence of allowed IPs, all IP addresses are allowed by default. |
| 13 | +<Message type="important"> |
| 14 | +The **Allowed IPs** feature via ACLs is no longer available for Managed Inference deployments. We recommended using one of the alternative methods detailed in this document to restrict access to your Managed Inference deployments. |
| 15 | +</Message> |
| 16 | + |
| 17 | +You can manage and restrict access to your Managed Inference deployments via the following methods: |
| 18 | + |
| 19 | +- Enable or disable authentication by API key |
| 20 | +- Use [IAM](/iam/) features to control which API keys are accepted and under what conditions (including IP-based restrictions) |
| 21 | +- Remove your deployment's public endpoint, and allow controlled access only via Private Networks |
| 22 | + |
| 23 | +Read on for full details. |
13 | 24 |
|
14 | 25 | <Requirements /> |
15 | 26 |
|
16 | 27 | - A Scaleway account logged into the [console](https://console.scaleway.com) |
17 | 28 | - A [Managed Inference deployment](/managed-inference/quickstart/) |
18 | 29 | - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization |
19 | 30 |
|
| 31 | +## How to enable or disable authentication by API key |
| 32 | + |
| 33 | +By default, when you create your Managed Inference deployment, authentication by API key is automatically enabled. This means that when the deployment is accessed via either its public or private endpoint, a valid Scaleway API key must accompany all requests. |
| 34 | + |
| 35 | +You can disable API key authentication at any time, for either the public endpoint, the private endpoint, or both. |
| 36 | + |
| 37 | +1. Click **Managed Inference** in the **AI** section of the [Scaleway console](https://console.scaleway.com) side menu. A list of your deployments displays. |
| 38 | +2. From the drop-down menu, select the geographical region containing your deployment. |
| 39 | +3. Click the deployment whose authentication you want to manage. The deployment's dashboard displays. |
| 40 | +4. Click the **Security** tab. |
| 41 | +5. In the **Authentication** panel, use the toggles <Icon name="toggle" /> to enable or disable authentication by API key for the public and/or private endpoint. |
| 42 | + |
| 43 | +<Lightbox image={apiAuthentication} alt="A screenshot of the Scaleway console shows the toggles for API key authentication first for public endpoints, then for private endpoints" /> |
| 44 | + |
| 45 | +## How to manage access to a deployment with IAM |
| 46 | + |
| 47 | +When [authentication by API key](#enable-or-disable-authentication-by-api-key) is enabled, a valid [Scaleway API key](/iam/concepts/#api-key) must accompany all requests sent to your deployment's endpoint. |
| 48 | + |
| 49 | +An API key is considered valid to access a deployment when: |
| 50 | + |
| 51 | +- It belongs to the [Owner](/iam/concepts/#owner) of the Organization which owns the deployment, or |
| 52 | +- It belongs to a [Member](/iam/concepts/#member) or [Application](/iam/concepts/#application) of the Organization which owns the deployment, and the Member/Application has appropriate [IAM permissions](/iam/reference-content/permission-sets/). |
| 53 | + |
| 54 | +There are two IAM permission sets specific to Managed Inference deployments: `InferenceFullAccess` (allowing access to create, read, update, and delete a deployment) and `InferenceReadOnly` (allowing read-only access). Alternatively, wide-scoped permission sets such as `AllProductsFullAccess` will also allow access. |
| 55 | + |
| 56 | +Permissions are attributed via [policies](/iam/concepts/#policy), which are then attached to a Member or Application. |
| 57 | + |
| 58 | +You can further restrict access by imposing **conditions** when defining a policy. This enables you to allow access only to authorized API keys when presented by specific user agents (e.g., Terraform), from certain IP addresses, or during defined dates and times. |
| 59 | + |
| 60 | +### How to manage deployment access as an Organization Owner or Administrator |
| 61 | + |
20 | 62 | <Message type="note"> |
21 | | - Allowed IP configuration is only available for public endpoints. |
| 63 | +If you only want to access the deployment yourself, and you are the Owner of the Organization that created the deployment, simply [generate an API key](/iam/how-to/create-api-keys/) for yourself, and it will automatically have full rights to access and manage the deployment. |
| 64 | + |
| 65 | +Read on if you want to manage access to your deployment for others. |
22 | 66 | </Message> |
23 | 67 |
|
24 | | -## How to allow an IP address to connect to a deployment |
| 68 | +1. [Invite Members](/iam/how-to/manage-members/) (other humans) to your Organization, or [create Applications](/iam/how-to/create-application/) (non-human users). |
| 69 | +2. Create and attach a [policy](/iam/how-to/create-policy/) to the Member or Application, defining the permissions they should have in your Organization by selecting permission sets (e.g. `InferenceFullAccess`). If desired, define [conditions](/iam/concepts/#conditions) as part of the policy, to further restrict access based on user agent type, date/time or IP address. |
25 | 70 |
|
26 | | -1. Click **Managed Inference** in the **AI** section of the [Scaleway console](https://console.scaleway.com) side menu. A list of your deployments displays. |
27 | | -2. From the drop-down menu, select the geographical region you want to manage. |
28 | | -3. Click a deployment name or <Icon name="more" /> > **More info** to access the deployment dashboard. |
29 | | -4. Click the **Security** tab and navigate to the **Allowed IPs** section. A list of your allowed IP addresses displays. |
30 | | -5. Click **Add allowed IP**. The IP can be a single IP or an IP block. |
31 | | - <Message type="note"> |
32 | | - The IP must be specified in CIDR format, i.e. `198.51.100.135/32` for a single IP or `198.51.100.0/24` for an IP block. |
33 | | - </Message> |
34 | | -6. Enter a single IP address or a subnetwork. |
35 | | - <Message type="note"> |
36 | | - To restore initial settings and allow connections from all IPs, delete all allowed IPs from the list. |
37 | | - </Message> |
38 | | - |
39 | | -## How to delete an IP address from the allowed list |
40 | | - |
41 | | -1. Go to your allowed IP address list. |
42 | | -2. Click <Icon name="more" /> and select **Delete**. |
43 | | -3. A pop-up displays. Type **DELETE** to confirm. |
44 | | -4. Click **Delete allowed IP**. |
| 71 | +All API keys generated by the Member, or for the Application, will automatically inherit the permissions you defined, and can be used to access a Managed Inference deployment's endpoint depending on those permissions. |
| 72 | + |
| 73 | +You can revoke access to a deployment at any time by [modifying or deleting the policy](/iam/how-to/manage-policies/) attached to the Member or Application in question. |
| 74 | + |
| 75 | +### How to access a deployment as an Organization Member |
| 76 | + |
| 77 | +Your access to Managed Inference deployments owned by an Organization in which you are a Member depends on the IAM permissions attributed to you by the Organization's Owner or administrators. |
| 78 | + |
| 79 | +Your permissions will be automatically applied to any API keys you generate for yourself in the Scaleway console. Check with your Organization Owner if you are unsure that you have the right permissions to access a Managed Inference deployment. |
| 80 | + |
| 81 | +1. Log into the [Scaleway console](https://console.scaleway.com) and [generate an API key for yourself](/iam/how-to/create-api-keys/). |
| 82 | +2. Use this API key for authentication when sending requests to a Managed Inference deployment. |
| 83 | + |
| 84 | +## How to restrict access over Private Networks |
| 85 | + |
| 86 | +For enhanced security, you can remove your deployment's public endpoint, attach it to a Private Network, and allow access only via its private endpoint. Only resources within the Private Network's VPC will be able to access the deployment, and they must have downloaded the resource's TLS certificate. |
| 87 | + |
| 88 | +You can still require API key authentication via the private endpoint, and use the methods described above to fine-tune API key restrictions and access. In addition, you can also use VPC features such as Network ACLs for enhanced control and security. |
| 89 | + |
| 90 | +1. [Create your deployment](/managed-inference/how-to/create-deployment/) without checking the **Allow public connections** box, or remove the public endpoint via its **Overview** screen in the console if you already created it with a public endpoint. |
| 91 | +2. Ensure the deployment is [attached to a Private Network](/managed-inference/how-to/managed-inference-with-private-network/#how-to-attach-a-private-network-to-a-managed-inference-deployment). |
| 92 | +3. Transfer the deployment's [TLS certificate](/managed-inference/how-to/managed-inference-with-private-network/#how-to-send-inference-requests-in-a-private-network) to the resources in the VPC that need to access the deployment. |
| 93 | +4. (Optional) Ensure that API key authentication is enabled, and use [policies](/iam/how-to/create-policy/) to define IAM-based rules and conditions for access. |
| 94 | +5. (Optional) Use VPC features such as [Network ACLs](/vpc/reference-content/understanding-nacls/) to place IP-based restrictions on which resources in the VPC can access the deployment. |
| 95 | +6. Follow the instructions in the [dedicated documentation](/managed-inference/how-to/managed-inference-with-private-network/#how-to-send-inference-requests-in-a-private-network) for sending requests to your deployment in a Private Network. |
| 96 | + |
| 97 | +<Message type="tip"> |
| 98 | +If your VPC has a Public Gateway advertising a default route, external resources can still access the deployment via the Public Gateway (with correct authentication). [Read more about Public Gateways](/public-gateways/). |
| 99 | +</Message> |
0 commit comments