Skip to content

Commit 535f6dc

Browse files
RoRoJnerda-codesjcirinosclwy
authored
fix(managed-inf): update docs for managing access (#5366)
* fix(ai): fix access doc * fix(ai): managed inf network access docs * Apply suggestions from code review Co-authored-by: Néda <[email protected]> * Apply suggestions from code review Co-authored-by: Jessica <[email protected]> --------- Co-authored-by: Néda <[email protected]> Co-authored-by: Jessica <[email protected]>
1 parent 8acba5e commit 535f6dc

File tree

6 files changed

+88
-32
lines changed

6 files changed

+88
-32
lines changed

menu/navigation.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -917,7 +917,7 @@
917917
"slug": "configure-autoscaling"
918918
},
919919
{
920-
"label": "Manage allowed IP addresses",
920+
"label": "Manage access to a deployment",
921921
"slug": "manage-allowed-ips"
922922
},
923923
{

pages/managed-inference/concepts.mdx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,7 @@ dates:
77
---
88
## Allowed IPs
99

10-
Allowed IPs are single IPs or IP blocks that have the [required permissions to remotely access a deployment](/managed-inference/how-to/manage-allowed-ips/). They allow you to define which host and networks can connect to your Managed Inference endpoints. You can add, edit, or delete allowed IPs. In the absence of allowed IPs, all IP addresses are allowed by default.
11-
12-
Access control is handled directly at the network level by Load Balancers, making the filtering more efficient and universal and relieving the Managed Inference server from this task.
10+
The **Allowed IPs** feature is no longer available for Managed Inference deployments. Use one of the alternative methods detailed in our [dedicated documentation](/managed-inference/how-to/manage-allowed-ips/) to restrict access to your Managed Inference deployments.
1311

1412
## Context size
1513

13.8 KB
Loading
Lines changed: 80 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,99 @@
11
---
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
44
tags: managed-inference ai-data ip-address
55
dates:
6-
validation: 2025-03-19
6+
validation: 2025-07-31
77
posted: 2024-03-06
88
---
99
import Requirements from '@macros/iam/requirements.mdx'
1010

11+
import apiAuthentication from './assets/scaleway-api-authentication.webp'
1112

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.
1324

1425
<Requirements />
1526

1627
- A Scaleway account logged into the [console](https://console.scaleway.com)
1728
- A [Managed Inference deployment](/managed-inference/quickstart/)
1829
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
1930

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+
2062
<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.
2266
</Message>
2367

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.
2570

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>

pages/managed-inference/how-to/managed-inference-with-private-network.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,13 @@ Your Managed Inference model will be deployed, and it will be attached to the se
6161

6262
## How to send inference requests in a Private Network
6363

64+
<Message type="note">
65+
For more information on managing access to deployments in a Private Network, see [How to manage access to deployments](/managed-inference/how-to/manage-allowed-ips/).
66+
</Message>
67+
6468
1. [Create an Instance](/instances/how-to/create-an-instance/) which will host the inference application.
6569
<Message type="important">
66-
Ensure the Instance [is attached to the same Private Network](/instances/how-to/use-private-networks/) as your Managed Inference deployment.
70+
Ensure the Instance is attached to a Private Network in the same VPC as your Managed Inference deployment.
6771
</Message>
6872
2. Download the TLS certificate from your Managed Inference deployment, available from the **Overview** tab in the **Endpoints** section.
6973
<Lightbox image={image2} alt="A screenshot of the Managed Interface product overview tab in the Scaleway console, highlighting the TLS certificate download section" size="medium" />
@@ -106,7 +110,7 @@ Your Managed Inference model will be deployed, and it will be attached to the se
106110
"stream": False
107111
}
108112

109-
headers = {"Authorization": "Bearer " + "<SCW_SECRET_KEY>"} # ADD IAM KEY IF NECESSARY
113+
headers = {"Authorization": "Bearer " + "<SCW_SECRET_KEY>"} # ADD API KEY, IF API KEY AUTHENTICATION IS ENABLED FOR THE PRIVATE ENDPOINT
110114

111115
response = requests.post("<PRIVATE_ENDPOINT_URL>/v1/chat/completions",
112116
headers=headers, json=PAYLOAD, stream=False, verify='<CERT_NAME>.pem')

pages/managed-inference/reference-content/data-privacy-security-scaleway-ai-services.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ Scaleway's Managed Inference services adhere to the following data usage policie
3737
- **Hosting:** Models deployed or consumed for inference are hosted in Europe within the data center region specified by the customer.
3838
- **Encryption**: All traffic between the customer and the inference service is encrypted using in-transit TLS encryption to ensure data protection during transmission.
3939
- **Endpoint Security**: Public-facing endpoints are secured with API key tokens.
40-
- **Allowed IPs**: Public endpoints can be configured to restrict access to specific IP addresses or IP blocks.
4140
- **Virtual Private Cloud (VPC)**: The service can be hosted in a Virtual Private Cloud within private subnets. Access to the service can be restricted based on allowed IP ranges.
4241

4342
### Legal and compliance

0 commit comments

Comments
 (0)