Déployez des contrôles de connexion sur les appareils gérés pour encadrer la façon dont vos utilisateurs se connectent à Kiro. Vous pouvez limiter l'écran de connexion aux méthodes prises en charge par votre organisation, préremplir l'URL de démarrage et la région de l'IAM Identity Center pour que les utilisateurs n'aient pas à les chercher, et ajouter un lien vers votre propre page d'aide pour quiconque reste bloqué.
Les contrôles de connexion résident dans le même fichier managed-settings.json que les politiques d'autorisation. Ils s'appliquent à Kiro IDE (version 1.2 et versions ultérieures) et à Kiro CLI (version 2.25.0 et versions ultérieures) sur l'appareil où le fichier est déployé.
Les contrôles de connexion lisent deux parties du fichier de paramètres gérés :
- Une règle du tableau
rulesavec"capability": "signin_method"restreint les méthodes offertes par l'écran de connexion. La règle utilise toujours"effect": "deny".matchnomme les méthodes à retirer etexcludenomme les méthodes à conserver. Pour n'autoriser que certaines méthodes, refusez tout avec"match": ["*"]et énumérez les méthodes permises dansexclude. - Les clés de l'objet
settingspréremplissent les renseignements de connexion de votre organisation et ajoutent le lien d'aide.
Kiro lit le fichier au démarrage d'une connexion; les contrôles prennent donc effet à la connexion suivante. La page de connexion du navigateur n'affiche que les méthodes permises, avec vos renseignements déjà remplis. Lorsque le navigateur renvoie le résultat, le client vérifie de nouveau la méthode et refuse une méthode interdite avant qu'un jeton soit émis, de sorte que la modification de l'URL de connexion ne permet pas de contourner la règle.
Si vous refusez toutes les méthodes ou si la règle ne peut pas être lue, Kiro abandonne la restriction et offre toutes les méthodes plutôt que de bloquer les utilisateurs. Consultez Validation et gestion des erreurs.
Placez le fichier au chemin protégé par le système d'exploitation pour votre plateforme. Ces chemins exigent un accès administrateur ou racine pour être modifiés. Si vous déployez déjà une politique d'autorisation, ajoutez la règle signin_method et l'objet settings à ce fichier; l'IDE et l'interface de ligne de commande le lisent tous deux.
Créez ou modifiez le fichier de paramètres gérés :
sudo mkdir -p "/Library/Application Support/Kiro" sudo nano "/Library/Application Support/Kiro/managed-settings.json"
Ajoutez la règle de connexion et les paramètres :
{ "rules": [ { "capability": "signin_method", "match": ["*"], "exclude": ["idc"], "effect": "deny" } ], "settings": { "idc_start_url": "https://my-org.awsapps.com/start", "idc_region": "us-east-1", "signin_help_url": "https://it.example.com/kiro-help" } }
Vous pouvez aussi déployer ce fichier par MDM (par exemple Jamf ou Kandji) pour le gérer à grande échelle.
Conservez le tableau rules dans le fichier même lorsque vous ne définissez que settings; utilisez "rules": [] si vous n'avez aucune règle à ajouter. Le lecteur des politiques d'autorisation s'y attend.
Une règle signin_method a les mêmes champs qu'une règle d'autorisation, mais ses listes match et exclude contiennent des noms de méthodes plutôt que des motifs glob :
| Champ | Description | Obligatoire |
|---|---|---|
capability | Toujours signin_method | Oui |
match | Noms des méthodes à refuser. Omettez-le, ou utilisez ["*"], pour refuser toutes les méthodes. C'est la forme habituelle lorsque vous énumérez les méthodes permises dans exclude. | Non |
exclude | Noms des méthodes à garder disponibles. Toute méthode nommée ici reste sur l'écran de connexion même si match la refuse. | Non |
effect | Toujours deny. Toute autre valeur, y compris allow, ask ou Deny, amène Kiro à ignorer la restriction et à avertir l'utilisateur. | Oui |
Utilisez ces noms de méthodes. Ils sont sensibles à la casse, et les libellés de l'écran de connexion ne sont pas acceptés.
| Nom de méthode | Méthode de connexion |
|---|---|
idc | AWS IAM Identity Center, affiché comme Votre organisation sur l'écran de connexion |
external_idp | Le fournisseur d'identité externe de votre organisation, comme Okta ou Microsoft Entra ID |
builder_id | AWS Builder ID |
google | |
github | GitHub |
social | Google et GitHub |
Une règle peut nommer au plus 16 entrées au total dans match et exclude. Si le fichier contient plusieurs règles signin_method, une méthode refusée par l'une d'elles est refusée.
Chaque clé de settings est facultative. Les valeurs doivent être des chaînes d'au plus 2 048 caractères sans caractères de contrôle, et les valeurs d'URL doivent utiliser https. Une valeur qui échoue à ces vérifications est abandonnée individuellement; le reste du fichier s'applique toujours.
| Clé | Description |
|---|---|
idc_start_url | L'URL de démarrage AWS IAM Identity Center, préremplie lorsqu'un utilisateur choisit Votre organisation. |
idc_region | La région AWS qui héberge votre annuaire Identity Center, préremplie avec l'URL de démarrage. |
external_idp_domain | Le domaine qui identifie votre organisation pour la connexion par fournisseur d'identité externe. |
external_idp_start_url | L'URL de démarrage de la connexion au fournisseur d'identité externe de votre organisation. |
external_idp_region | La région AWS où la connexion à votre fournisseur d'identité externe est configurée. Sans elle, Kiro recherche votre organisation dans toutes les régions. |
signin_help_url | Une page que les utilisateurs peuvent ouvrir lorsqu'ils ont besoin d'aide pour se connecter. Kiro l'affiche sur l'écran de connexion et dans les messages de refus. Le lien est rendu par le client et n'est jamais envoyé au service de connexion; une URL interne convient donc. |
{ "rules": [ { "capability": "signin_method", "match": ["*"], "exclude": ["idc"], "effect": "deny" } ], "settings": { "idc_start_url": "https://my-org.awsapps.com/start", "idc_region": "eu-central-1" } }
L'écran de connexion n'offre que Votre organisation, avec l'URL de démarrage et la région déjà remplies.
{ "rules": [ { "capability": "signin_method", "match": ["*"], "exclude": ["idc", "external_idp"], "effect": "deny" } ], "settings": { "external_idp_domain": "example.com", "external_idp_region": "us-east-1" } }
{ "rules": [ { "capability": "signin_method", "match": ["social", "builder_id"], "effect": "deny" } ] }
Retire Google, GitHub et AWS Builder ID de l'écran de connexion et laisse disponibles la connexion par Identity Center et par fournisseur d'identité externe.
{ "rules": [], "settings": { "signin_help_url": "https://it.example.com/kiro-help" } }
Toutes les méthodes restent disponibles et l'écran de connexion affiche le lien.
- Sur l'écran de connexion, seules les méthodes permises apparaissent, et les champs Identity Center sont préremplis à partir de vos paramètres. Dans l'IDE, le lien d'aide apparaît sous les boutons de connexion sous la forme Need help signing in? et s'ouvre dans le navigateur. Dans l'interface de ligne de commande,
kiro-cli loginafficheNeed help signing in? <url>avant d'ouvrir le navigateur. - Si une méthode refusée aboutit malgré tout, par exemple parce que l'URL de connexion a été modifiée, Kiro la refuse avant qu'un jeton soit émis et nomme les options permises par leurs libellés à l'écran. Par exemple :
Google sign-in is not permitted by your administrator. Sign in with "Your organization" instead.L'URL d'aide, lorsqu'elle est configurée, suit sur sa propre ligne. - Dans le flux par code d'appareil de l'interface de ligne de commande (
kiro-cli login --use-device-flow, ou une machine distante sans navigateur), le menu n'offre que les méthodes permises parmi AWS Builder ID, Google, GitHub et Your Organization (Identity Center). S'il n'y a qu'une méthode permise, l'interface de ligne de commande l'utilise sans afficher le menu. S'il n'y en a aucune, elle explique qu'aucune méthode permise ne fonctionne sans navigateur et comment procéder.
Les contrôles de connexion échouent en mode ouvert. Une erreur dans le fichier ne bloque jamais la connexion; elle abandonne le contrôle touché et avertit l'utilisateur afin que vous puissiez la corriger. L'IDE affiche une notification et l'interface de ligne de commande affiche une ligne Warning: au démarrage de kiro-cli login, chacune nommant le fichier et la cause.
- Fichier illisible ou invalide : Si le fichier n'est pas du JSON valide, commence par une marque d'ordre des octets, n'est pas en UTF-8 ou contient une clé connue du mauvais type, aucun contrôle de connexion n'est appliqué. Comme le même fichier porte les politiques d'autorisation, un fichier invalide bloque aussi les outils de l'agent jusqu'à ce qu'il soit corrigé.
- Règle abandonnée, toutes les méthodes disponibles : La restriction est ignorée, tandis que les clés
settingss'appliquent toujours, lorsqueeffecta une valeur autre quedeny, lorsqu'un nom dansexcluden'est pas reconnu, lorsqu'aucun nom dansmatchn'est reconnu, lorsque les règles combinées refusent toutes les méthodes, lorsqu'elles ne refusent aucune méthode (par exemple,excludecouvre tout ce quematchrefuse) ou lorsqu'une règle nomme plus de 16 entrées. - Règle réduite : Lorsque
matchmêle des noms reconnus et non reconnus, les noms reconnus sont tout de même refusés et l'utilisateur est averti qu'une entrée a été abandonnée. - Paramètre abandonné : Une URL qui n'utilise pas
https, ou toute valeur trop longue ou contenant des caractères de contrôle, est ignorée individuellement. Les autres paramètres et la règle s'appliquent toujours. - Clés inconnues : Les clés supplémentaires dans
settingssont ignorées, ce qui permet à un fichier plus récent de fonctionner sur un client plus ancien.
Après avoir déployé le fichier sur une machine de test :
- Déconnectez-vous de Kiro (
kiro-cli logoutdans l'interface de ligne de commande, ou déconnexion depuis le menu du compte dans l'IDE) et démarrez une nouvelle connexion - Confirmez que la page du navigateur n'offre que les méthodes permises, avec l'URL de démarrage et la région déjà remplies
- Confirmez que le lien d'aide apparaît sur l'écran de connexion de l'IDE, ou que
kiro-cli loginaffiche la ligneNeed help signing in? - Confirmez qu'aucun avertissement concernant le fichier de paramètres gérés n'apparaît. Un avertissement signifie qu'une partie du fichier ne s'est pas appliquée, et il en nomme la cause
Les contrôles de connexion fonctionnent de concert avec les autres fonctionnalités d'entreprise de Kiro :
- Fournisseurs d'identité configure la connexion Identity Center ou au fournisseur d'identité externe avec laquelle vos utilisateurs se connectent
- Gestion des abonnements contrôle quels utilisateurs ont accès à Kiro
- Politiques d'autorisation partagent le même fichier et contrôlent ce que l'agent peut faire après la connexion
- Authentification décrit le flux de connexion que vos utilisateurs suivent sur chaque surface
Contrôles de connexion