-- 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.4.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"] -- | 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 Mandatory. EnforcementModeUnspecified :: AdmissionRuleEnforcementMode -- | ENFORCED_BLOCK_AND_AUDIT_LOG Enforce the admission rule by -- blocking the pod creation. EnforcedBlockAndAuditLog :: AdmissionRuleEnforcementMode -- | 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) -- | 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 Mandatory. 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 attestator 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 -- | 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). apkAsciiArmoredPgpPublicKey :: Lens' AttestorPublicKey (Maybe Text) -- | Output only. This field will be overwritten with key ID information, -- for example, an identifier extracted from a PGP public key. This field -- may not be updated. 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 -- 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. 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}`: A Google Apps domain name -- 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) -- | Unimplemented. 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 -- | 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 Mandatory. EnforcementModeUnspecified :: AdmissionRuleEnforcementMode -- | ENFORCED_BLOCK_AND_AUDIT_LOG Enforce the admission rule by -- blocking the pod creation. EnforcedBlockAndAuditLog :: AdmissionRuleEnforcementMode -- | 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) -- | 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 Mandatory. 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 attestator 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 -- | 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). apkAsciiArmoredPgpPublicKey :: Lens' AttestorPublicKey (Maybe Text) -- | Output only. This field will be overwritten with key ID information, -- for example, an identifier extracted from a PGP public key. This field -- may not be updated. 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 -- 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. 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}`: A Google Apps domain name -- 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) -- | Unimplemented. 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)