com.amazonaws.services.signer.AWSsigner Maven / Gradle / Ivy
Show all versions of aws-java-sdk-signer Show documentation
/*
* Copyright 2019-2024 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.
*
*
* 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
* Project, you can sign container images stored in a container registry such as Amazon Elastic Container Registry
* (ECR). The signatures are stored in the registry alongside the images, where they are available for verifying image
* authenticity and integrity.
*
*
* For more information about 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.
*
*
* @param cancelSigningProfileRequest
* @return Result of the CancelSigningProfile 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.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.
*
*
* @param describeSigningJobRequest
* @return Result of the DescribeSigningJob 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.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, AWS Signer 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 Signer returns in the nextToken
parameter until all of your
* signing jobs have been returned.
*
*
* @param listSigningJobsRequest
* @return Result of the ListSigningJobs 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.ListSigningJobs
* @see AWS API
* Documentation
*/
ListSigningJobsResult listSigningJobs(ListSigningJobsRequest listSigningJobsRequest);
/**
*
* Lists all signing platforms available in AWS Signer that match the request parameters. If additional jobs remain
* to be listed, Signer 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 Signer returns in the nextToken
* parameter until all of your signing jobs have been returned.
*
*
* @param listSigningPlatformsRequest
* @return Result of the ListSigningPlatforms 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.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, AWS Signer 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 Signer returns in the nextToken
* parameter until all of your signing jobs have been returned.
*
*
* @param listSigningProfilesRequest
* @return Result of the ListSigningProfiles operation returned by the service.
* @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.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. AWS Signer 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 ensure the S3 buckets are from the same Region as the signing profile. Cross-Region signing isn't
* supported.
*
*
* -
*
* You must also specify a request token that identifies your request to Signer.
*
*
*
*
* 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();
}