-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Google Binary Authorization SDK.
--
-- The management interface for Binary Authorization, a system providing
-- policy control for images deployed to Kubernetes Engine clusters.
--
-- Warning: This is an experimental prototype/preview release
-- which is still under exploratory development and not intended for
-- public use, caveat emptor!
--
-- This library is compatible with version v1beta1 of the API.
@package gogol-binaryauthorization
@version 0.5.0
module Network.Google.BinaryAuthorization.Types
-- | Default request referring to version v1beta1 of the Binary
-- Authorization API. This contains the host and root path used as a
-- starting point for constructing service requests.
binaryAuthorizationService :: ServiceConfig
-- | View and manage your data across Google Cloud Platform services
cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]
-- | A public key in the PkixPublicKey format (see
-- https://tools.ietf.org/html/rfc5280#section-4.1.2.7 for details).
-- Public keys of this type are typically textually encoded using the PEM
-- format.
--
-- See: pkixPublicKey smart constructor.
data PkixPublicKey
-- | Creates a value of PkixPublicKey with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
pkixPublicKey :: PkixPublicKey
-- | A PEM-encoded public key, as described in
-- https://tools.ietf.org/html/rfc7468#section-13
ppkPublicKeyPem :: Lens' PkixPublicKey (Maybe Text)
-- | The signature algorithm used to verify a message against a signature
-- using this key. These signature algorithm must match the structure and
-- any object identifiers encoded in `public_key_pem` (i.e. this
-- algorithm must match that of the public key).
ppkSignatureAlgorithm :: Lens' PkixPublicKey (Maybe PkixPublicKeySignatureAlgorithm)
-- | Represents an expression text. Example: title: "User account presence"
-- description: "Determines whether the request has a user account"
-- expression: "size(request.user) > 0"
--
-- See: expr smart constructor.
data Expr
-- | Creates a value of Expr with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
expr :: Expr
-- | An optional string indicating the location of the expression for error
-- reporting, e.g. a file name and a position in the file.
eLocation :: Lens' Expr (Maybe Text)
-- | Textual representation of an expression in Common Expression Language
-- syntax. The application context of the containing message determines
-- which well-known feature set of CEL is supported.
eExpression :: Lens' Expr (Maybe Text)
-- | An optional title for the expression, i.e. a short string describing
-- its purpose. This can be used e.g. in UIs which allow to enter the
-- expression.
eTitle :: Lens' Expr (Maybe Text)
-- | An optional description of the expression. This is a longer text which
-- describes the expression, e.g. when hovered over it in a UI.
eDescription :: Lens' Expr (Maybe Text)
-- | An user owned drydock note references a Drydock ATTESTATION_AUTHORITY
-- Note created by the user.
--
-- See: userOwnedDrydockNote smart constructor.
data UserOwnedDrydockNote
-- | Creates a value of UserOwnedDrydockNote with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
userOwnedDrydockNote :: UserOwnedDrydockNote
-- | Output only. This field will contain the service account email address
-- that this Attestor will use as the principal when querying Container
-- Analysis. Attestor administrators must grant this service account the
-- IAM role needed to read attestations from the note_reference in
-- Container Analysis (`containeranalysis.notes.occurrences.viewer`).
-- This email address is fixed for the lifetime of the Attestor, but
-- callers should not make any other assumptions about the service
-- account email; future versions may use an email based on a different
-- naming pattern.
uodnDelegationServiceAccountEmail :: Lens' UserOwnedDrydockNote (Maybe Text)
-- | Optional. Public keys that verify attestations signed by this
-- attestor. This field may be updated. If this field is non-empty, one
-- of the specified public keys must verify that an attestation was
-- signed by this attestor for the image specified in the admission
-- request. If this field is empty, this attestor always returns that no
-- valid attestations exist.
uodnPublicKeys :: Lens' UserOwnedDrydockNote [AttestorPublicKey]
-- | Required. The Drydock resource name of a ATTESTATION_AUTHORITY Note,
-- created by the user, in the format: `projects/*/notes/*` (or the
-- legacy `providers/*/notes/*`). This field may not be updated. An
-- attestation by this attestor is stored as a Drydock
-- ATTESTATION_AUTHORITY Occurrence that names a container image and that
-- links to this Note. Drydock is an external dependency.
uodnNoteReference :: Lens' UserOwnedDrydockNote (Maybe Text)
-- | A generic empty message that you can re-use to avoid defining
-- duplicated empty messages in your APIs. A typical example is to use it
-- as the request or the response type of an API method. For instance:
-- service Foo { rpc Bar(google.protobuf.Empty) returns
-- (google.protobuf.Empty); } The JSON representation for `Empty` is
-- empty JSON object `{}`.
--
-- See: empty smart constructor.
data Empty
-- | Creates a value of Empty with the minimum fields required to
-- make a request.
empty :: Empty
-- | Required. The action when a pod creation is denied by the admission
-- rule.
data AdmissionRuleEnforcementMode
-- | ENFORCEMENT_MODE_UNSPECIFIED Do not use.
EnforcementModeUnspecified :: AdmissionRuleEnforcementMode
-- | ENFORCED_BLOCK_AND_AUDIT_LOG Enforce the admission rule by
-- blocking the pod creation.
EnforcedBlockAndAuditLog :: AdmissionRuleEnforcementMode
-- | DRYRUN_AUDIT_LOG_ONLY Dryrun mode: Audit logging only. This
-- will allow the pod creation as if the admission request had specified
-- break-glass.
DryrunAuditLogOnly :: AdmissionRuleEnforcementMode
-- | Optional. Controls the evaluation of a Google-maintained global
-- admission policy for common system-level images. Images not covered by
-- the global policy will be subject to the project admission policy.
-- This setting has no effect when specified inside a global admission
-- policy.
data PolicyGlobalPolicyEvaluationMode
-- | GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED Not specified:
-- DISABLE is assumed.
GlobalPolicyEvaluationModeUnspecified :: PolicyGlobalPolicyEvaluationMode
-- | ENABLE Enables global policy evaluation.
Enable :: PolicyGlobalPolicyEvaluationMode
-- | DISABLE Disables global policy evaluation.
Disable :: PolicyGlobalPolicyEvaluationMode
-- | Request message for `SetIamPolicy` method.
--
-- See: setIAMPolicyRequest smart constructor.
data SetIAMPolicyRequest
-- | Creates a value of SetIAMPolicyRequest with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
setIAMPolicyRequest :: SetIAMPolicyRequest
-- | REQUIRED: The complete policy to be applied to the `resource`. The
-- size of the policy is limited to a few 10s of KB. An empty policy is a
-- valid policy but certain Cloud Platform services (such as Projects)
-- might reject them.
siprPolicy :: Lens' SetIAMPolicyRequest (Maybe IAMPolicy)
-- | Response message for BinauthzManagementService.ListAttestors.
--
-- See: listAttestorsResponse smart constructor.
data ListAttestorsResponse
-- | Creates a value of ListAttestorsResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
listAttestorsResponse :: ListAttestorsResponse
-- | A token to retrieve the next page of results. Pass this value in the
-- ListAttestorsRequest.page_token field in the subsequent call to the
-- `ListAttestors` method to retrieve the next page of results.
larNextPageToken :: Lens' ListAttestorsResponse (Maybe Text)
-- | The list of attestors.
larAttestors :: Lens' ListAttestorsResponse [Attestor]
-- | An admission whitelist pattern exempts images from checks by admission
-- rules.
--
-- See: admissionWhiteListPattern smart constructor.
data AdmissionWhiteListPattern
-- | Creates a value of AdmissionWhiteListPattern with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
admissionWhiteListPattern :: AdmissionWhiteListPattern
-- | An image name pattern to whitelist, in the form
-- `registry/path/to/image`. This supports a trailing `*` as a wildcard,
-- but this is allowed only in text after the `registry/` part.
awlpNamePattern :: Lens' AdmissionWhiteListPattern (Maybe Text)
-- | The signature algorithm used to verify a message against a signature
-- using this key. These signature algorithm must match the structure and
-- any object identifiers encoded in `public_key_pem` (i.e. this
-- algorithm must match that of the public key).
data PkixPublicKeySignatureAlgorithm
-- | SIGNATURE_ALGORITHM_UNSPECIFIED Not specified.
SignatureAlgorithmUnspecified :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_2048_SHA256 RSASSA-PSS 2048 bit key with a SHA256
-- digest.
RsaPss2048SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_3072_SHA256 RSASSA-PSS 3072 bit key with a SHA256
-- digest.
RsaPss3072SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_4096_SHA256 RSASSA-PSS 4096 bit key with a SHA256
-- digest.
RsaPss4096SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_4096_SHA512 RSASSA-PSS 4096 bit key with a SHA512
-- digest.
RsaPss4096SHA512 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_2048_SHA256 RSASSA-PKCS1-v1_5 with a 2048 bit
-- key and a SHA256 digest.
RsaSignPKCS12048SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_3072_SHA256 RSASSA-PKCS1-v1_5 with a 3072 bit
-- key and a SHA256 digest.
RsaSignPKCS13072SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_4096_SHA256 RSASSA-PKCS1-v1_5 with a 4096 bit
-- key and a SHA256 digest.
RsaSignPKCS14096SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_4096_SHA512 RSASSA-PKCS1-v1_5 with a 4096 bit
-- key and a SHA512 digest.
RsaSignPKCS14096SHA512 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P256_SHA256 ECDSA on the NIST P-256 curve with a SHA256
-- digest.
EcdsaP256SHA256 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P384_SHA384 ECDSA on the NIST P-384 curve with a SHA384
-- digest.
EcdsaP384SHA384 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P521_SHA512 ECDSA on the NIST P-521 curve with a SHA512
-- digest.
EcdsaP521SHA512 :: PkixPublicKeySignatureAlgorithm
-- | An admission rule specifies either that all container images used in a
-- pod creation request must be attested to by one or more attestors,
-- that all pod creations will be allowed, or that all pod creations will
-- be denied. Images matching an admission whitelist pattern are exempted
-- from admission rules and will never block a pod creation.
--
-- See: admissionRule smart constructor.
data AdmissionRule
-- | Creates a value of AdmissionRule with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
admissionRule :: AdmissionRule
-- | Required. The action when a pod creation is denied by the admission
-- rule.
arEnforcementMode :: Lens' AdmissionRule (Maybe AdmissionRuleEnforcementMode)
-- | Required. How this admission rule will be evaluated.
arEvaluationMode :: Lens' AdmissionRule (Maybe AdmissionRuleEvaluationMode)
-- | Optional. The resource names of the attestors that must attest to a
-- container image, in the format `projects/*/attestors/*`. Each attestor
-- must exist before a policy can reference it. To add an attestor to a
-- policy the principal issuing the policy change request must be able to
-- read the attestor resource. Note: this field must be non-empty when
-- the evaluation_mode field specifies REQUIRE_ATTESTATION, otherwise it
-- must be empty.
arRequireAttestationsBy :: Lens' AdmissionRule [Text]
-- | Required. How this admission rule will be evaluated.
data AdmissionRuleEvaluationMode
-- | EVALUATION_MODE_UNSPECIFIED Do not use.
EvaluationModeUnspecified :: AdmissionRuleEvaluationMode
-- | ALWAYS_ALLOW This rule allows all all pod creations.
AlwaysAllow :: AdmissionRuleEvaluationMode
-- | REQUIRE_ATTESTATION This rule allows a pod creation if all
-- the attestors listed in 'require_attestations_by' have valid
-- attestations for all of the images in the pod spec.
RequireAttestation :: AdmissionRuleEvaluationMode
-- | ALWAYS_DENY This rule denies all pod creations.
AlwaysDeny :: AdmissionRuleEvaluationMode
-- | V1 error format.
data Xgafv
-- | 1 v1 error format
X1 :: Xgafv
-- | 2 v2 error format
X2 :: Xgafv
-- | Request message for `TestIamPermissions` method.
--
-- See: testIAMPermissionsRequest smart constructor.
data TestIAMPermissionsRequest
-- | Creates a value of TestIAMPermissionsRequest with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
testIAMPermissionsRequest :: TestIAMPermissionsRequest
-- | The set of permissions to check for the `resource`. Permissions with
-- wildcards (such as '*' or 'storage.*') are not allowed. For more
-- information see IAM Overview.
tiprPermissions :: Lens' TestIAMPermissionsRequest [Text]
-- | Defines an Identity and Access Management (IAM) policy. It is used to
-- specify access control policies for Cloud Platform resources. A
-- `Policy` consists of a list of `bindings`. A `binding` binds a list of
-- `members` to a `role`, where the members can be user accounts, Google
-- groups, Google domains, and service accounts. A `role` is a named list
-- of permissions defined by IAM. **JSON Example** { "bindings": [ {
-- "role": "roles/owner", "members": [ "user:mike'example.com",
-- "group:admins'example.com", "domain:google.com",
-- "serviceAccount:my-other-app'appspot.gserviceaccount.com" ] }, {
-- "role": "roles/viewer", "members": ["user:sean'example.com"] } ] }
-- **YAML Example** bindings: - members: - user:mike'example.com -
-- group:admins'example.com - domain:google.com -
-- serviceAccount:my-other-app'appspot.gserviceaccount.com role:
-- roles/owner - members: - user:sean'example.com role: roles/viewer For
-- a description of IAM and its features, see the IAM developer's
-- guide.
--
-- See: iamPolicy smart constructor.
data IAMPolicy
-- | Creates a value of IAMPolicy with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
iamPolicy :: IAMPolicy
-- | `etag` is used for optimistic concurrency control as a way to help
-- prevent simultaneous updates of a policy from overwriting each other.
-- It is strongly suggested that systems make use of the `etag` in the
-- read-modify-write cycle to perform policy updates in order to avoid
-- race conditions: An `etag` is returned in the response to
-- `getIamPolicy`, and systems are expected to put that etag in the
-- request to `setIamPolicy` to ensure that their change will be applied
-- to the same version of the policy. If no `etag` is provided in the
-- call to `setIamPolicy`, then the existing policy is overwritten
-- blindly.
ipEtag :: Lens' IAMPolicy (Maybe ByteString)
-- | Deprecated.
ipVersion :: Lens' IAMPolicy (Maybe Int32)
-- | Associates a list of `members` to a `role`. `bindings` with no members
-- will result in an error.
ipBindings :: Lens' IAMPolicy [Binding]
-- | An attestor public key that will be used to verify attestations signed
-- by this attestor.
--
-- See: attestorPublicKey smart constructor.
data AttestorPublicKey
-- | Creates a value of AttestorPublicKey with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
attestorPublicKey :: AttestorPublicKey
-- | A raw PKIX SubjectPublicKeyInfo format public key. NOTE: `id` may be
-- explicitly provided by the caller when using this type of public key,
-- but it MUST be a valid RFC3986 URI. If `id` is left blank, a default
-- one will be computed based on the digest of the DER encoding of the
-- public key.
apkPkixPublicKey :: Lens' AttestorPublicKey (Maybe PkixPublicKey)
-- | ASCII-armored representation of a PGP public key, as the entire output
-- by the command `gpg --export --armor foo'example.com` (either LF or
-- CRLF line endings). When using this field, `id` should be left blank.
-- The BinAuthz API handlers will calculate the ID and fill it in
-- automatically. BinAuthz computes this ID as the OpenPGP RFC4880 V4
-- fingerprint, represented as upper-case hex. If `id` is provided by the
-- caller, it will be overwritten by the API-calculated ID.
apkAsciiArmoredPgpPublicKey :: Lens' AttestorPublicKey (Maybe Text)
-- | The ID of this public key. Signatures verified by BinAuthz must
-- include the ID of the public key that can be used to verify them, and
-- that ID must match the contents of this field exactly. Additional
-- restrictions on this field can be imposed based on which public key
-- type is encapsulated. See the documentation on `public_key` cases
-- below for details.
apkId :: Lens' AttestorPublicKey (Maybe Text)
-- | Optional. A descriptive comment. This field may be updated.
apkComment :: Lens' AttestorPublicKey (Maybe Text)
-- | Response message for `TestIamPermissions` method.
--
-- See: testIAMPermissionsResponse smart constructor.
data TestIAMPermissionsResponse
-- | Creates a value of TestIAMPermissionsResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
testIAMPermissionsResponse :: TestIAMPermissionsResponse
-- | A subset of `TestPermissionsRequest.permissions` that the caller is
-- allowed.
tiamprPermissions :: Lens' TestIAMPermissionsResponse [Text]
-- | A policy for container image binary authorization.
--
-- See: policy smart constructor.
data Policy
-- | Creates a value of Policy with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
policy :: Policy
-- | Required. Default admission rule for a cluster without a per-cluster,
-- per- kubernetes-service-account, or per-istio-service-identity
-- admission rule.
pDefaultAdmissionRule :: Lens' Policy (Maybe AdmissionRule)
-- | Optional. Admission policy whitelisting. A matching admission request
-- will always be permitted. This feature is typically used to exclude
-- Google or third-party infrastructure images from Binary Authorization
-- policies.
pAdmissionWhiteListPatterns :: Lens' Policy [AdmissionWhiteListPattern]
-- | Optional. Per-cluster admission rules. Cluster spec format:
-- `location.clusterId`. There can be at most one admission rule per
-- cluster spec. A `location` is either a compute zone (e.g.
-- us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax
-- restrictions see
-- https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.
pClusterAdmissionRules :: Lens' Policy (Maybe PolicyClusterAdmissionRules)
-- | Output only. Time when the policy was last updated.
pUpdateTime :: Lens' Policy (Maybe UTCTime)
-- | Output only. The resource name, in the format `projects/*/policy`.
-- There is at most one policy per project.
pName :: Lens' Policy (Maybe Text)
-- | Optional. Controls the evaluation of a Google-maintained global
-- admission policy for common system-level images. Images not covered by
-- the global policy will be subject to the project admission policy.
-- This setting has no effect when specified inside a global admission
-- policy.
pGlobalPolicyEvaluationMode :: Lens' Policy (Maybe PolicyGlobalPolicyEvaluationMode)
-- | Optional. A descriptive comment.
pDescription :: Lens' Policy (Maybe Text)
-- | Optional. Per-cluster admission rules. Cluster spec format:
-- `location.clusterId`. There can be at most one admission rule per
-- cluster spec. A `location` is either a compute zone (e.g.
-- us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax
-- restrictions see
-- https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.
--
-- See: policyClusterAdmissionRules smart constructor.
data PolicyClusterAdmissionRules
-- | Creates a value of PolicyClusterAdmissionRules with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
policyClusterAdmissionRules :: HashMap Text AdmissionRule -> PolicyClusterAdmissionRules
pcarAddtional :: Lens' PolicyClusterAdmissionRules (HashMap Text AdmissionRule)
-- | An attestor that attests to container image artifacts. An existing
-- attestor cannot be modified except where indicated.
--
-- See: attestor smart constructor.
data Attestor
-- | Creates a value of Attestor with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
attestor :: Attestor
-- | A Drydock ATTESTATION_AUTHORITY Note, created by the user.
aUserOwnedDrydockNote :: Lens' Attestor (Maybe UserOwnedDrydockNote)
-- | Output only. Time when the attestor was last updated.
aUpdateTime :: Lens' Attestor (Maybe UTCTime)
-- | Required. The resource name, in the format: `projects/*/attestors/*`.
-- This field may not be updated.
aName :: Lens' Attestor (Maybe Text)
-- | Optional. A descriptive comment. This field may be updated. The field
-- may be displayed in chooser dialogs.
aDescription :: Lens' Attestor (Maybe Text)
-- | Associates `members` with a `role`.
--
-- See: binding smart constructor.
data Binding
-- | Creates a value of Binding with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
binding :: Binding
-- | Specifies the identities requesting access for a Cloud Platform
-- resource. `members` can have the following values: * `allUsers`: A
-- special identifier that represents anyone who is on the internet; with
-- or without a Google account. * `allAuthenticatedUsers`: A special
-- identifier that represents anyone who is authenticated with a Google
-- account or a service account. * `user:{emailid}`: An email address
-- that represents a specific Google account. For example,
-- `alice'gmail.com` . * `serviceAccount:{emailid}`: An email address
-- that represents a service account. For example,
-- `my-other-app'appspot.gserviceaccount.com`. * `group:{emailid}`: An
-- email address that represents a Google group. For example,
-- `admins'example.com`. * `domain:{domain}`: The G Suite domain
-- (primary) that represents all the users of that domain. For example,
-- `google.com` or `example.com`.
bMembers :: Lens' Binding [Text]
-- | Role that is assigned to `members`. For example, `roles/viewer`,
-- `roles/editor`, or `roles/owner`.
bRole :: Lens' Binding (Maybe Text)
-- | The condition that is associated with this binding. NOTE: An
-- unsatisfied condition will not allow user access via current binding.
-- Different bindings, including their conditions, are examined
-- independently.
bCondition :: Lens' Binding (Maybe Expr)
-- | Creates an attestor, and returns a copy of the new attestor. Returns
-- NOT_FOUND if the project does not exist, INVALID_ARGUMENT if the
-- request is malformed, ALREADY_EXISTS if the attestor already exists.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.create.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create
-- | A resource alias for
-- binaryauthorization.projects.attestors.create method which
-- the ProjectsAttestorsCreate request conforms to.
type ProjectsAttestorsCreateResource = "v1beta1" :> Capture "parent" Text :> "attestors" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "attestorId" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Attestor :> Post '[JSON] Attestor
-- | Creates a value of ProjectsAttestorsCreate with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsCreate :: Text -> Attestor -> ProjectsAttestorsCreate
-- | Creates an attestor, and returns a copy of the new attestor. Returns
-- NOT_FOUND if the project does not exist, INVALID_ARGUMENT if the
-- request is malformed, ALREADY_EXISTS if the attestor already exists.
--
-- See: projectsAttestorsCreate smart constructor.
data ProjectsAttestorsCreate
-- | Required. The parent of this attestor.
pacParent :: Lens' ProjectsAttestorsCreate Text
-- | V1 error format.
pacXgafv :: Lens' ProjectsAttestorsCreate (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pacUploadProtocol :: Lens' ProjectsAttestorsCreate (Maybe Text)
-- | OAuth access token.
pacAccessToken :: Lens' ProjectsAttestorsCreate (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pacUploadType :: Lens' ProjectsAttestorsCreate (Maybe Text)
-- | Multipart request metadata.
pacPayload :: Lens' ProjectsAttestorsCreate Attestor
-- | Required. The attestors ID.
pacAttestorId :: Lens' ProjectsAttestorsCreate (Maybe Text)
-- | JSONP
pacCallback :: Lens' ProjectsAttestorsCreate (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create.ProjectsAttestorsCreate
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create.ProjectsAttestorsCreate
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create.ProjectsAttestorsCreate
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create.ProjectsAttestorsCreate
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Create.ProjectsAttestorsCreate
-- | Deletes an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.delete.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete
-- | A resource alias for
-- binaryauthorization.projects.attestors.delete method which
-- the ProjectsAttestorsDelete request conforms to.
type ProjectsAttestorsDeleteResource = "v1beta1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
-- | Creates a value of ProjectsAttestorsDelete with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsDelete :: Text -> ProjectsAttestorsDelete
-- | Deletes an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: projectsAttestorsDelete smart constructor.
data ProjectsAttestorsDelete
-- | V1 error format.
padXgafv :: Lens' ProjectsAttestorsDelete (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
padUploadProtocol :: Lens' ProjectsAttestorsDelete (Maybe Text)
-- | OAuth access token.
padAccessToken :: Lens' ProjectsAttestorsDelete (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
padUploadType :: Lens' ProjectsAttestorsDelete (Maybe Text)
-- | Required. The name of the attestors to delete, in the format
-- `projects/*/attestors/*`.
padName :: Lens' ProjectsAttestorsDelete Text
-- | JSONP
padCallback :: Lens' ProjectsAttestorsDelete (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete.ProjectsAttestorsDelete
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete.ProjectsAttestorsDelete
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete.ProjectsAttestorsDelete
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete.ProjectsAttestorsDelete
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Delete.ProjectsAttestorsDelete
-- | Gets an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.get.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get
-- | A resource alias for
-- binaryauthorization.projects.attestors.get method which the
-- ProjectsAttestorsGet request conforms to.
type ProjectsAttestorsGetResource = "v1beta1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Attestor
-- | Creates a value of ProjectsAttestorsGet with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsGet :: Text -> ProjectsAttestorsGet
-- | Gets an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: projectsAttestorsGet smart constructor.
data ProjectsAttestorsGet
-- | V1 error format.
pagXgafv :: Lens' ProjectsAttestorsGet (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pagUploadProtocol :: Lens' ProjectsAttestorsGet (Maybe Text)
-- | OAuth access token.
pagAccessToken :: Lens' ProjectsAttestorsGet (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pagUploadType :: Lens' ProjectsAttestorsGet (Maybe Text)
-- | Required. The name of the attestor to retrieve, in the format
-- `projects/*/attestors/*`.
pagName :: Lens' ProjectsAttestorsGet Text
-- | JSONP
pagCallback :: Lens' ProjectsAttestorsGet (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get.ProjectsAttestorsGet
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get.ProjectsAttestorsGet
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get.ProjectsAttestorsGet
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get.ProjectsAttestorsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Get.ProjectsAttestorsGet
-- | Gets the access control policy for a resource. Returns an empty policy
-- if the resource exists and does not have a policy set.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.getIamPolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy
-- | A resource alias for
-- binaryauthorization.projects.attestors.getIamPolicy method
-- which the ProjectsAttestorsGetIAMPolicy request conforms to.
type ProjectsAttestorsGetIAMPolicyResource = "v1beta1" :> CaptureMode "resource" "getIamPolicy" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] IAMPolicy
-- | Creates a value of ProjectsAttestorsGetIAMPolicy with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsGetIAMPolicy :: Text -> ProjectsAttestorsGetIAMPolicy
-- | Gets the access control policy for a resource. Returns an empty policy
-- if the resource exists and does not have a policy set.
--
-- See: projectsAttestorsGetIAMPolicy smart constructor.
data ProjectsAttestorsGetIAMPolicy
-- | V1 error format.
pagipXgafv :: Lens' ProjectsAttestorsGetIAMPolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pagipUploadProtocol :: Lens' ProjectsAttestorsGetIAMPolicy (Maybe Text)
-- | OAuth access token.
pagipAccessToken :: Lens' ProjectsAttestorsGetIAMPolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pagipUploadType :: Lens' ProjectsAttestorsGetIAMPolicy (Maybe Text)
-- | REQUIRED: The resource for which the policy is being requested. See
-- the operation documentation for the appropriate value for this field.
pagipResource :: Lens' ProjectsAttestorsGetIAMPolicy Text
-- | JSONP
pagipCallback :: Lens' ProjectsAttestorsGetIAMPolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy.ProjectsAttestorsGetIAMPolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy.ProjectsAttestorsGetIAMPolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy.ProjectsAttestorsGetIAMPolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy.ProjectsAttestorsGetIAMPolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.GetIAMPolicy.ProjectsAttestorsGetIAMPolicy
-- | Lists attestors. Returns INVALID_ARGUMENT if the project does not
-- exist.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.list.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List
-- | A resource alias for
-- binaryauthorization.projects.attestors.list method which the
-- ProjectsAttestorsList request conforms to.
type ProjectsAttestorsListResource = "v1beta1" :> Capture "parent" Text :> "attestors" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListAttestorsResponse
-- | Creates a value of ProjectsAttestorsList with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsList :: Text -> ProjectsAttestorsList
-- | Lists attestors. Returns INVALID_ARGUMENT if the project does not
-- exist.
--
-- See: projectsAttestorsList smart constructor.
data ProjectsAttestorsList
-- | Required. The resource name of the project associated with the
-- attestors, in the format `projects/*`.
palParent :: Lens' ProjectsAttestorsList Text
-- | V1 error format.
palXgafv :: Lens' ProjectsAttestorsList (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
palUploadProtocol :: Lens' ProjectsAttestorsList (Maybe Text)
-- | OAuth access token.
palAccessToken :: Lens' ProjectsAttestorsList (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
palUploadType :: Lens' ProjectsAttestorsList (Maybe Text)
-- | A token identifying a page of results the server should return.
-- Typically, this is the value of ListAttestorsResponse.next_page_token
-- returned from the previous call to the `ListAttestors` method.
palPageToken :: Lens' ProjectsAttestorsList (Maybe Text)
-- | Requested page size. The server may return fewer results than
-- requested. If unspecified, the server will pick an appropriate
-- default.
palPageSize :: Lens' ProjectsAttestorsList (Maybe Int32)
-- | JSONP
palCallback :: Lens' ProjectsAttestorsList (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List.ProjectsAttestorsList
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List.ProjectsAttestorsList
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List.ProjectsAttestorsList
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List.ProjectsAttestorsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.List.ProjectsAttestorsList
-- | Sets the access control policy on the specified resource. Replaces any
-- existing policy.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.setIamPolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy
-- | A resource alias for
-- binaryauthorization.projects.attestors.setIamPolicy method
-- which the ProjectsAttestorsSetIAMPolicy request conforms to.
type ProjectsAttestorsSetIAMPolicyResource = "v1beta1" :> CaptureMode "resource" "setIamPolicy" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] SetIAMPolicyRequest :> Post '[JSON] IAMPolicy
-- | Creates a value of ProjectsAttestorsSetIAMPolicy with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsSetIAMPolicy :: SetIAMPolicyRequest -> Text -> ProjectsAttestorsSetIAMPolicy
-- | Sets the access control policy on the specified resource. Replaces any
-- existing policy.
--
-- See: projectsAttestorsSetIAMPolicy smart constructor.
data ProjectsAttestorsSetIAMPolicy
-- | V1 error format.
pasipXgafv :: Lens' ProjectsAttestorsSetIAMPolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pasipUploadProtocol :: Lens' ProjectsAttestorsSetIAMPolicy (Maybe Text)
-- | OAuth access token.
pasipAccessToken :: Lens' ProjectsAttestorsSetIAMPolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pasipUploadType :: Lens' ProjectsAttestorsSetIAMPolicy (Maybe Text)
-- | Multipart request metadata.
pasipPayload :: Lens' ProjectsAttestorsSetIAMPolicy SetIAMPolicyRequest
-- | REQUIRED: The resource for which the policy is being specified. See
-- the operation documentation for the appropriate value for this field.
pasipResource :: Lens' ProjectsAttestorsSetIAMPolicy Text
-- | JSONP
pasipCallback :: Lens' ProjectsAttestorsSetIAMPolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy.ProjectsAttestorsSetIAMPolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy.ProjectsAttestorsSetIAMPolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy.ProjectsAttestorsSetIAMPolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy.ProjectsAttestorsSetIAMPolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.SetIAMPolicy.ProjectsAttestorsSetIAMPolicy
-- | Returns permissions that a caller has on the specified resource. If
-- the resource does not exist, this will return an empty set of
-- permissions, not a NOT_FOUND error. Note: This operation is designed
-- to be used for building permission-aware UIs and command-line tools,
-- not for authorization checking. This operation may "fail open" without
-- warning.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.testIamPermissions.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions
-- | A resource alias for
-- binaryauthorization.projects.attestors.testIamPermissions
-- method which the ProjectsAttestorsTestIAMPermissions request
-- conforms to.
type ProjectsAttestorsTestIAMPermissionsResource = "v1beta1" :> CaptureMode "resource" "testIamPermissions" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] TestIAMPermissionsRequest :> Post '[JSON] TestIAMPermissionsResponse
-- | Creates a value of ProjectsAttestorsTestIAMPermissions with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsTestIAMPermissions :: TestIAMPermissionsRequest -> Text -> ProjectsAttestorsTestIAMPermissions
-- | Returns permissions that a caller has on the specified resource. If
-- the resource does not exist, this will return an empty set of
-- permissions, not a NOT_FOUND error. Note: This operation is designed
-- to be used for building permission-aware UIs and command-line tools,
-- not for authorization checking. This operation may "fail open" without
-- warning.
--
-- See: projectsAttestorsTestIAMPermissions smart
-- constructor.
data ProjectsAttestorsTestIAMPermissions
-- | V1 error format.
patipXgafv :: Lens' ProjectsAttestorsTestIAMPermissions (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
patipUploadProtocol :: Lens' ProjectsAttestorsTestIAMPermissions (Maybe Text)
-- | OAuth access token.
patipAccessToken :: Lens' ProjectsAttestorsTestIAMPermissions (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
patipUploadType :: Lens' ProjectsAttestorsTestIAMPermissions (Maybe Text)
-- | Multipart request metadata.
patipPayload :: Lens' ProjectsAttestorsTestIAMPermissions TestIAMPermissionsRequest
-- | REQUIRED: The resource for which the policy detail is being requested.
-- See the operation documentation for the appropriate value for this
-- field.
patipResource :: Lens' ProjectsAttestorsTestIAMPermissions Text
-- | JSONP
patipCallback :: Lens' ProjectsAttestorsTestIAMPermissions (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions.ProjectsAttestorsTestIAMPermissions
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions.ProjectsAttestorsTestIAMPermissions
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions.ProjectsAttestorsTestIAMPermissions
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions.ProjectsAttestorsTestIAMPermissions
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.TestIAMPermissions.ProjectsAttestorsTestIAMPermissions
-- | Updates an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.attestors.update.
module Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update
-- | A resource alias for
-- binaryauthorization.projects.attestors.update method which
-- the ProjectsAttestorsUpdate request conforms to.
type ProjectsAttestorsUpdateResource = "v1beta1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Attestor :> Put '[JSON] Attestor
-- | Creates a value of ProjectsAttestorsUpdate with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsAttestorsUpdate :: Attestor -> Text -> ProjectsAttestorsUpdate
-- | Updates an attestor. Returns NOT_FOUND if the attestor does not exist.
--
-- See: projectsAttestorsUpdate smart constructor.
data ProjectsAttestorsUpdate
-- | V1 error format.
pauXgafv :: Lens' ProjectsAttestorsUpdate (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pauUploadProtocol :: Lens' ProjectsAttestorsUpdate (Maybe Text)
-- | OAuth access token.
pauAccessToken :: Lens' ProjectsAttestorsUpdate (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pauUploadType :: Lens' ProjectsAttestorsUpdate (Maybe Text)
-- | Multipart request metadata.
pauPayload :: Lens' ProjectsAttestorsUpdate Attestor
-- | Required. The resource name, in the format: `projects/*/attestors/*`.
-- This field may not be updated.
pauName :: Lens' ProjectsAttestorsUpdate Text
-- | JSONP
pauCallback :: Lens' ProjectsAttestorsUpdate (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update.ProjectsAttestorsUpdate
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update.ProjectsAttestorsUpdate
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update.ProjectsAttestorsUpdate
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update.ProjectsAttestorsUpdate
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Attestors.Update.ProjectsAttestorsUpdate
-- | Gets the policy for this project. Returns a default policy if the
-- project does not have one.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.getPolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy
-- | A resource alias for binaryauthorization.projects.getPolicy
-- method which the ProjectsGetPolicy request conforms to.
type ProjectsGetPolicyResource = "v1beta1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Policy
-- | Creates a value of ProjectsGetPolicy with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsGetPolicy :: Text -> ProjectsGetPolicy
-- | Gets the policy for this project. Returns a default policy if the
-- project does not have one.
--
-- See: projectsGetPolicy smart constructor.
data ProjectsGetPolicy
-- | V1 error format.
pgpXgafv :: Lens' ProjectsGetPolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pgpUploadProtocol :: Lens' ProjectsGetPolicy (Maybe Text)
-- | OAuth access token.
pgpAccessToken :: Lens' ProjectsGetPolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pgpUploadType :: Lens' ProjectsGetPolicy (Maybe Text)
-- | Required. The resource name of the policy to retrieve, in the format
-- `projects/*/policy`.
pgpName :: Lens' ProjectsGetPolicy Text
-- | JSONP
pgpCallback :: Lens' ProjectsGetPolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy.ProjectsGetPolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy.ProjectsGetPolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy.ProjectsGetPolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy.ProjectsGetPolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.GetPolicy.ProjectsGetPolicy
-- | Gets the access control policy for a resource. Returns an empty policy
-- if the resource exists and does not have a policy set.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.policy.getIamPolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy
-- | A resource alias for
-- binaryauthorization.projects.policy.getIamPolicy method which
-- the ProjectsPolicyGetIAMPolicy request conforms to.
type ProjectsPolicyGetIAMPolicyResource = "v1beta1" :> CaptureMode "resource" "getIamPolicy" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] IAMPolicy
-- | Creates a value of ProjectsPolicyGetIAMPolicy with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsPolicyGetIAMPolicy :: Text -> ProjectsPolicyGetIAMPolicy
-- | Gets the access control policy for a resource. Returns an empty policy
-- if the resource exists and does not have a policy set.
--
-- See: projectsPolicyGetIAMPolicy smart constructor.
data ProjectsPolicyGetIAMPolicy
-- | V1 error format.
ppgipXgafv :: Lens' ProjectsPolicyGetIAMPolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
ppgipUploadProtocol :: Lens' ProjectsPolicyGetIAMPolicy (Maybe Text)
-- | OAuth access token.
ppgipAccessToken :: Lens' ProjectsPolicyGetIAMPolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
ppgipUploadType :: Lens' ProjectsPolicyGetIAMPolicy (Maybe Text)
-- | REQUIRED: The resource for which the policy is being requested. See
-- the operation documentation for the appropriate value for this field.
ppgipResource :: Lens' ProjectsPolicyGetIAMPolicy Text
-- | JSONP
ppgipCallback :: Lens' ProjectsPolicyGetIAMPolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy.ProjectsPolicyGetIAMPolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy.ProjectsPolicyGetIAMPolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy.ProjectsPolicyGetIAMPolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy.ProjectsPolicyGetIAMPolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Policy.GetIAMPolicy.ProjectsPolicyGetIAMPolicy
-- | Sets the access control policy on the specified resource. Replaces any
-- existing policy.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.policy.setIamPolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy
-- | A resource alias for
-- binaryauthorization.projects.policy.setIamPolicy method which
-- the ProjectsPolicySetIAMPolicy request conforms to.
type ProjectsPolicySetIAMPolicyResource = "v1beta1" :> CaptureMode "resource" "setIamPolicy" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] SetIAMPolicyRequest :> Post '[JSON] IAMPolicy
-- | Creates a value of ProjectsPolicySetIAMPolicy with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsPolicySetIAMPolicy :: SetIAMPolicyRequest -> Text -> ProjectsPolicySetIAMPolicy
-- | Sets the access control policy on the specified resource. Replaces any
-- existing policy.
--
-- See: projectsPolicySetIAMPolicy smart constructor.
data ProjectsPolicySetIAMPolicy
-- | V1 error format.
ppsipXgafv :: Lens' ProjectsPolicySetIAMPolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
ppsipUploadProtocol :: Lens' ProjectsPolicySetIAMPolicy (Maybe Text)
-- | OAuth access token.
ppsipAccessToken :: Lens' ProjectsPolicySetIAMPolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
ppsipUploadType :: Lens' ProjectsPolicySetIAMPolicy (Maybe Text)
-- | Multipart request metadata.
ppsipPayload :: Lens' ProjectsPolicySetIAMPolicy SetIAMPolicyRequest
-- | REQUIRED: The resource for which the policy is being specified. See
-- the operation documentation for the appropriate value for this field.
ppsipResource :: Lens' ProjectsPolicySetIAMPolicy Text
-- | JSONP
ppsipCallback :: Lens' ProjectsPolicySetIAMPolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy.ProjectsPolicySetIAMPolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy.ProjectsPolicySetIAMPolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy.ProjectsPolicySetIAMPolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy.ProjectsPolicySetIAMPolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Policy.SetIAMPolicy.ProjectsPolicySetIAMPolicy
-- | Returns permissions that a caller has on the specified resource. If
-- the resource does not exist, this will return an empty set of
-- permissions, not a NOT_FOUND error. Note: This operation is designed
-- to be used for building permission-aware UIs and command-line tools,
-- not for authorization checking. This operation may "fail open" without
-- warning.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.policy.testIamPermissions.
module Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions
-- | A resource alias for
-- binaryauthorization.projects.policy.testIamPermissions method
-- which the ProjectsPolicyTestIAMPermissions request conforms to.
type ProjectsPolicyTestIAMPermissionsResource = "v1beta1" :> CaptureMode "resource" "testIamPermissions" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] TestIAMPermissionsRequest :> Post '[JSON] TestIAMPermissionsResponse
-- | Creates a value of ProjectsPolicyTestIAMPermissions with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsPolicyTestIAMPermissions :: TestIAMPermissionsRequest -> Text -> ProjectsPolicyTestIAMPermissions
-- | Returns permissions that a caller has on the specified resource. If
-- the resource does not exist, this will return an empty set of
-- permissions, not a NOT_FOUND error. Note: This operation is designed
-- to be used for building permission-aware UIs and command-line tools,
-- not for authorization checking. This operation may "fail open" without
-- warning.
--
-- See: projectsPolicyTestIAMPermissions smart constructor.
data ProjectsPolicyTestIAMPermissions
-- | V1 error format.
pptipXgafv :: Lens' ProjectsPolicyTestIAMPermissions (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pptipUploadProtocol :: Lens' ProjectsPolicyTestIAMPermissions (Maybe Text)
-- | OAuth access token.
pptipAccessToken :: Lens' ProjectsPolicyTestIAMPermissions (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pptipUploadType :: Lens' ProjectsPolicyTestIAMPermissions (Maybe Text)
-- | Multipart request metadata.
pptipPayload :: Lens' ProjectsPolicyTestIAMPermissions TestIAMPermissionsRequest
-- | REQUIRED: The resource for which the policy detail is being requested.
-- See the operation documentation for the appropriate value for this
-- field.
pptipResource :: Lens' ProjectsPolicyTestIAMPermissions Text
-- | JSONP
pptipCallback :: Lens' ProjectsPolicyTestIAMPermissions (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions.ProjectsPolicyTestIAMPermissions
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions.ProjectsPolicyTestIAMPermissions
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions.ProjectsPolicyTestIAMPermissions
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions.ProjectsPolicyTestIAMPermissions
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.Policy.TestIAMPermissions.ProjectsPolicyTestIAMPermissions
-- | Creates or updates a project's policy, and returns a copy of the new
-- policy. A policy is always updated as a whole, to avoid race
-- conditions with concurrent policy enforcement (or management!)
-- requests. Returns NOT_FOUND if the project does not exist,
-- INVALID_ARGUMENT if the request is malformed.
--
-- See: Binary Authorization API Reference for
-- binaryauthorization.projects.updatePolicy.
module Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy
-- | A resource alias for
-- binaryauthorization.projects.updatePolicy method which the
-- ProjectsUpdatePolicy request conforms to.
type ProjectsUpdatePolicyResource = "v1beta1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Policy :> Put '[JSON] Policy
-- | Creates a value of ProjectsUpdatePolicy with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
projectsUpdatePolicy :: Policy -> Text -> ProjectsUpdatePolicy
-- | Creates or updates a project's policy, and returns a copy of the new
-- policy. A policy is always updated as a whole, to avoid race
-- conditions with concurrent policy enforcement (or management!)
-- requests. Returns NOT_FOUND if the project does not exist,
-- INVALID_ARGUMENT if the request is malformed.
--
-- See: projectsUpdatePolicy smart constructor.
data ProjectsUpdatePolicy
-- | V1 error format.
pupXgafv :: Lens' ProjectsUpdatePolicy (Maybe Xgafv)
-- | Upload protocol for media (e.g. "raw", "multipart").
pupUploadProtocol :: Lens' ProjectsUpdatePolicy (Maybe Text)
-- | OAuth access token.
pupAccessToken :: Lens' ProjectsUpdatePolicy (Maybe Text)
-- | Legacy upload protocol for media (e.g. "media", "multipart").
pupUploadType :: Lens' ProjectsUpdatePolicy (Maybe Text)
-- | Multipart request metadata.
pupPayload :: Lens' ProjectsUpdatePolicy Policy
-- | Output only. The resource name, in the format `projects/*/policy`.
-- There is at most one policy per project.
pupName :: Lens' ProjectsUpdatePolicy Text
-- | JSONP
pupCallback :: Lens' ProjectsUpdatePolicy (Maybe Text)
instance GHC.Generics.Generic Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy.ProjectsUpdatePolicy
instance Data.Data.Data Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy.ProjectsUpdatePolicy
instance GHC.Show.Show Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy.ProjectsUpdatePolicy
instance GHC.Classes.Eq Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy.ProjectsUpdatePolicy
instance Network.Google.Types.GoogleRequest Network.Google.Resource.BinaryAuthorization.Projects.UpdatePolicy.ProjectsUpdatePolicy
-- | The management interface for Binary Authorization, a system providing
-- policy control for images deployed to Kubernetes Engine clusters.
--
-- See: Binary Authorization API Reference
module Network.Google.BinaryAuthorization
-- | Default request referring to version v1beta1 of the Binary
-- Authorization API. This contains the host and root path used as a
-- starting point for constructing service requests.
binaryAuthorizationService :: ServiceConfig
-- | View and manage your data across Google Cloud Platform services
cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]
-- | Represents the entirety of the methods and resources available for the
-- Binary Authorization API service.
type BinaryAuthorizationAPI = ProjectsAttestorsListResource :<|> ProjectsAttestorsGetIAMPolicyResource :<|> ProjectsAttestorsGetResource :<|> ProjectsAttestorsCreateResource :<|> ProjectsAttestorsSetIAMPolicyResource :<|> ProjectsAttestorsTestIAMPermissionsResource :<|> ProjectsAttestorsDeleteResource :<|> ProjectsAttestorsUpdateResource :<|> ProjectsPolicyGetIAMPolicyResource :<|> ProjectsPolicySetIAMPolicyResource :<|> ProjectsPolicyTestIAMPermissionsResource :<|> ProjectsUpdatePolicyResource :<|> ProjectsGetPolicyResource
-- | A public key in the PkixPublicKey format (see
-- https://tools.ietf.org/html/rfc5280#section-4.1.2.7 for details).
-- Public keys of this type are typically textually encoded using the PEM
-- format.
--
-- See: pkixPublicKey smart constructor.
data PkixPublicKey
-- | Creates a value of PkixPublicKey with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
pkixPublicKey :: PkixPublicKey
-- | A PEM-encoded public key, as described in
-- https://tools.ietf.org/html/rfc7468#section-13
ppkPublicKeyPem :: Lens' PkixPublicKey (Maybe Text)
-- | The signature algorithm used to verify a message against a signature
-- using this key. These signature algorithm must match the structure and
-- any object identifiers encoded in `public_key_pem` (i.e. this
-- algorithm must match that of the public key).
ppkSignatureAlgorithm :: Lens' PkixPublicKey (Maybe PkixPublicKeySignatureAlgorithm)
-- | Represents an expression text. Example: title: "User account presence"
-- description: "Determines whether the request has a user account"
-- expression: "size(request.user) > 0"
--
-- See: expr smart constructor.
data Expr
-- | Creates a value of Expr with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
expr :: Expr
-- | An optional string indicating the location of the expression for error
-- reporting, e.g. a file name and a position in the file.
eLocation :: Lens' Expr (Maybe Text)
-- | Textual representation of an expression in Common Expression Language
-- syntax. The application context of the containing message determines
-- which well-known feature set of CEL is supported.
eExpression :: Lens' Expr (Maybe Text)
-- | An optional title for the expression, i.e. a short string describing
-- its purpose. This can be used e.g. in UIs which allow to enter the
-- expression.
eTitle :: Lens' Expr (Maybe Text)
-- | An optional description of the expression. This is a longer text which
-- describes the expression, e.g. when hovered over it in a UI.
eDescription :: Lens' Expr (Maybe Text)
-- | An user owned drydock note references a Drydock ATTESTATION_AUTHORITY
-- Note created by the user.
--
-- See: userOwnedDrydockNote smart constructor.
data UserOwnedDrydockNote
-- | Creates a value of UserOwnedDrydockNote with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
userOwnedDrydockNote :: UserOwnedDrydockNote
-- | Output only. This field will contain the service account email address
-- that this Attestor will use as the principal when querying Container
-- Analysis. Attestor administrators must grant this service account the
-- IAM role needed to read attestations from the note_reference in
-- Container Analysis (`containeranalysis.notes.occurrences.viewer`).
-- This email address is fixed for the lifetime of the Attestor, but
-- callers should not make any other assumptions about the service
-- account email; future versions may use an email based on a different
-- naming pattern.
uodnDelegationServiceAccountEmail :: Lens' UserOwnedDrydockNote (Maybe Text)
-- | Optional. Public keys that verify attestations signed by this
-- attestor. This field may be updated. If this field is non-empty, one
-- of the specified public keys must verify that an attestation was
-- signed by this attestor for the image specified in the admission
-- request. If this field is empty, this attestor always returns that no
-- valid attestations exist.
uodnPublicKeys :: Lens' UserOwnedDrydockNote [AttestorPublicKey]
-- | Required. The Drydock resource name of a ATTESTATION_AUTHORITY Note,
-- created by the user, in the format: `projects/*/notes/*` (or the
-- legacy `providers/*/notes/*`). This field may not be updated. An
-- attestation by this attestor is stored as a Drydock
-- ATTESTATION_AUTHORITY Occurrence that names a container image and that
-- links to this Note. Drydock is an external dependency.
uodnNoteReference :: Lens' UserOwnedDrydockNote (Maybe Text)
-- | A generic empty message that you can re-use to avoid defining
-- duplicated empty messages in your APIs. A typical example is to use it
-- as the request or the response type of an API method. For instance:
-- service Foo { rpc Bar(google.protobuf.Empty) returns
-- (google.protobuf.Empty); } The JSON representation for `Empty` is
-- empty JSON object `{}`.
--
-- See: empty smart constructor.
data Empty
-- | Creates a value of Empty with the minimum fields required to
-- make a request.
empty :: Empty
-- | Required. The action when a pod creation is denied by the admission
-- rule.
data AdmissionRuleEnforcementMode
-- | ENFORCEMENT_MODE_UNSPECIFIED Do not use.
EnforcementModeUnspecified :: AdmissionRuleEnforcementMode
-- | ENFORCED_BLOCK_AND_AUDIT_LOG Enforce the admission rule by
-- blocking the pod creation.
EnforcedBlockAndAuditLog :: AdmissionRuleEnforcementMode
-- | DRYRUN_AUDIT_LOG_ONLY Dryrun mode: Audit logging only. This
-- will allow the pod creation as if the admission request had specified
-- break-glass.
DryrunAuditLogOnly :: AdmissionRuleEnforcementMode
-- | Optional. Controls the evaluation of a Google-maintained global
-- admission policy for common system-level images. Images not covered by
-- the global policy will be subject to the project admission policy.
-- This setting has no effect when specified inside a global admission
-- policy.
data PolicyGlobalPolicyEvaluationMode
-- | GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED Not specified:
-- DISABLE is assumed.
GlobalPolicyEvaluationModeUnspecified :: PolicyGlobalPolicyEvaluationMode
-- | ENABLE Enables global policy evaluation.
Enable :: PolicyGlobalPolicyEvaluationMode
-- | DISABLE Disables global policy evaluation.
Disable :: PolicyGlobalPolicyEvaluationMode
-- | Request message for `SetIamPolicy` method.
--
-- See: setIAMPolicyRequest smart constructor.
data SetIAMPolicyRequest
-- | Creates a value of SetIAMPolicyRequest with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
setIAMPolicyRequest :: SetIAMPolicyRequest
-- | REQUIRED: The complete policy to be applied to the `resource`. The
-- size of the policy is limited to a few 10s of KB. An empty policy is a
-- valid policy but certain Cloud Platform services (such as Projects)
-- might reject them.
siprPolicy :: Lens' SetIAMPolicyRequest (Maybe IAMPolicy)
-- | Response message for BinauthzManagementService.ListAttestors.
--
-- See: listAttestorsResponse smart constructor.
data ListAttestorsResponse
-- | Creates a value of ListAttestorsResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
listAttestorsResponse :: ListAttestorsResponse
-- | A token to retrieve the next page of results. Pass this value in the
-- ListAttestorsRequest.page_token field in the subsequent call to the
-- `ListAttestors` method to retrieve the next page of results.
larNextPageToken :: Lens' ListAttestorsResponse (Maybe Text)
-- | The list of attestors.
larAttestors :: Lens' ListAttestorsResponse [Attestor]
-- | An admission whitelist pattern exempts images from checks by admission
-- rules.
--
-- See: admissionWhiteListPattern smart constructor.
data AdmissionWhiteListPattern
-- | Creates a value of AdmissionWhiteListPattern with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
admissionWhiteListPattern :: AdmissionWhiteListPattern
-- | An image name pattern to whitelist, in the form
-- `registry/path/to/image`. This supports a trailing `*` as a wildcard,
-- but this is allowed only in text after the `registry/` part.
awlpNamePattern :: Lens' AdmissionWhiteListPattern (Maybe Text)
-- | The signature algorithm used to verify a message against a signature
-- using this key. These signature algorithm must match the structure and
-- any object identifiers encoded in `public_key_pem` (i.e. this
-- algorithm must match that of the public key).
data PkixPublicKeySignatureAlgorithm
-- | SIGNATURE_ALGORITHM_UNSPECIFIED Not specified.
SignatureAlgorithmUnspecified :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_2048_SHA256 RSASSA-PSS 2048 bit key with a SHA256
-- digest.
RsaPss2048SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_3072_SHA256 RSASSA-PSS 3072 bit key with a SHA256
-- digest.
RsaPss3072SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_4096_SHA256 RSASSA-PSS 4096 bit key with a SHA256
-- digest.
RsaPss4096SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_PSS_4096_SHA512 RSASSA-PSS 4096 bit key with a SHA512
-- digest.
RsaPss4096SHA512 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_2048_SHA256 RSASSA-PKCS1-v1_5 with a 2048 bit
-- key and a SHA256 digest.
RsaSignPKCS12048SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_3072_SHA256 RSASSA-PKCS1-v1_5 with a 3072 bit
-- key and a SHA256 digest.
RsaSignPKCS13072SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_4096_SHA256 RSASSA-PKCS1-v1_5 with a 4096 bit
-- key and a SHA256 digest.
RsaSignPKCS14096SHA256 :: PkixPublicKeySignatureAlgorithm
-- | RSA_SIGN_PKCS1_4096_SHA512 RSASSA-PKCS1-v1_5 with a 4096 bit
-- key and a SHA512 digest.
RsaSignPKCS14096SHA512 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P256_SHA256 ECDSA on the NIST P-256 curve with a SHA256
-- digest.
EcdsaP256SHA256 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P384_SHA384 ECDSA on the NIST P-384 curve with a SHA384
-- digest.
EcdsaP384SHA384 :: PkixPublicKeySignatureAlgorithm
-- | ECDSA_P521_SHA512 ECDSA on the NIST P-521 curve with a SHA512
-- digest.
EcdsaP521SHA512 :: PkixPublicKeySignatureAlgorithm
-- | An admission rule specifies either that all container images used in a
-- pod creation request must be attested to by one or more attestors,
-- that all pod creations will be allowed, or that all pod creations will
-- be denied. Images matching an admission whitelist pattern are exempted
-- from admission rules and will never block a pod creation.
--
-- See: admissionRule smart constructor.
data AdmissionRule
-- | Creates a value of AdmissionRule with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
admissionRule :: AdmissionRule
-- | Required. The action when a pod creation is denied by the admission
-- rule.
arEnforcementMode :: Lens' AdmissionRule (Maybe AdmissionRuleEnforcementMode)
-- | Required. How this admission rule will be evaluated.
arEvaluationMode :: Lens' AdmissionRule (Maybe AdmissionRuleEvaluationMode)
-- | Optional. The resource names of the attestors that must attest to a
-- container image, in the format `projects/*/attestors/*`. Each attestor
-- must exist before a policy can reference it. To add an attestor to a
-- policy the principal issuing the policy change request must be able to
-- read the attestor resource. Note: this field must be non-empty when
-- the evaluation_mode field specifies REQUIRE_ATTESTATION, otherwise it
-- must be empty.
arRequireAttestationsBy :: Lens' AdmissionRule [Text]
-- | Required. How this admission rule will be evaluated.
data AdmissionRuleEvaluationMode
-- | EVALUATION_MODE_UNSPECIFIED Do not use.
EvaluationModeUnspecified :: AdmissionRuleEvaluationMode
-- | ALWAYS_ALLOW This rule allows all all pod creations.
AlwaysAllow :: AdmissionRuleEvaluationMode
-- | REQUIRE_ATTESTATION This rule allows a pod creation if all
-- the attestors listed in 'require_attestations_by' have valid
-- attestations for all of the images in the pod spec.
RequireAttestation :: AdmissionRuleEvaluationMode
-- | ALWAYS_DENY This rule denies all pod creations.
AlwaysDeny :: AdmissionRuleEvaluationMode
-- | V1 error format.
data Xgafv
-- | 1 v1 error format
X1 :: Xgafv
-- | 2 v2 error format
X2 :: Xgafv
-- | Request message for `TestIamPermissions` method.
--
-- See: testIAMPermissionsRequest smart constructor.
data TestIAMPermissionsRequest
-- | Creates a value of TestIAMPermissionsRequest with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
testIAMPermissionsRequest :: TestIAMPermissionsRequest
-- | The set of permissions to check for the `resource`. Permissions with
-- wildcards (such as '*' or 'storage.*') are not allowed. For more
-- information see IAM Overview.
tiprPermissions :: Lens' TestIAMPermissionsRequest [Text]
-- | Defines an Identity and Access Management (IAM) policy. It is used to
-- specify access control policies for Cloud Platform resources. A
-- `Policy` consists of a list of `bindings`. A `binding` binds a list of
-- `members` to a `role`, where the members can be user accounts, Google
-- groups, Google domains, and service accounts. A `role` is a named list
-- of permissions defined by IAM. **JSON Example** { "bindings": [ {
-- "role": "roles/owner", "members": [ "user:mike'example.com",
-- "group:admins'example.com", "domain:google.com",
-- "serviceAccount:my-other-app'appspot.gserviceaccount.com" ] }, {
-- "role": "roles/viewer", "members": ["user:sean'example.com"] } ] }
-- **YAML Example** bindings: - members: - user:mike'example.com -
-- group:admins'example.com - domain:google.com -
-- serviceAccount:my-other-app'appspot.gserviceaccount.com role:
-- roles/owner - members: - user:sean'example.com role: roles/viewer For
-- a description of IAM and its features, see the IAM developer's
-- guide.
--
-- See: iamPolicy smart constructor.
data IAMPolicy
-- | Creates a value of IAMPolicy with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
iamPolicy :: IAMPolicy
-- | `etag` is used for optimistic concurrency control as a way to help
-- prevent simultaneous updates of a policy from overwriting each other.
-- It is strongly suggested that systems make use of the `etag` in the
-- read-modify-write cycle to perform policy updates in order to avoid
-- race conditions: An `etag` is returned in the response to
-- `getIamPolicy`, and systems are expected to put that etag in the
-- request to `setIamPolicy` to ensure that their change will be applied
-- to the same version of the policy. If no `etag` is provided in the
-- call to `setIamPolicy`, then the existing policy is overwritten
-- blindly.
ipEtag :: Lens' IAMPolicy (Maybe ByteString)
-- | Deprecated.
ipVersion :: Lens' IAMPolicy (Maybe Int32)
-- | Associates a list of `members` to a `role`. `bindings` with no members
-- will result in an error.
ipBindings :: Lens' IAMPolicy [Binding]
-- | An attestor public key that will be used to verify attestations signed
-- by this attestor.
--
-- See: attestorPublicKey smart constructor.
data AttestorPublicKey
-- | Creates a value of AttestorPublicKey with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
attestorPublicKey :: AttestorPublicKey
-- | A raw PKIX SubjectPublicKeyInfo format public key. NOTE: `id` may be
-- explicitly provided by the caller when using this type of public key,
-- but it MUST be a valid RFC3986 URI. If `id` is left blank, a default
-- one will be computed based on the digest of the DER encoding of the
-- public key.
apkPkixPublicKey :: Lens' AttestorPublicKey (Maybe PkixPublicKey)
-- | ASCII-armored representation of a PGP public key, as the entire output
-- by the command `gpg --export --armor foo'example.com` (either LF or
-- CRLF line endings). When using this field, `id` should be left blank.
-- The BinAuthz API handlers will calculate the ID and fill it in
-- automatically. BinAuthz computes this ID as the OpenPGP RFC4880 V4
-- fingerprint, represented as upper-case hex. If `id` is provided by the
-- caller, it will be overwritten by the API-calculated ID.
apkAsciiArmoredPgpPublicKey :: Lens' AttestorPublicKey (Maybe Text)
-- | The ID of this public key. Signatures verified by BinAuthz must
-- include the ID of the public key that can be used to verify them, and
-- that ID must match the contents of this field exactly. Additional
-- restrictions on this field can be imposed based on which public key
-- type is encapsulated. See the documentation on `public_key` cases
-- below for details.
apkId :: Lens' AttestorPublicKey (Maybe Text)
-- | Optional. A descriptive comment. This field may be updated.
apkComment :: Lens' AttestorPublicKey (Maybe Text)
-- | Response message for `TestIamPermissions` method.
--
-- See: testIAMPermissionsResponse smart constructor.
data TestIAMPermissionsResponse
-- | Creates a value of TestIAMPermissionsResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
testIAMPermissionsResponse :: TestIAMPermissionsResponse
-- | A subset of `TestPermissionsRequest.permissions` that the caller is
-- allowed.
tiamprPermissions :: Lens' TestIAMPermissionsResponse [Text]
-- | A policy for container image binary authorization.
--
-- See: policy smart constructor.
data Policy
-- | Creates a value of Policy with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
policy :: Policy
-- | Required. Default admission rule for a cluster without a per-cluster,
-- per- kubernetes-service-account, or per-istio-service-identity
-- admission rule.
pDefaultAdmissionRule :: Lens' Policy (Maybe AdmissionRule)
-- | Optional. Admission policy whitelisting. A matching admission request
-- will always be permitted. This feature is typically used to exclude
-- Google or third-party infrastructure images from Binary Authorization
-- policies.
pAdmissionWhiteListPatterns :: Lens' Policy [AdmissionWhiteListPattern]
-- | Optional. Per-cluster admission rules. Cluster spec format:
-- `location.clusterId`. There can be at most one admission rule per
-- cluster spec. A `location` is either a compute zone (e.g.
-- us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax
-- restrictions see
-- https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.
pClusterAdmissionRules :: Lens' Policy (Maybe PolicyClusterAdmissionRules)
-- | Output only. Time when the policy was last updated.
pUpdateTime :: Lens' Policy (Maybe UTCTime)
-- | Output only. The resource name, in the format `projects/*/policy`.
-- There is at most one policy per project.
pName :: Lens' Policy (Maybe Text)
-- | Optional. Controls the evaluation of a Google-maintained global
-- admission policy for common system-level images. Images not covered by
-- the global policy will be subject to the project admission policy.
-- This setting has no effect when specified inside a global admission
-- policy.
pGlobalPolicyEvaluationMode :: Lens' Policy (Maybe PolicyGlobalPolicyEvaluationMode)
-- | Optional. A descriptive comment.
pDescription :: Lens' Policy (Maybe Text)
-- | Optional. Per-cluster admission rules. Cluster spec format:
-- `location.clusterId`. There can be at most one admission rule per
-- cluster spec. A `location` is either a compute zone (e.g.
-- us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax
-- restrictions see
-- https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.
--
-- See: policyClusterAdmissionRules smart constructor.
data PolicyClusterAdmissionRules
-- | Creates a value of PolicyClusterAdmissionRules with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
policyClusterAdmissionRules :: HashMap Text AdmissionRule -> PolicyClusterAdmissionRules
pcarAddtional :: Lens' PolicyClusterAdmissionRules (HashMap Text AdmissionRule)
-- | An attestor that attests to container image artifacts. An existing
-- attestor cannot be modified except where indicated.
--
-- See: attestor smart constructor.
data Attestor
-- | Creates a value of Attestor with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
attestor :: Attestor
-- | A Drydock ATTESTATION_AUTHORITY Note, created by the user.
aUserOwnedDrydockNote :: Lens' Attestor (Maybe UserOwnedDrydockNote)
-- | Output only. Time when the attestor was last updated.
aUpdateTime :: Lens' Attestor (Maybe UTCTime)
-- | Required. The resource name, in the format: `projects/*/attestors/*`.
-- This field may not be updated.
aName :: Lens' Attestor (Maybe Text)
-- | Optional. A descriptive comment. This field may be updated. The field
-- may be displayed in chooser dialogs.
aDescription :: Lens' Attestor (Maybe Text)
-- | Associates `members` with a `role`.
--
-- See: binding smart constructor.
data Binding
-- | Creates a value of Binding with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
binding :: Binding
-- | Specifies the identities requesting access for a Cloud Platform
-- resource. `members` can have the following values: * `allUsers`: A
-- special identifier that represents anyone who is on the internet; with
-- or without a Google account. * `allAuthenticatedUsers`: A special
-- identifier that represents anyone who is authenticated with a Google
-- account or a service account. * `user:{emailid}`: An email address
-- that represents a specific Google account. For example,
-- `alice'gmail.com` . * `serviceAccount:{emailid}`: An email address
-- that represents a service account. For example,
-- `my-other-app'appspot.gserviceaccount.com`. * `group:{emailid}`: An
-- email address that represents a Google group. For example,
-- `admins'example.com`. * `domain:{domain}`: The G Suite domain
-- (primary) that represents all the users of that domain. For example,
-- `google.com` or `example.com`.
bMembers :: Lens' Binding [Text]
-- | Role that is assigned to `members`. For example, `roles/viewer`,
-- `roles/editor`, or `roles/owner`.
bRole :: Lens' Binding (Maybe Text)
-- | The condition that is associated with this binding. NOTE: An
-- unsatisfied condition will not allow user access via current binding.
-- Different bindings, including their conditions, are examined
-- independently.
bCondition :: Lens' Binding (Maybe Expr)