google-apis-iam_v1 0.65.0 → 0.67.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cb3b335bd379900a5d6cb68c4c6081c862820bd11ac9a5e7fc30f7664925c3a2
4
- data.tar.gz: efd55f260fa857696bcbc4bcafbfbc04094ba514f8b491a005dd3a3608687ee2
3
+ metadata.gz: d29bde2db02e0dcb614b1ea6c75269b4863aa109104c0939703c38c4fefbdf95
4
+ data.tar.gz: 2df7dc581ad837da2efe4c3d54b23944dc4a6ee53d6c39aec5942683abcc8290
5
5
  SHA512:
6
- metadata.gz: 1bd22d09c1b036410449e00e5ef1eeeb2bc3fa6ecd228666feadceb78c76bb2a072fdf604d9b1430b67ade1a65bb676b93df812346607da551c1769a449b715d
7
- data.tar.gz: 02c8346d15c935e42ef99ca8d6d89c3227e084b16ffd26f533359135108e7a8e4eb76229faf89bb756208a10257d55ff0cc466d885dfce8c5de9581faea1399e
6
+ metadata.gz: d368df505535ca4b0c774be0eeabd46a721d08ed2abdf97f4dcf6147250b5d8aa444b6f729b512981fee083425de5637501be9b5a8b442afe43c784573892f78
7
+ data.tar.gz: 856845a22d43f013a4cc856ee9dfac9e9564e9ce54ac2ce6d01f64c45f099fcb0a14ece8a5d80f6f6a367e8a3baea907e220eeed8b9f2cfec1f1d8299dfe7fb9
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release history for google-apis-iam_v1
2
2
 
3
+ ### v0.67.0 (2025-04-20)
4
+
5
+ * Regenerated from discovery document revision 20250411
6
+
7
+ ### v0.66.0 (2025-03-30)
8
+
9
+ * Regenerated from discovery document revision 20250320
10
+
3
11
  ### v0.65.0 (2025-03-23)
4
12
 
5
13
  * Regenerated from discovery document revision 20250313
@@ -51,6 +51,27 @@ module Google
51
51
  end
52
52
  end
53
53
 
54
+ # Request message for AddAttestationRule.
55
+ class AddAttestationRuleRequest
56
+ include Google::Apis::Core::Hashable
57
+
58
+ # Defines which workloads can receive an identity within a pool. When an
59
+ # AttestationRule is defined under a managed identity, matching workloads may
60
+ # receive that identity.
61
+ # Corresponds to the JSON property `attestationRule`
62
+ # @return [Google::Apis::IamV1::AttestationRule]
63
+ attr_accessor :attestation_rule
64
+
65
+ def initialize(**args)
66
+ update!(**args)
67
+ end
68
+
69
+ # Update properties of this object
70
+ def update!(**args)
71
+ @attestation_rule = args[:attestation_rule] if args.key?(:attestation_rule)
72
+ end
73
+ end
74
+
54
75
  # Audit log information specific to Cloud IAM admin APIs. This message is
55
76
  # serialized as an `Any` type in the `ServiceData` message of an `AuditLog`
56
77
  # message.
@@ -73,6 +94,28 @@ module Google
73
94
  end
74
95
  end
75
96
 
97
+ # Defines which workloads can receive an identity within a pool. When an
98
+ # AttestationRule is defined under a managed identity, matching workloads may
99
+ # receive that identity.
100
+ class AttestationRule
101
+ include Google::Apis::Core::Hashable
102
+
103
+ # Optional. A single workload operating on Google Cloud. For example: `//compute.
104
+ # googleapis.com/projects/123/uid/zones/us-central1-a/instances/12345`.
105
+ # Corresponds to the JSON property `googleCloudResource`
106
+ # @return [String]
107
+ attr_accessor :google_cloud_resource
108
+
109
+ def initialize(**args)
110
+ update!(**args)
111
+ end
112
+
113
+ # Update properties of this object
114
+ def update!(**args)
115
+ @google_cloud_resource = args[:google_cloud_resource] if args.key?(:google_cloud_resource)
116
+ end
117
+ end
118
+
76
119
  # Specifies the audit configuration for a service. The configuration determines
77
120
  # which permission types are logged, and what identities, if any, are exempted
78
121
  # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
@@ -896,6 +939,106 @@ module Google
896
939
  end
897
940
  end
898
941
 
942
+ # Represents configuration for generating mutual TLS (mTLS) certificates for the
943
+ # identities within this pool.
944
+ class InlineCertificateIssuanceConfig
945
+ include Google::Apis::Core::Hashable
946
+
947
+ # Optional. A required mapping of a cloud region to the CA pool resource located
948
+ # in that region used for certificate issuance, adhering to these constraints: *
949
+ # Key format: A supported cloud region name equivalent to the location
950
+ # identifier in the corresponding map entry's value. * Value format: A valid CA
951
+ # pool resource path format like: "projects/`project`/locations/`location`/
952
+ # caPools/`ca_pool`" * Region Matching: Workloads are ONLY issued certificates
953
+ # from CA pools within the same region. Also the CA pool region (in value) must
954
+ # match the workload's region (key).
955
+ # Corresponds to the JSON property `caPools`
956
+ # @return [Hash<String,String>]
957
+ attr_accessor :ca_pools
958
+
959
+ # Optional. Key algorithm to use when generating the key pair. This key pair
960
+ # will be used to create the certificate. If unspecified, this will default to
961
+ # ECDSA_P256.
962
+ # Corresponds to the JSON property `keyAlgorithm`
963
+ # @return [String]
964
+ attr_accessor :key_algorithm
965
+
966
+ # Optional. Lifetime of the workload certificates issued by the CA pool. Must be
967
+ # between 10 hours - 30 days. If unspecified, this will be defaulted to 24 hours.
968
+ # Corresponds to the JSON property `lifetime`
969
+ # @return [String]
970
+ attr_accessor :lifetime
971
+
972
+ # Optional. Rotation window percentage indicating when certificate rotation
973
+ # should be initiated based on remaining lifetime. Must be between 10 - 80. If
974
+ # unspecified, this will be defaulted to 50.
975
+ # Corresponds to the JSON property `rotationWindowPercentage`
976
+ # @return [Fixnum]
977
+ attr_accessor :rotation_window_percentage
978
+
979
+ def initialize(**args)
980
+ update!(**args)
981
+ end
982
+
983
+ # Update properties of this object
984
+ def update!(**args)
985
+ @ca_pools = args[:ca_pools] if args.key?(:ca_pools)
986
+ @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm)
987
+ @lifetime = args[:lifetime] if args.key?(:lifetime)
988
+ @rotation_window_percentage = args[:rotation_window_percentage] if args.key?(:rotation_window_percentage)
989
+ end
990
+ end
991
+
992
+ # Defines configuration for extending trust to additional trust domains. By
993
+ # establishing trust with another domain, the current domain will recognize and
994
+ # accept certificates issued by entities within the trusted domains. Note that a
995
+ # trust domain automatically trusts itself, eliminating the need for explicit
996
+ # configuration.
997
+ class InlineTrustConfig
998
+ include Google::Apis::Core::Hashable
999
+
1000
+ # Optional. Maps specific trust domains (e.g., "example.com") to their
1001
+ # corresponding TrustStore objects, which contain the trusted root certificates
1002
+ # for that domain. There can be a maximum of 10 trust domain entries in this map.
1003
+ # Note that a trust domain automatically trusts itself and don't need to be
1004
+ # specified here. If however, this WorkloadIdentityPool's trust domain contains
1005
+ # any trust anchors in the additional_trust_bundles map, those trust anchors
1006
+ # will be *appended to* the Trust Bundle automatically derived from your
1007
+ # InlineCertificateIssuanceConfig's ca_pools.
1008
+ # Corresponds to the JSON property `additionalTrustBundles`
1009
+ # @return [Hash<String,Google::Apis::IamV1::TrustStore>]
1010
+ attr_accessor :additional_trust_bundles
1011
+
1012
+ def initialize(**args)
1013
+ update!(**args)
1014
+ end
1015
+
1016
+ # Update properties of this object
1017
+ def update!(**args)
1018
+ @additional_trust_bundles = args[:additional_trust_bundles] if args.key?(:additional_trust_bundles)
1019
+ end
1020
+ end
1021
+
1022
+ # Intermediate CA certificates used for building the trust chain to trust anchor
1023
+ class IntermediateCa
1024
+ include Google::Apis::Core::Hashable
1025
+
1026
+ # PEM certificate of the PKI used for validation. Must only contain one ca
1027
+ # certificate.
1028
+ # Corresponds to the JSON property `pemCertificate`
1029
+ # @return [String]
1030
+ attr_accessor :pem_certificate
1031
+
1032
+ def initialize(**args)
1033
+ update!(**args)
1034
+ end
1035
+
1036
+ # Update properties of this object
1037
+ def update!(**args)
1038
+ @pem_certificate = args[:pem_certificate] if args.key?(:pem_certificate)
1039
+ end
1040
+ end
1041
+
899
1042
  # Represents a public key data along with its format.
900
1043
  class KeyData
901
1044
  include Google::Apis::Core::Hashable
@@ -1063,6 +1206,32 @@ module Google
1063
1206
  end
1064
1207
  end
1065
1208
 
1209
+ # Response message for ListAttestationRules.
1210
+ class ListAttestationRulesResponse
1211
+ include Google::Apis::Core::Hashable
1212
+
1213
+ # A list of AttestationRules.
1214
+ # Corresponds to the JSON property `attestationRules`
1215
+ # @return [Array<Google::Apis::IamV1::AttestationRule>]
1216
+ attr_accessor :attestation_rules
1217
+
1218
+ # Optional. A token, which can be sent as `page_token` to retrieve the next page.
1219
+ # If this field is omitted, there are no subsequent pages.
1220
+ # Corresponds to the JSON property `nextPageToken`
1221
+ # @return [String]
1222
+ attr_accessor :next_page_token
1223
+
1224
+ def initialize(**args)
1225
+ update!(**args)
1226
+ end
1227
+
1228
+ # Update properties of this object
1229
+ def update!(**args)
1230
+ @attestation_rules = args[:attestation_rules] if args.key?(:attestation_rules)
1231
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1232
+ end
1233
+ end
1234
+
1066
1235
  # Response message for ListOauthClientCredentials.
1067
1236
  class ListOauthClientCredentialsResponse
1068
1237
  include Google::Apis::Core::Hashable
@@ -1257,6 +1426,58 @@ module Google
1257
1426
  end
1258
1427
  end
1259
1428
 
1429
+ # Response message for ListWorkloadIdentityPoolManagedIdentities.
1430
+ class ListWorkloadIdentityPoolManagedIdentitiesResponse
1431
+ include Google::Apis::Core::Hashable
1432
+
1433
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
1434
+ # field is omitted, there are no subsequent pages.
1435
+ # Corresponds to the JSON property `nextPageToken`
1436
+ # @return [String]
1437
+ attr_accessor :next_page_token
1438
+
1439
+ # A list of managed identities.
1440
+ # Corresponds to the JSON property `workloadIdentityPoolManagedIdentities`
1441
+ # @return [Array<Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity>]
1442
+ attr_accessor :workload_identity_pool_managed_identities
1443
+
1444
+ def initialize(**args)
1445
+ update!(**args)
1446
+ end
1447
+
1448
+ # Update properties of this object
1449
+ def update!(**args)
1450
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1451
+ @workload_identity_pool_managed_identities = args[:workload_identity_pool_managed_identities] if args.key?(:workload_identity_pool_managed_identities)
1452
+ end
1453
+ end
1454
+
1455
+ # Response message for ListWorkloadIdentityPoolNamespaces.
1456
+ class ListWorkloadIdentityPoolNamespacesResponse
1457
+ include Google::Apis::Core::Hashable
1458
+
1459
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
1460
+ # field is omitted, there are no subsequent pages.
1461
+ # Corresponds to the JSON property `nextPageToken`
1462
+ # @return [String]
1463
+ attr_accessor :next_page_token
1464
+
1465
+ # A list of namespaces.
1466
+ # Corresponds to the JSON property `workloadIdentityPoolNamespaces`
1467
+ # @return [Array<Google::Apis::IamV1::WorkloadIdentityPoolNamespace>]
1468
+ attr_accessor :workload_identity_pool_namespaces
1469
+
1470
+ def initialize(**args)
1471
+ update!(**args)
1472
+ end
1473
+
1474
+ # Update properties of this object
1475
+ def update!(**args)
1476
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1477
+ @workload_identity_pool_namespaces = args[:workload_identity_pool_namespaces] if args.key?(:workload_identity_pool_namespaces)
1478
+ end
1479
+ end
1480
+
1260
1481
  # Response message for ListWorkloadIdentityPoolProviderKeys.
1261
1482
  class ListWorkloadIdentityPoolProviderKeysResponse
1262
1483
  include Google::Apis::Core::Hashable
@@ -1496,7 +1717,10 @@ module Google
1496
1717
  # @return [Array<String>]
1497
1718
  attr_accessor :allowed_audiences
1498
1719
 
1499
- # Required. The OIDC issuer URL. Must be an HTTPS endpoint.
1720
+ # Required. The OIDC issuer URL. Must be an HTTPS endpoint. Used per OpenID
1721
+ # Connect Discovery 1.0 spec to locate the provider's public keys (via `jwks_uri`
1722
+ # ) for verifying tokens like the OIDC ID token. These public key types must be '
1723
+ # EC' or 'RSA'.
1500
1724
  # Corresponds to the JSON property `issuerUri`
1501
1725
  # @return [String]
1502
1726
  attr_accessor :issuer_uri
@@ -1645,6 +1869,26 @@ module Google
1645
1869
  end
1646
1870
  end
1647
1871
 
1872
+ # The Google Cloud service that owns this namespace.
1873
+ class OwnerService
1874
+ include Google::Apis::Core::Hashable
1875
+
1876
+ # Required. The service agent principal subject, e.g. "serviceAccount:service-
1877
+ # 1234@gcp-sa-gkehub.iam.gserviceaccount.com".
1878
+ # Corresponds to the JSON property `principalSubject`
1879
+ # @return [String]
1880
+ attr_accessor :principal_subject
1881
+
1882
+ def initialize(**args)
1883
+ update!(**args)
1884
+ end
1885
+
1886
+ # Update properties of this object
1887
+ def update!(**args)
1888
+ @principal_subject = args[:principal_subject] if args.key?(:principal_subject)
1889
+ end
1890
+ end
1891
+
1648
1892
  # The service account patch request. You can patch only the `display_name` and `
1649
1893
  # description` fields. You must use the `update_mask` field to specify which of
1650
1894
  # these fields you want to patch. Only the fields specified in the request are
@@ -2080,6 +2324,27 @@ module Google
2080
2324
  end
2081
2325
  end
2082
2326
 
2327
+ # Request message for RemoveAttestationRule.
2328
+ class RemoveAttestationRuleRequest
2329
+ include Google::Apis::Core::Hashable
2330
+
2331
+ # Defines which workloads can receive an identity within a pool. When an
2332
+ # AttestationRule is defined under a managed identity, matching workloads may
2333
+ # receive that identity.
2334
+ # Corresponds to the JSON property `attestationRule`
2335
+ # @return [Google::Apis::IamV1::AttestationRule]
2336
+ attr_accessor :attestation_rule
2337
+
2338
+ def initialize(**args)
2339
+ update!(**args)
2340
+ end
2341
+
2342
+ # Update properties of this object
2343
+ def update!(**args)
2344
+ @attestation_rule = args[:attestation_rule] if args.key?(:attestation_rule)
2345
+ end
2346
+ end
2347
+
2083
2348
  # A role in the Identity and Access Management API.
2084
2349
  class Role
2085
2350
  include Google::Apis::Core::Hashable
@@ -2401,6 +2666,26 @@ module Google
2401
2666
  end
2402
2667
  end
2403
2668
 
2669
+ # Request message for SetAttestationRules.
2670
+ class SetAttestationRulesRequest
2671
+ include Google::Apis::Core::Hashable
2672
+
2673
+ # Required. The attestation rules to be set. At most 50 attestation rules can be
2674
+ # set.
2675
+ # Corresponds to the JSON property `attestationRules`
2676
+ # @return [Array<Google::Apis::IamV1::AttestationRule>]
2677
+ attr_accessor :attestation_rules
2678
+
2679
+ def initialize(**args)
2680
+ update!(**args)
2681
+ end
2682
+
2683
+ # Update properties of this object
2684
+ def update!(**args)
2685
+ @attestation_rules = args[:attestation_rules] if args.key?(:attestation_rules)
2686
+ end
2687
+ end
2688
+
2404
2689
  # Request message for `SetIamPolicy` method.
2405
2690
  class SetIamPolicyRequest
2406
2691
  include Google::Apis::Core::Hashable
@@ -2639,6 +2924,56 @@ module Google
2639
2924
  end
2640
2925
  end
2641
2926
 
2927
+ # Represents a root of trust.
2928
+ class TrustAnchor
2929
+ include Google::Apis::Core::Hashable
2930
+
2931
+ # PEM certificate of the PKI used for validation. Must only contain one ca
2932
+ # certificate(either root or intermediate cert).
2933
+ # Corresponds to the JSON property `pemCertificate`
2934
+ # @return [String]
2935
+ attr_accessor :pem_certificate
2936
+
2937
+ def initialize(**args)
2938
+ update!(**args)
2939
+ end
2940
+
2941
+ # Update properties of this object
2942
+ def update!(**args)
2943
+ @pem_certificate = args[:pem_certificate] if args.key?(:pem_certificate)
2944
+ end
2945
+ end
2946
+
2947
+ # Trust store that contains trust anchors and optional intermediate CAs used in
2948
+ # PKI to build trust chain and verify client's identity.
2949
+ class TrustStore
2950
+ include Google::Apis::Core::Hashable
2951
+
2952
+ # Optional. Set of intermediate CA certificates used for building the trust
2953
+ # chain to trust anchor. IMPORTANT: * Intermediate CAs are only supported when
2954
+ # configuring x509 federation.
2955
+ # Corresponds to the JSON property `intermediateCas`
2956
+ # @return [Array<Google::Apis::IamV1::IntermediateCa>]
2957
+ attr_accessor :intermediate_cas
2958
+
2959
+ # Required. List of Trust Anchors to be used while performing validation against
2960
+ # a given TrustStore. The incoming end entity's certificate must be chained up
2961
+ # to one of the trust anchors here.
2962
+ # Corresponds to the JSON property `trustAnchors`
2963
+ # @return [Array<Google::Apis::IamV1::TrustAnchor>]
2964
+ attr_accessor :trust_anchors
2965
+
2966
+ def initialize(**args)
2967
+ update!(**args)
2968
+ end
2969
+
2970
+ # Update properties of this object
2971
+ def update!(**args)
2972
+ @intermediate_cas = args[:intermediate_cas] if args.key?(:intermediate_cas)
2973
+ @trust_anchors = args[:trust_anchors] if args.key?(:trust_anchors)
2974
+ end
2975
+ end
2976
+
2642
2977
  # Request message for UndeleteOauthClient.
2643
2978
  class UndeleteOauthClientRequest
2644
2979
  include Google::Apis::Core::Hashable
@@ -2762,6 +3097,32 @@ module Google
2762
3097
  end
2763
3098
  end
2764
3099
 
3100
+ # Request message for UndeleteWorkloadIdentityPoolManagedIdentity.
3101
+ class UndeleteWorkloadIdentityPoolManagedIdentityRequest
3102
+ include Google::Apis::Core::Hashable
3103
+
3104
+ def initialize(**args)
3105
+ update!(**args)
3106
+ end
3107
+
3108
+ # Update properties of this object
3109
+ def update!(**args)
3110
+ end
3111
+ end
3112
+
3113
+ # Request message for UndeleteWorkloadIdentityPoolNamespace.
3114
+ class UndeleteWorkloadIdentityPoolNamespaceRequest
3115
+ include Google::Apis::Core::Hashable
3116
+
3117
+ def initialize(**args)
3118
+ update!(**args)
3119
+ end
3120
+
3121
+ # Update properties of this object
3122
+ def update!(**args)
3123
+ end
3124
+ end
3125
+
2765
3126
  # Request message for UndeleteWorkloadIdentityPoolProviderKey.
2766
3127
  class UndeleteWorkloadIdentityPoolProviderKeyRequest
2767
3128
  include Google::Apis::Core::Hashable
@@ -3123,6 +3484,26 @@ module Google
3123
3484
  # @return [String]
3124
3485
  attr_accessor :expire_time
3125
3486
 
3487
+ # Represents configuration for generating mutual TLS (mTLS) certificates for the
3488
+ # identities within this pool.
3489
+ # Corresponds to the JSON property `inlineCertificateIssuanceConfig`
3490
+ # @return [Google::Apis::IamV1::InlineCertificateIssuanceConfig]
3491
+ attr_accessor :inline_certificate_issuance_config
3492
+
3493
+ # Defines configuration for extending trust to additional trust domains. By
3494
+ # establishing trust with another domain, the current domain will recognize and
3495
+ # accept certificates issued by entities within the trusted domains. Note that a
3496
+ # trust domain automatically trusts itself, eliminating the need for explicit
3497
+ # configuration.
3498
+ # Corresponds to the JSON property `inlineTrustConfig`
3499
+ # @return [Google::Apis::IamV1::InlineTrustConfig]
3500
+ attr_accessor :inline_trust_config
3501
+
3502
+ # Immutable. The mode the pool is operating in.
3503
+ # Corresponds to the JSON property `mode`
3504
+ # @return [String]
3505
+ attr_accessor :mode
3506
+
3126
3507
  # Output only. The resource name of the pool.
3127
3508
  # Corresponds to the JSON property `name`
3128
3509
  # @return [String]
@@ -3143,11 +3524,115 @@ module Google
3143
3524
  @disabled = args[:disabled] if args.key?(:disabled)
3144
3525
  @display_name = args[:display_name] if args.key?(:display_name)
3145
3526
  @expire_time = args[:expire_time] if args.key?(:expire_time)
3527
+ @inline_certificate_issuance_config = args[:inline_certificate_issuance_config] if args.key?(:inline_certificate_issuance_config)
3528
+ @inline_trust_config = args[:inline_trust_config] if args.key?(:inline_trust_config)
3529
+ @mode = args[:mode] if args.key?(:mode)
3530
+ @name = args[:name] if args.key?(:name)
3531
+ @state = args[:state] if args.key?(:state)
3532
+ end
3533
+ end
3534
+
3535
+ # Represents a managed identity for a workload identity pool namespace.
3536
+ class WorkloadIdentityPoolManagedIdentity
3537
+ include Google::Apis::Core::Hashable
3538
+
3539
+ # A description of the managed identity. Cannot exceed 256 characters.
3540
+ # Corresponds to the JSON property `description`
3541
+ # @return [String]
3542
+ attr_accessor :description
3543
+
3544
+ # Whether the managed identity is disabled. If disabled, credentials may no
3545
+ # longer be issued for the identity, however existing credentials will still be
3546
+ # accepted until they expire.
3547
+ # Corresponds to the JSON property `disabled`
3548
+ # @return [Boolean]
3549
+ attr_accessor :disabled
3550
+ alias_method :disabled?, :disabled
3551
+
3552
+ # Output only. Time after which the managed identity will be permanently purged
3553
+ # and cannot be recovered.
3554
+ # Corresponds to the JSON property `expireTime`
3555
+ # @return [String]
3556
+ attr_accessor :expire_time
3557
+
3558
+ # Output only. The resource name of the managed identity.
3559
+ # Corresponds to the JSON property `name`
3560
+ # @return [String]
3561
+ attr_accessor :name
3562
+
3563
+ # Output only. The state of the managed identity.
3564
+ # Corresponds to the JSON property `state`
3565
+ # @return [String]
3566
+ attr_accessor :state
3567
+
3568
+ def initialize(**args)
3569
+ update!(**args)
3570
+ end
3571
+
3572
+ # Update properties of this object
3573
+ def update!(**args)
3574
+ @description = args[:description] if args.key?(:description)
3575
+ @disabled = args[:disabled] if args.key?(:disabled)
3576
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
3146
3577
  @name = args[:name] if args.key?(:name)
3147
3578
  @state = args[:state] if args.key?(:state)
3148
3579
  end
3149
3580
  end
3150
3581
 
3582
+ # Represents a namespace for a workload identity pool. Namespaces are used to
3583
+ # segment identities within the pool.
3584
+ class WorkloadIdentityPoolNamespace
3585
+ include Google::Apis::Core::Hashable
3586
+
3587
+ # A description of the namespace. Cannot exceed 256 characters.
3588
+ # Corresponds to the JSON property `description`
3589
+ # @return [String]
3590
+ attr_accessor :description
3591
+
3592
+ # Whether the namespace is disabled. If disabled, credentials may no longer be
3593
+ # issued for identities within this namespace, however existing credentials will
3594
+ # still be accepted until they expire.
3595
+ # Corresponds to the JSON property `disabled`
3596
+ # @return [Boolean]
3597
+ attr_accessor :disabled
3598
+ alias_method :disabled?, :disabled
3599
+
3600
+ # Output only. Time after which the namespace will be permanently purged and
3601
+ # cannot be recovered.
3602
+ # Corresponds to the JSON property `expireTime`
3603
+ # @return [String]
3604
+ attr_accessor :expire_time
3605
+
3606
+ # Output only. The resource name of the namespace.
3607
+ # Corresponds to the JSON property `name`
3608
+ # @return [String]
3609
+ attr_accessor :name
3610
+
3611
+ # The Google Cloud service that owns this namespace.
3612
+ # Corresponds to the JSON property `ownerService`
3613
+ # @return [Google::Apis::IamV1::OwnerService]
3614
+ attr_accessor :owner_service
3615
+
3616
+ # Output only. The state of the namespace.
3617
+ # Corresponds to the JSON property `state`
3618
+ # @return [String]
3619
+ attr_accessor :state
3620
+
3621
+ def initialize(**args)
3622
+ update!(**args)
3623
+ end
3624
+
3625
+ # Update properties of this object
3626
+ def update!(**args)
3627
+ @description = args[:description] if args.key?(:description)
3628
+ @disabled = args[:disabled] if args.key?(:disabled)
3629
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
3630
+ @name = args[:name] if args.key?(:name)
3631
+ @owner_service = args[:owner_service] if args.key?(:owner_service)
3632
+ @state = args[:state] if args.key?(:state)
3633
+ end
3634
+ end
3635
+
3151
3636
  # Metadata for long-running WorkloadIdentityPool operations.
3152
3637
  class WorkloadIdentityPoolOperationMetadata
3153
3638
  include Google::Apis::Core::Hashable
@@ -3272,6 +3757,12 @@ module Google
3272
3757
  # @return [String]
3273
3758
  attr_accessor :state
3274
3759
 
3760
+ # An X.509-type identity provider represents a CA. It is trusted to assert a
3761
+ # client identity if the client has a certificate that chains up to this CA.
3762
+ # Corresponds to the JSON property `x509`
3763
+ # @return [Google::Apis::IamV1::X509]
3764
+ attr_accessor :x509
3765
+
3275
3766
  def initialize(**args)
3276
3767
  update!(**args)
3277
3768
  end
@@ -3289,6 +3780,7 @@ module Google
3289
3780
  @oidc = args[:oidc] if args.key?(:oidc)
3290
3781
  @saml = args[:saml] if args.key?(:saml)
3291
3782
  @state = args[:state] if args.key?(:state)
3783
+ @x509 = args[:x509] if args.key?(:x509)
3292
3784
  end
3293
3785
  end
3294
3786
 
@@ -3339,6 +3831,27 @@ module Google
3339
3831
  @use = args[:use] if args.key?(:use)
3340
3832
  end
3341
3833
  end
3834
+
3835
+ # An X.509-type identity provider represents a CA. It is trusted to assert a
3836
+ # client identity if the client has a certificate that chains up to this CA.
3837
+ class X509
3838
+ include Google::Apis::Core::Hashable
3839
+
3840
+ # Trust store that contains trust anchors and optional intermediate CAs used in
3841
+ # PKI to build trust chain and verify client's identity.
3842
+ # Corresponds to the JSON property `trustStore`
3843
+ # @return [Google::Apis::IamV1::TrustStore]
3844
+ attr_accessor :trust_store
3845
+
3846
+ def initialize(**args)
3847
+ update!(**args)
3848
+ end
3849
+
3850
+ # Update properties of this object
3851
+ def update!(**args)
3852
+ @trust_store = args[:trust_store] if args.key?(:trust_store)
3853
+ end
3854
+ end
3342
3855
  end
3343
3856
  end
3344
3857
  end
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module IamV1
18
18
  # Version of the google-apis-iam_v1 gem
19
- GEM_VERSION = "0.65.0"
19
+ GEM_VERSION = "0.67.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.16.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20250313"
25
+ REVISION = "20250411"
26
26
  end
27
27
  end
28
28
  end