Ressource : AuthorizationPolicy
AuthorizationPolicy est une ressource qui spécifie la manière dont un serveur doit autoriser les connexions entrantes. Cette ressource en elle-même ne modifie pas la configuration, sauf si elle est associée à un proxy HTTPS cible ou à une ressource de sélecteur de configuration de point de terminaison.
Représentation JSON |
---|
{ "name": string, "description": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "action": enum ( |
Champs | |
---|---|
name |
Obligatoire. Nom de la ressource AuthorizationPolicy. Il correspond au schéma |
description |
Facultatif. Description en texte libre de la ressource. |
createTime |
Uniquement en sortie. Code temporel de la création de la ressource. Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : |
updateTime |
Uniquement en sortie. Code temporel de la mise à jour de la ressource. Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : |
labels |
Facultatif. Ensemble de tags de libellé associés à la ressource AuthorizationPolicy. Objet contenant une liste de paires |
action |
Obligatoire. Action à effectuer lorsqu'une correspondance de règle est trouvée. Les valeurs possibles sont "ALLOW" ou "DENY". |
rules[] |
Facultatif. Liste des règles à respecter. Notez qu'au moins l'une des règles doit correspondre pour que l'action spécifiée dans le champ "action" soit effectuée. Une règle correspond s'il existe une source et une destination correspondantes. Si vous ne renseignez pas ce champ, l'action spécifiée dans le champ |
Action
Valeurs possibles qui définissent l'action à effectuer.
Énumérations | |
---|---|
ACTION_UNSPECIFIED |
Valeur par défaut. |
ALLOW |
Accordez l'accès. |
DENY |
Refusez l'accès. Il convient d'éviter les règles de refus, sauf si elles sont utilisées pour fournir une solution de repli par défaut "Tout refuser". |
Règle
Spécification des règles.
Représentation JSON |
---|
{ "sources": [ { object ( |
Champs | |
---|---|
sources[] |
Facultatif. Liste des attributs de la source de trafic. Toutes les sources doivent correspondre. Une source est une correspondance si les principaux et les blocs d'adresses IP correspondent. Si elle n'est pas définie, l'action spécifiée dans le champ "action" sera appliquée à la source sans aucune vérification des règles. |
destinations[] |
Facultatif. Liste des attributs de la destination du trafic. Toutes les destinations doivent correspondre. Une destination correspond si une requête correspond à tous les hôtes, ports, méthodes et en-têtes spécifiés. Si aucune action n'est définie, celle spécifiée dans le champ "action" sera appliquée à la destination sans aucune vérification des règles. |
Source
Spécification des attributs de source de trafic.
Représentation JSON |
---|
{ "principals": [ string ], "ipBlocks": [ string ] } |
Champs | |
---|---|
principals[] |
Facultatif. Liste des identités homologues à faire correspondre pour l'autorisation. Au moins un compte principal doit correspondre. Chaque pair peut être une correspondance exacte, une correspondance de préfixe (par exemple, "namespace/*"), une correspondance de suffixe (par exemple, "*/service-account") ou une correspondance de présence "*". L'autorisation basée sur le nom principal sans validation du certificat (configurée par la ressource ServerTlsPolicy) est considérée comme non sécurisée. |
ipBlocks[] |
Facultatif. Liste des plages CIDR à faire correspondre en fonction de l'adresse IP source. Au moins un bloc d'adresses IP doit correspondre. Adresse IP unique (par exemple, "1.2.3.4") et CIDR (par exemple, "1.2.3.0/24") sont acceptées. Il est préférable d'éviter d'autoriser l'accès uniquement en fonction de l'adresse IP source. Les adresses IP des équilibreurs de charge ou des proxys doivent être considérées comme non fiables. |
Destination
Spécification des attributs de destination du trafic.
Représentation JSON |
---|
{
"hosts": [
string
],
"ports": [
integer
],
"paths": [
string
],
"methods": [
string
],
"httpHeaderMatch": {
object ( |
Champs | |
---|---|
hosts[] |
Obligatoire. Liste des noms d'hôte à mettre en correspondance. Correspond à l'en-tête ":authority" dans les requêtes HTTP. Au moins un hôte doit correspondre. Chaque hôte peut être une correspondance exacte, une correspondance de préfixe (par exemple, "mydomain.*"), une correspondance de suffixe (par exemple, "*.myorg.com") ou une correspondance de présence (tout hôte) "*". |
ports[] |
Obligatoire. Liste des ports de destination à faire correspondre. Au moins un port doit correspondre. |
paths[] |
Facultatif. Liste des chemins HTTP à faire correspondre. Les méthodes gRPC doivent être présentées sous forme de nom complet au format "/packageName.serviceName/methodName". Au moins un chemin d'accès doit correspondre. Chaque chemin peut être une correspondance exacte, une correspondance de préfixe (par exemple, "/packageName.serviceName/*"), une correspondance de suffixe (par exemple, "*/video") ou une correspondance de présence (n'importe quelle valeur) "*". |
methods[] |
Facultatif. Liste des méthodes HTTP à mettre en correspondance. Au moins une méthode doit correspondre. Ne doit pas être défini pour les services gRPC. |
httpHeaderMatch |
Facultatif. Correspond à la paire clé/valeur dans l'en-tête HTTP. Fournit une correspondance flexible basée sur les en-têtes HTTP, pour des cas d'utilisation potentiellement avancés. Au moins un en-tête doit correspondre. Évitez d'utiliser des correspondances d'en-tête pour prendre des décisions d'autorisation, sauf si vous êtes sûr que les requêtes arrivent via un client ou un proxy de confiance. |
HttpHeaderMatch
Spécification des attributs de correspondance des en-têtes HTTP.
Représentation JSON |
---|
{ "headerName": string, // Union field |
Champs | |
---|---|
headerName |
Obligatoire. Nom de l'en-tête HTTP à mettre en correspondance. Pour établir une correspondance avec l'autorité de la requête HTTP, utilisez un headerMatch avec le nom d'en-tête ":authority". Pour faire correspondre la méthode d'une requête, utilisez le headerName ":method". |
Champ d'union
|
|
regexMatch |
Obligatoire. La valeur de l'en-tête doit correspondre à l'expression régulière spécifiée dans regexMatch. Pour en savoir plus sur la grammaire des expressions régulières, consultez en.cppreference.com/w/cpp/regex/ecmascript. Pour établir une correspondance avec un port spécifié dans la requête HTTP, utilisez un headerMatch avec headerName défini sur "Host" et une expression régulière qui satisfait au spécificateur de port de l'en-tête Host RFC2616. |
Méthodes |
|
---|---|
|
Crée une ressource AuthorizationPolicy dans un projet et un emplacement donnés. |
|
Supprime une seule AuthorizationPolicy. |
|
Récupère les détails d'une seule AuthorizationPolicy. |
|
Répertorie les AuthorizationPolicies d'un projet et d'un emplacement donnés. |
|
Mettre à jour les paramètres d'une seule AuthorizationPolicy. |