/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.signer; import javax.annotation.Generated; import com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.signer.model.*; import com.amazonaws.services.signer.waiters.AWSsignerWaiters; /** * Interface for accessing signer. *
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.signer.AbstractAWSsigner} instead. *
**
* AWS Signer is a fully managed code signing service to help you ensure the trust and integrity of your code. *
** AWS Signer supports the following applications: *
** With code signing for AWS Lambda, you can sign AWS Lambda * deployment packages. Integrated support is provided for Amazon S3, Amazon CloudWatch, and AWS CloudTrail. In order to sign code, you * create a signing profile and then use Signer to sign Lambda zip files in S3. *
** With code signing for IoT, you can sign code for any IoT device that is supported by AWS. IoT code signing is * available for Amazon FreeRTOS and AWS IoT Device Management, and is integrated with AWS Certificate Manager (ACM). In order to sign code, you * import a third-party code signing certificate using ACM, and use that to sign updates in Amazon FreeRTOS and AWS IoT * Device Management. *
** With code signing for containers …(TBD) *
** For more information about AWS Signer, see the AWS Signer Developer Guide. *
*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AWSsigner { /** * The region metadata service name for computing region endpoints. You can use this value to retrieve metadata * (such as supported regions) of the service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "signer"; /** ** Adds cross-account permissions to a signing profile. *
* * @param addProfilePermissionRequest * @return Result of the AddProfilePermission operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ServiceLimitExceededException * The client is making a request that exceeds service limits. * @throws ConflictException * The resource encountered a conflicting state. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.AddProfilePermission
* @see AWS
* API Documentation
*/
AddProfilePermissionResult addProfilePermission(AddProfilePermissionRequest addProfilePermissionRequest);
/**
*
* Changes the state of an ACTIVE
signing profile to CANCELED
. A canceled profile is still
* viewable with the ListSigningProfiles
operation, but it cannot perform new signing jobs, and is
* deleted two years after cancelation.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.CancelSigningProfile
* @see AWS
* API Documentation
*/
CancelSigningProfileResult cancelSigningProfile(CancelSigningProfileRequest cancelSigningProfileRequest);
/**
*
* Returns information about a specific code signing job. You specify the job by using the jobId
value
* that is returned by the StartSigningJob operation.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.DescribeSigningJob
* @see AWS API
* Documentation
*/
DescribeSigningJobResult describeSigningJob(DescribeSigningJobRequest describeSigningJobRequest);
/**
*
* Retrieves the revocation status of one or more of the signing profile, signing job, and signing certificate. *
* * @param getRevocationStatusRequest * @return Result of the GetRevocationStatus operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.GetRevocationStatus
* @see AWS API
* Documentation
*/
GetRevocationStatusResult getRevocationStatus(GetRevocationStatusRequest getRevocationStatusRequest);
/**
*
* Returns information on a specific signing platform. *
* * @param getSigningPlatformRequest * @return Result of the GetSigningPlatform operation returned by the service. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.GetSigningPlatform
* @see AWS API
* Documentation
*/
GetSigningPlatformResult getSigningPlatform(GetSigningPlatformRequest getSigningPlatformRequest);
/**
*
* Returns information on a specific signing profile. *
* * @param getSigningProfileRequest * @return Result of the GetSigningProfile operation returned by the service. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.GetSigningProfile
* @see AWS API
* Documentation
*/
GetSigningProfileResult getSigningProfile(GetSigningProfileRequest getSigningProfileRequest);
/**
*
* Lists the cross-account permissions associated with a signing profile. *
* * @param listProfilePermissionsRequest * @return Result of the ListProfilePermissions operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.ListProfilePermissions
* @see AWS
* API Documentation
*/
ListProfilePermissionsResult listProfilePermissions(ListProfilePermissionsRequest listProfilePermissionsRequest);
/**
*
* Lists all your signing jobs. You can use the maxResults
parameter to limit the number of signing
* jobs that are returned in the response. If additional jobs remain to be listed, code signing returns a
* nextToken
value. Use this value in subsequent calls to ListSigningJobs
to fetch the
* remaining values. You can continue calling ListSigningJobs
with your maxResults
* parameter and with new values that code signing returns in the nextToken
parameter until all of your
* signing jobs have been returned.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.ListSigningJobs
* @see AWS API
* Documentation
*/
ListSigningJobsResult listSigningJobs(ListSigningJobsRequest listSigningJobsRequest);
/**
*
* Lists all signing platforms available in code signing that match the request parameters. If additional jobs
* remain to be listed, code signing returns a nextToken
value. Use this value in subsequent calls to
* ListSigningJobs
to fetch the remaining values. You can continue calling ListSigningJobs
* with your maxResults
parameter and with new values that code signing returns in the
* nextToken
parameter until all of your signing jobs have been returned.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.ListSigningPlatforms
* @see AWS
* API Documentation
*/
ListSigningPlatformsResult listSigningPlatforms(ListSigningPlatformsRequest listSigningPlatformsRequest);
/**
*
* Lists all available signing profiles in your AWS account. Returns only profiles with an ACTIVE
* status unless the includeCanceled
request field is set to true
. If additional jobs
* remain to be listed, code signing returns a nextToken
value. Use this value in subsequent calls to
* ListSigningJobs
to fetch the remaining values. You can continue calling ListSigningJobs
* with your maxResults
parameter and with new values that code signing returns in the
* nextToken
parameter until all of your signing jobs have been returned.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.ListSigningProfiles
* @see AWS API
* Documentation
*/
ListSigningProfilesResult listSigningProfiles(ListSigningProfilesRequest listSigningProfilesRequest);
/**
*
* Returns a list of the tags associated with a signing profile resource. *
* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws InternalServiceErrorException * An internal error occurred. * @throws BadRequestException * The request contains invalid parameters for the ARN or tags. This exception also occurs when you call a * tagging API on a cancelled signing profile. * @throws NotFoundException * The signing profile was not found. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @sample AWSsigner.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Creates a signing profile. A signing profile is a code signing template that can be used to carry out a * pre-defined signing job. *
* * @param putSigningProfileRequest * @return Result of the PutSigningProfile operation returned by the service. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ValidationException * You signing certificate could not be validated. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.PutSigningProfile
* @see AWS API
* Documentation
*/
PutSigningProfileResult putSigningProfile(PutSigningProfileRequest putSigningProfileRequest);
/**
*
* Removes cross-account permissions from a signing profile. *
* * @param removeProfilePermissionRequest * @return Result of the RemoveProfilePermission operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ConflictException * The resource encountered a conflicting state. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.RemoveProfilePermission
* @see AWS
* API Documentation
*/
RemoveProfilePermissionResult removeProfilePermission(RemoveProfilePermissionRequest removeProfilePermissionRequest);
/**
*
* Changes the state of a signing job to REVOKED. This indicates that the signature is no longer valid. *
* * @param revokeSignatureRequest * @return Result of the RevokeSignature operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.RevokeSignature
* @see AWS API
* Documentation
*/
RevokeSignatureResult revokeSignature(RevokeSignatureRequest revokeSignatureRequest);
/**
*
* Changes the state of a signing profile to REVOKED. This indicates that signatures generated using the signing * profile after an effective start date are no longer valid. *
* * @param revokeSigningProfileRequest * @return Result of the RevokeSigningProfile operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.RevokeSigningProfile
* @see AWS
* API Documentation
*/
RevokeSigningProfileResult revokeSigningProfile(RevokeSigningProfileRequest revokeSigningProfileRequest);
/**
*
* Signs a binary payload and returns a signature envelope. *
* * @param signPayloadRequest * @return Result of the SignPayload operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.SignPayload
* @see AWS API
* Documentation
*/
SignPayloadResult signPayload(SignPayloadRequest signPayloadRequest);
/**
*
* Initiates a signing job to be performed on the code provided. Signing jobs are viewable by the
* ListSigningJobs
operation for two years after they are performed. Note the following requirements:
*
* You must create an Amazon S3 source bucket. For more information, see Creating a Bucket in the Amazon * S3 Getting Started Guide. *
** Your S3 source bucket must be version enabled. *
** You must create an S3 destination bucket. Code signing uses your S3 destination bucket to write your signed code. *
*
* You specify the name of the source and destination buckets when calling the StartSigningJob
* operation.
*
* You must also specify a request token that identifies your request to code signing. *
*
* You can call the DescribeSigningJob and the ListSigningJobs actions after you call
* StartSigningJob
.
*
* For a Java example that shows how to use this action, see StartSigningJob. *
* * @param startSigningJobRequest * @return Result of the StartSigningJob operation returned by the service. * @throws ValidationException * You signing certificate could not be validated. * @throws ResourceNotFoundException * A specified resource could not be found. * @throws AccessDeniedException * You do not have sufficient access to perform this action. * @throws ThrottlingException * The request was denied due to request throttling. *
* Instead of this error, TooManyRequestsException
should be used.
* @throws TooManyRequestsException
* The allowed number of job-signing requests has been exceeded.
*
* This error supersedes the error ThrottlingException
.
* @throws InternalServiceErrorException
* An internal error occurred.
* @sample AWSsigner.StartSigningJob
* @see AWS API
* Documentation
*/
StartSigningJobResult startSigningJob(StartSigningJobRequest startSigningJobRequest);
/**
*
* Adds one or more tags to a signing profile. Tags are labels that you can use to identify and organize your AWS * resources. Each tag consists of a key and an optional value. To specify the signing profile, use its Amazon * Resource Name (ARN). To specify the tag, use a key-value pair. *
* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws InternalServiceErrorException * An internal error occurred. * @throws BadRequestException * The request contains invalid parameters for the ARN or tags. This exception also occurs when you call a * tagging API on a cancelled signing profile. * @throws NotFoundException * The signing profile was not found. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @sample AWSsigner.TagResource
* @see AWS API
* Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Removes one or more tags from a signing profile. To remove the tags, specify a list of tag keys. *
* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws InternalServiceErrorException * An internal error occurred. * @throws BadRequestException * The request contains invalid parameters for the ARN or tags. This exception also occurs when you call a * tagging API on a cancelled signing profile. * @throws NotFoundException * The signing profile was not found. * @throws TooManyRequestsException * The allowed number of job-signing requests has been exceeded. *
* This error supersedes the error ThrottlingException
.
* @sample AWSsigner.UntagResource
* @see AWS API
* Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); AWSsignerWaiters waiters(); }