Documentation
¶
Index ¶
- Variables
- func AbortMultipartUpload_if_match_initiated_time(s *S3Conf) error
- func AbortMultipartUpload_incorrect_object_key(s *S3Conf) error
- func AbortMultipartUpload_incorrect_uploadId(s *S3Conf) error
- func AbortMultipartUpload_non_existing_bucket(s *S3Conf) error
- func AbortMultipartUpload_success(s *S3Conf) error
- func AbortMultipartUpload_success_status_code(s *S3Conf) error
- func AbortMultipartUpload_upload_id_path_traversal(s *S3Conf) error
- func AccessControl_CopyObject_with_legal_hold_policy(s *S3Conf) error
- func AccessControl_CopyObject_with_retention_policy(s *S3Conf) error
- func AccessControl_CopyObject_with_tagging_policy(s *S3Conf) error
- func AccessControl_CreateMultipartUpload_with_legal_hold_policy(s *S3Conf) error
- func AccessControl_CreateMultipartUpload_with_retention_policy(s *S3Conf) error
- func AccessControl_CreateMultipartUpload_with_tagging_policy(s *S3Conf) error
- func AccessControl_PutObject_with_legal_hold_policy(s *S3Conf) error
- func AccessControl_PutObject_with_retention_policy(s *S3Conf) error
- func AccessControl_PutObject_with_tagging_policy(s *S3Conf) error
- func AccessControl_acl_grant_excludes_bucket_configuration(s *S3Conf) error
- func AccessControl_acl_grant_with_bucket_policy(s *S3Conf) error
- func AccessControl_bucket_ownership_to_user(s *S3Conf) error
- func AccessControl_bucket_policy_condition_binary_operator(s *S3Conf) error
- func AccessControl_bucket_policy_condition_bool_operator(s *S3Conf) error
- func AccessControl_bucket_policy_condition_date_operators(s *S3Conf) error
- func AccessControl_bucket_policy_condition_explicit_deny_overrides_allow(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_match_delete_object(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_match_value(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_match_versioned_delete(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_none_match_copy(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_none_match_required(s *S3Conf) error
- func AccessControl_bucket_policy_condition_if_none_match_value(s *S3Conf) error
- func AccessControl_bucket_policy_condition_ip_allow(s *S3Conf) error
- func AccessControl_bucket_policy_condition_ip_deny_no_match(s *S3Conf) error
- func AccessControl_bucket_policy_condition_not_ip_address_allow(s *S3Conf) error
- func AccessControl_bucket_policy_condition_not_ip_address_deny(s *S3Conf) error
- func AccessControl_bucket_policy_condition_null_operator(s *S3Conf) error
- func AccessControl_bucket_policy_condition_numeric_operators(s *S3Conf) error
- func AccessControl_bucket_policy_condition_s3_prefix(s *S3Conf) error
- func AccessControl_bucket_policy_condition_string_operators(s *S3Conf) error
- func AccessControl_bucket_resource_all_action(s *S3Conf) error
- func AccessControl_bucket_resource_single_action(s *S3Conf) error
- func AccessControl_copy_object_with_starting_slash_for_user(s *S3Conf) error
- func AccessControl_default_ACL_admin_successful_access(s *S3Conf) error
- func AccessControl_default_ACL_user_access_denied(s *S3Conf) error
- func AccessControl_default_ACL_userplus_access_denied(s *S3Conf) error
- func AccessControl_multi_statement_policy(s *S3Conf) error
- func AccessControl_owner_deny_only_policy_keeps_access(s *S3Conf) error
- func AccessControl_owner_policy_lockout_protection(s *S3Conf) error
- func AccessControl_policy_normalizes_object_key_for_get_put_delete(s *S3Conf) error
- func AccessControl_root_PutBucketAcl(s *S3Conf) error
- func AccessControl_single_object_resource_actions(s *S3Conf) error
- func AccessControl_user_PutBucketAcl_with_policy_access(s *S3Conf) error
- func Authentication_credentials_future_date(s *S3Conf) error
- func Authentication_credentials_incorrect_region(s *S3Conf) error
- func Authentication_credentials_incorrect_region_head(s *S3Conf) error
- func Authentication_credentials_incorrect_service(s *S3Conf) error
- func Authentication_credentials_invalid_date(s *S3Conf) error
- func Authentication_credentials_invalid_terminal(s *S3Conf) error
- func Authentication_credentials_non_existing_access_key(s *S3Conf) error
- func Authentication_credentials_past_date(s *S3Conf) error
- func Authentication_date_mismatch(s *S3Conf) error
- func Authentication_incorrect_payload_hash(s *S3Conf) error
- func Authentication_invalid_auth_header(s *S3Conf) error
- func Authentication_invalid_date_header(s *S3Conf) error
- func Authentication_invalid_sha256_payload_hash(s *S3Conf) error
- func Authentication_malformed_component(s *S3Conf) error
- func Authentication_malformed_credential(s *S3Conf) error
- func Authentication_missing_components(s *S3Conf) error
- func Authentication_missing_credentials(s *S3Conf) error
- func Authentication_missing_date_header(s *S3Conf) error
- func Authentication_missing_signature(s *S3Conf) error
- func Authentication_missing_signedheaders(s *S3Conf) error
- func Authentication_signature_error_incorrect_secret_key(s *S3Conf) error
- func Authentication_sigv2_not_supported(s *S3Conf) error
- func Authentication_unsigned_non_required_header(s *S3Conf) error
- func Authentication_unsigned_required_header(s *S3Conf) error
- func Authentication_unsupported_signature_version(s *S3Conf) error
- func Authentication_with_expect_header(s *S3Conf) error
- func CORSMiddleware_access_forbidden(s *S3Conf) error
- func CORSMiddleware_access_granted(s *S3Conf) error
- func CORSMiddleware_invalid_headers(s *S3Conf) error
- func CORSMiddleware_invalid_method(s *S3Conf) error
- func CompleteMultipartUpload_aborted_upload_existing_key(s *S3Conf) error
- func CompleteMultipartUpload_already_completed(s *S3Conf) error
- func CompleteMultipartUpload_already_completed_different_parts(s *S3Conf) error
- func CompleteMultipartUpload_already_completed_overwritten(s *S3Conf) error
- func CompleteMultipartUpload_checksum_type_mismatch(s *S3Conf) error
- func CompleteMultipartUpload_conditional_writes(s *S3Conf) error
- func CompleteMultipartUpload_data_integrity_etag(s *S3Conf) error
- func CompleteMultipartUpload_default_content_type(s *S3Conf) error
- func CompleteMultipartUpload_different_checksum_part(s *S3Conf) error
- func CompleteMultipartUpload_empty_parts(s *S3Conf) error
- func CompleteMultipartUpload_incorrect_checksum_part(s *S3Conf) error
- func CompleteMultipartUpload_incorrect_final_checksums(s *S3Conf) error
- func CompleteMultipartUpload_incorrect_part_number(s *S3Conf) error
- func CompleteMultipartUpload_incorrect_parts_order(s *S3Conf) error
- func CompleteMultipartUpload_invalid_ETag(s *S3Conf) error
- func CompleteMultipartUpload_invalid_ETag_error_fields(s *S3Conf) error
- func CompleteMultipartUpload_invalid_checksum_part(s *S3Conf) error
- func CompleteMultipartUpload_invalid_checksum_type(s *S3Conf) error
- func CompleteMultipartUpload_invalid_final_checksums(s *S3Conf) error
- func CompleteMultipartUpload_invalid_final_composite_checksum(s *S3Conf) error
- func CompleteMultipartUpload_invalid_part_number(s *S3Conf) error
- func CompleteMultipartUpload_missing_part_checksum(s *S3Conf) error
- func CompleteMultipartUpload_missing_part_fields(s *S3Conf) error
- func CompleteMultipartUpload_mpu_object_size(s *S3Conf) error
- func CompleteMultipartUpload_multiple_checksum_part(s *S3Conf) error
- func CompleteMultipartUpload_multiple_final_checksums(s *S3Conf) error
- func CompleteMultipartUpload_non_existing_upload_existing_key(s *S3Conf) error
- func CompleteMultipartUpload_overwrite_dir_obj(s *S3Conf) error
- func CompleteMultipartUpload_overwrite_dir_obj_delete_marker(s *S3Conf) error
- func CompleteMultipartUpload_overwrite_resets_attributes(s *S3Conf) error
- func CompleteMultipartUpload_racey_data_integrity(s *S3Conf) error
- func CompleteMultipartUpload_racey_success(s *S3Conf) error
- func CompleteMultipartUpload_should_calculate_the_final_checksum_full_object(s *S3Conf) error
- func CompleteMultipartUpload_should_ignore_the_final_checksum(s *S3Conf) error
- func CompleteMultipartUpload_should_succeed_without_final_checksum_type(s *S3Conf) error
- func CompleteMultipartUpload_should_verify_final_composite_checksum(s *S3Conf) error
- func CompleteMultipartUpload_should_verify_the_final_checksum(s *S3Conf) error
- func CompleteMultipartUpload_small_upload_size(s *S3Conf) error
- func CompleteMultipartUpload_sse_c_not_implemented(s *S3Conf) error
- func CompleteMultipartUpload_success(s *S3Conf) error
- func CompleteMultipartUpload_upload_id_path_traversal(s *S3Conf) error
- func CompleteMultipartUpload_upload_of_another_bucket(s *S3Conf) error
- func CompleteMultipartUpload_upload_of_another_key(s *S3Conf) error
- func CompleteMultipartUpload_with_metadata(s *S3Conf) error
- func CompletedMultipartUpload_non_existing_bucket(s *S3Conf) error
- func CopyObject_conditional_reads(s *S3Conf) error
- func CopyObject_conditional_writes(s *S3Conf) error
- func CopyObject_conditional_writes_precedence(s *S3Conf) error
- func CopyObject_copy_source_starting_with_slash(s *S3Conf) error
- func CopyObject_copy_to_itself(s *S3Conf) error
- func CopyObject_copy_to_itself_invalid_directive(s *S3Conf) error
- func CopyObject_create_checksum_on_copy(s *S3Conf) error
- func CopyObject_cross_bucket_server_side_copy(s *S3Conf) error
- func CopyObject_default_content_type_with_replace_metadata(s *S3Conf) error
- func CopyObject_incorrect_source_bucket_expected_owner(s *S3Conf) error
- func CopyObject_invalid_checksum_algorithm(s *S3Conf) error
- func CopyObject_invalid_copy_source(s *S3Conf) error
- func CopyObject_invalid_legal_hold(s *S3Conf) error
- func CopyObject_invalid_object_lock_mode(s *S3Conf) error
- func CopyObject_invalid_tagging_directive(s *S3Conf) error
- func CopyObject_invalid_website_redirect_location(s *S3Conf) error
- func CopyObject_long_metadata(s *S3Conf) error
- func CopyObject_missing_bucket_lock(s *S3Conf) error
- func CopyObject_non_existing_dir_object(s *S3Conf) error
- func CopyObject_non_existing_dst_bucket(s *S3Conf) error
- func CopyObject_not_owned_source_bucket(s *S3Conf) error
- func CopyObject_object_acl_not_supported(s *S3Conf) error
- func CopyObject_overwrite_resets_attributes(s *S3Conf) error
- func CopyObject_overwrite_same_dir_object(s *S3Conf) error
- func CopyObject_overwrite_same_file_object(s *S3Conf) error
- func CopyObject_should_copy_meta_props(s *S3Conf) error
- func CopyObject_should_copy_tagging(s *S3Conf) error
- func CopyObject_should_copy_the_existing_checksum(s *S3Conf) error
- func CopyObject_should_not_copy_website_redirect_without_user_metadata(s *S3Conf) error
- func CopyObject_should_replace_meta_props(s *S3Conf) error
- func CopyObject_should_replace_tagging(s *S3Conf) error
- func CopyObject_should_replace_the_existing_checksum(s *S3Conf) error
- func CopyObject_sse_c_invalid_copy_source_headers(s *S3Conf) error
- func CopyObject_sse_c_not_implemented(s *S3Conf) error
- func CopyObject_success(s *S3Conf) error
- func CopyObject_to_itself_by_replacing_the_checksum(s *S3Conf) error
- func CopyObject_to_itself_with_new_metadata(s *S3Conf) error
- func CopyObject_with_legal_hold(s *S3Conf) error
- func CopyObject_with_metadata(s *S3Conf) error
- func CopyObject_with_retention_lock(s *S3Conf) error
- func CopyObject_with_special_characters(s *S3Conf) error
- func CreateBucket_as_user(s *S3Conf) error
- func CreateBucket_default_acl(s *S3Conf) error
- func CreateBucket_default_object_lock(s *S3Conf) error
- func CreateBucket_duplicate_keys(s *S3Conf) error
- func CreateBucket_existing_bucket(s *S3Conf) error
- func CreateBucket_invalid_bucket_name(s *S3Conf) error
- func CreateBucket_invalid_canned_acl(s *S3Conf) error
- func CreateBucket_invalid_location_constraint(s *S3Conf) error
- func CreateBucket_invalid_ownership(s *S3Conf) error
- func CreateBucket_invalid_tags(s *S3Conf) error
- func CreateBucket_long_tags(s *S3Conf) error
- func CreateBucket_non_default_acl(s *S3Conf) error
- func CreateBucket_owned_by_you(s *S3Conf) error
- func CreateBucket_ownership_with_acl(s *S3Conf) error
- func CreateBucket_private_canned_acl(s *S3Conf) error
- func CreateBucket_private_canned_acl_bucket_owner_enforced_ownership(s *S3Conf) error
- func CreateBucket_success(s *S3Conf) error
- func CreateBucket_tag_count_limit(s *S3Conf) error
- func CreateMultipartUpload_dir_obj(s *S3Conf) error
- func CreateMultipartUpload_empty_checksum_algorithm_with_checksum_type(s *S3Conf) error
- func CreateMultipartUpload_invalid_checksum_algorithm(s *S3Conf) error
- func CreateMultipartUpload_invalid_checksum_type(s *S3Conf) error
- func CreateMultipartUpload_invalid_legal_hold(s *S3Conf) error
- func CreateMultipartUpload_invalid_object_lock_mode(s *S3Conf) error
- func CreateMultipartUpload_invalid_website_redirect_location(s *S3Conf) error
- func CreateMultipartUpload_long_metadata(s *S3Conf) error
- func CreateMultipartUpload_non_existing_bucket(s *S3Conf) error
- func CreateMultipartUpload_object_acl_not_supported(s *S3Conf) error
- func CreateMultipartUpload_past_retain_until_date(s *S3Conf) error
- func CreateMultipartUpload_sse_c_not_implemented(s *S3Conf) error
- func CreateMultipartUpload_success(s *S3Conf) error
- func CreateMultipartUpload_type_algo_mismatch(s *S3Conf) error
- func CreateMultipartUpload_valid_algo_type(s *S3Conf) error
- func CreateMultipartUpload_with_metadata(s *S3Conf) error
- func CreateMultipartUpload_with_object_lock(s *S3Conf) error
- func CreateMultipartUpload_with_object_lock_invalid_retention(s *S3Conf) error
- func CreateMultipartUpload_with_object_lock_not_enabled(s *S3Conf) error
- func CreateMultipartUpload_with_tagging(s *S3Conf) error
- func DeleteBucketAnalyticsConfiguration_not_implemented(s *S3Conf) error
- func DeleteBucketCors_non_existing_bucket(s *S3Conf) error
- func DeleteBucketCors_success(s *S3Conf) error
- func DeleteBucketEncryption_not_implemented(s *S3Conf) error
- func DeleteBucketIntelligentTieringConfiguration_not_implemented(s *S3Conf) error
- func DeleteBucketInventoryConfiguration_not_implemented(s *S3Conf) error
- func DeleteBucketLifecycle_not_implemented(s *S3Conf) error
- func DeleteBucketMetricsConfiguration_not_implemented(s *S3Conf) error
- func DeleteBucketOwnershipControls_non_existing_bucket(s *S3Conf) error
- func DeleteBucketOwnershipControls_success(s *S3Conf) error
- func DeleteBucketPolicy_non_existing_bucket(s *S3Conf) error
- func DeleteBucketPolicy_remove_before_setting(s *S3Conf) error
- func DeleteBucketPolicy_success(s *S3Conf) error
- func DeleteBucketReplication_not_implemented(s *S3Conf) error
- func DeleteBucketTagging_non_existing_object(s *S3Conf) error
- func DeleteBucketTagging_success(s *S3Conf) error
- func DeleteBucketTagging_success_status(s *S3Conf) error
- func DeleteBucketWebsite_non_existing_bucket(s *S3Conf) error
- func DeleteBucketWebsite_success(s *S3Conf) error
- func DeleteBucket_incorrect_expected_bucket_owner(s *S3Conf) error
- func DeleteBucket_non_empty_bucket(s *S3Conf) error
- func DeleteBucket_non_existing_bucket(s *S3Conf) error
- func DeleteBucket_success_status_code(s *S3Conf) error
- func DeleteObjectTagging_empty_version_id(s *S3Conf) error
- func DeleteObjectTagging_expected_bucket_owner(s *S3Conf) error
- func DeleteObjectTagging_non_existing_object(s *S3Conf) error
- func DeleteObjectTagging_success(s *S3Conf) error
- func DeleteObjectTagging_success_status(s *S3Conf) error
- func DeleteObject_conditional_non_existing_object(s *S3Conf) error
- func DeleteObject_conditional_wildcard(s *S3Conf) error
- func DeleteObject_conditional_with_version_id(s *S3Conf) error
- func DeleteObject_conditional_writes(s *S3Conf) error
- func DeleteObject_directory_not_empty(s *S3Conf) error
- func DeleteObject_directory_object(s *S3Conf) error
- func DeleteObject_directory_object_noslash(s *S3Conf) error
- func DeleteObject_empty_version_id(s *S3Conf) error
- func DeleteObject_expected_bucket_owner(s *S3Conf) error
- func DeleteObject_incorrect_expected_bucket_owner(s *S3Conf) error
- func DeleteObject_name_too_long(s *S3Conf) error
- func DeleteObject_non_empty_dir_obj(s *S3Conf) error
- func DeleteObject_non_existing_dir_object(s *S3Conf) error
- func DeleteObject_non_existing_object(s *S3Conf) error
- func DeleteObject_success(s *S3Conf) error
- func DeleteObject_success_status_code(s *S3Conf) error
- func DeleteObjects_conditional(s *S3Conf) error
- func DeleteObjects_empty_input(s *S3Conf) error
- func DeleteObjects_iam_all_access_denied(s *S3Conf) error
- func DeleteObjects_iam_all_locked(s *S3Conf) error
- func DeleteObjects_iam_mixed_denials_and_success(s *S3Conf) error
- func DeleteObjects_invalid_object_keys(s *S3Conf) error
- func DeleteObjects_key_limit(s *S3Conf) error
- func DeleteObjects_non_existing_bucket(s *S3Conf) error
- func DeleteObjects_non_existing_objects(s *S3Conf) error
- func DeleteObjects_quiet_mode(s *S3Conf) error
- func DeleteObjects_success(s *S3Conf) error
- func DeletePublicAccessBlock_not_implemented(s *S3Conf) error
- func GetBucketAccelerateConfiguration_not_implemented(s *S3Conf) error
- func GetBucketAcl_access_denied(s *S3Conf) error
- func GetBucketAcl_non_existing_bucket(s *S3Conf) error
- func GetBucketAcl_success(s *S3Conf) error
- func GetBucketAcl_translation_canned_private(s *S3Conf) error
- func GetBucketAcl_translation_canned_public_read(s *S3Conf) error
- func GetBucketAcl_translation_canned_public_read_write(s *S3Conf) error
- func GetBucketAnalyticsConfiguration_not_implemented(s *S3Conf) error
- func GetBucketCors_no_such_bucket_cors(s *S3Conf) error
- func GetBucketCors_non_existing_bucket(s *S3Conf) error
- func GetBucketCors_success(s *S3Conf) error
- func GetBucketEncryption_not_implemented(s *S3Conf) error
- func GetBucketIntelligentTieringConfiguration_not_implemented(s *S3Conf) error
- func GetBucketInventoryConfiguration_not_implemented(s *S3Conf) error
- func GetBucketLifecycleConfiguration_not_implemented(s *S3Conf) error
- func GetBucketLocation_no_access(s *S3Conf) error
- func GetBucketLocation_non_exist(s *S3Conf) error
- func GetBucketLocation_success(s *S3Conf) error
- func GetBucketLogging_not_implemented(s *S3Conf) error
- func GetBucketMetricsConfiguration_not_implemented(s *S3Conf) error
- func GetBucketNotificationConfiguratio_not_implemented(s *S3Conf) error
- func GetBucketOwnershipControls_default_ownership(s *S3Conf) error
- func GetBucketOwnershipControls_non_existing_bucket(s *S3Conf) error
- func GetBucketOwnershipControls_success(s *S3Conf) error
- func GetBucketPolicyStatus_no_such_bucket_policy(s *S3Conf) error
- func GetBucketPolicyStatus_non_existing_bucket(s *S3Conf) error
- func GetBucketPolicyStatus_success(s *S3Conf) error
- func GetBucketPolicy_non_existing_bucket(s *S3Conf) error
- func GetBucketPolicy_not_set(s *S3Conf) error
- func GetBucketPolicy_success(s *S3Conf) error
- func GetBucketReplication_not_implemented(s *S3Conf) error
- func GetBucketRequestPayment_not_implemented(s *S3Conf) error
- func GetBucketTagging_non_existing_bucket(s *S3Conf) error
- func GetBucketTagging_success(s *S3Conf) error
- func GetBucketTagging_unset_tags(s *S3Conf) error
- func GetBucketVersioning_acl_grant_access_denied(s *S3Conf) error
- func GetBucketVersioning_empty_response(s *S3Conf) error
- func GetBucketVersioning_non_existing_bucket(s *S3Conf) error
- func GetBucketVersioning_non_owner_access_denied(s *S3Conf) error
- func GetBucketVersioning_success(s *S3Conf) error
- func GetBucketVersioning_with_policy_access(s *S3Conf) error
- func GetBucketWebsite_no_such_website_config(s *S3Conf) error
- func GetBucketWebsite_non_existing_bucket(s *S3Conf) error
- func GetBucketWebsite_success(s *S3Conf) error
- func GetBucketWebsite_success_redirect_all(s *S3Conf) error
- func GetObjectAcl_not_implemented(s *S3Conf) error
- func GetObjectAttributes_checksums(s *S3Conf) error
- func GetObjectAttributes_empty_attrs(s *S3Conf) error
- func GetObjectAttributes_empty_version_id(s *S3Conf) error
- func GetObjectAttributes_existing_object(s *S3Conf) error
- func GetObjectAttributes_invalid_attrs(s *S3Conf) error
- func GetObjectAttributes_invalid_parent(s *S3Conf) error
- func GetObjectAttributes_invalid_single_attribute(s *S3Conf) error
- func GetObjectAttributes_non_existing_bucket(s *S3Conf) error
- func GetObjectAttributes_non_existing_object(s *S3Conf) error
- func GetObjectAttributes_sse_c_not_implemented(s *S3Conf) error
- func GetObjectLegalHold_disabled_lock(s *S3Conf) error
- func GetObjectLegalHold_empty_version_id(s *S3Conf) error
- func GetObjectLegalHold_non_existing_bucket(s *S3Conf) error
- func GetObjectLegalHold_non_existing_object(s *S3Conf) error
- func GetObjectLegalHold_success(s *S3Conf) error
- func GetObjectLegalHold_unset_config(s *S3Conf) error
- func GetObjectLockConfiguration_no_default_retention(s *S3Conf) error
- func GetObjectLockConfiguration_non_existing_bucket(s *S3Conf) error
- func GetObjectLockConfiguration_success(s *S3Conf) error
- func GetObjectLockConfiguration_unset_config(s *S3Conf) error
- func GetObjectRetention_disabled_lock(s *S3Conf) error
- func GetObjectRetention_empty_version_id(s *S3Conf) error
- func GetObjectRetention_non_existing_bucket(s *S3Conf) error
- func GetObjectRetention_non_existing_object(s *S3Conf) error
- func GetObjectRetention_retain_until_date_format(s *S3Conf) error
- func GetObjectRetention_success(s *S3Conf) error
- func GetObjectRetention_unset_config(s *S3Conf) error
- func GetObjectTagging_empty_version_id(s *S3Conf) error
- func GetObjectTagging_invalid_parent(s *S3Conf) error
- func GetObjectTagging_non_existing_object(s *S3Conf) error
- func GetObjectTagging_success(s *S3Conf) error
- func GetObjectTagging_unset_tags(s *S3Conf) error
- func GetObject_by_range_resp_status(s *S3Conf) error
- func GetObject_checksums(s *S3Conf) error
- func GetObject_conditional_reads(s *S3Conf) error
- func GetObject_dir_object_checksum(s *S3Conf) error
- func GetObject_dir_with_range(s *S3Conf) error
- func GetObject_directory_object_noslash(s *S3Conf) error
- func GetObject_directory_success(s *S3Conf) error
- func GetObject_empty_object_part_number_1(s *S3Conf) error
- func GetObject_empty_version_id(s *S3Conf) error
- func GetObject_incidental_dir_object(s *S3Conf) error
- func GetObject_invalid_parent(s *S3Conf) error
- func GetObject_invalid_part_number(s *S3Conf) error
- func GetObject_large_object(s *S3Conf) error
- func GetObject_mp_part_number_exceeds_parts_count(s *S3Conf) error
- func GetObject_mp_part_number_resp_status(s *S3Conf) error
- func GetObject_mp_part_number_success(s *S3Conf) error
- func GetObject_non_existing_dir_object(s *S3Conf) error
- func GetObject_non_existing_key(s *S3Conf) error
- func GetObject_non_mp_part_number_1_success(s *S3Conf) error
- func GetObject_not_enabled_checksum_mode(s *S3Conf) error
- func GetObject_overrides_fail_public(s *S3Conf) error
- func GetObject_overrides_presign_success(s *S3Conf) error
- func GetObject_overrides_success(s *S3Conf) error
- func GetObject_range_and_part_number(s *S3Conf) error
- func GetObject_ranged_with_checksum_mode(s *S3Conf) error
- func GetObject_sse_c_not_implemented(s *S3Conf) error
- func GetObject_success(s *S3Conf) error
- func GetObject_with_range(s *S3Conf) error
- func GetObject_zero_len_with_range(s *S3Conf) error
- func GetPublicAccessBlock_not_implemented(s *S3Conf) error
- func HeadBucket_non_existing_bucket(s *S3Conf) error
- func HeadBucket_success(s *S3Conf) error
- func HeadObject_by_range_resp_status(s *S3Conf) error
- func HeadObject_checksums(s *S3Conf) error
- func HeadObject_conditional_reads(s *S3Conf) error
- func HeadObject_dir_with_range(s *S3Conf) error
- func HeadObject_directory_object_noslash(s *S3Conf) error
- func HeadObject_empty_object_part_number_1(s *S3Conf) error
- func HeadObject_empty_version_id(s *S3Conf) error
- func HeadObject_incidental_dir_object(s *S3Conf) error
- func HeadObject_invalid_parent_dir(s *S3Conf) error
- func HeadObject_invalid_part_number(s *S3Conf) error
- func HeadObject_mp_part_number_exceeds_parts_count(s *S3Conf) error
- func HeadObject_mp_part_number_resp_status(s *S3Conf) error
- func HeadObject_mp_part_number_success(s *S3Conf) error
- func HeadObject_name_too_long(s *S3Conf) error
- func HeadObject_non_existing_dir_object(s *S3Conf) error
- func HeadObject_non_existing_object(s *S3Conf) error
- func HeadObject_non_mp_part_number_1_success(s *S3Conf) error
- func HeadObject_not_enabled_checksum_mode(s *S3Conf) error
- func HeadObject_overrides_fail_public(s *S3Conf) error
- func HeadObject_overrides_presign_success(s *S3Conf) error
- func HeadObject_overrides_success(s *S3Conf) error
- func HeadObject_range_and_part_number(s *S3Conf) error
- func HeadObject_ranged_with_checksum_mode(s *S3Conf) error
- func HeadObject_sse_c_invalid_headers(s *S3Conf) error
- func HeadObject_sse_c_not_implemented(s *S3Conf) error
- func HeadObject_success(s *S3Conf) error
- func HeadObject_with_range(s *S3Conf) error
- func HeadObject_zero_len_with_range(s *S3Conf) error
- func IAMAccessControl_ActionAllowOneDenyAnotherByOmission(s *S3Conf) error
- func IAMAccessControl_ActionExplicitDenySubsetOfWildcardAllow(s *S3Conf) error
- func IAMAccessControl_ActionMatchingVariants(s *S3Conf) error
- func IAMAccessControl_AllowGrantsMatchingRequest(s *S3Conf) error
- func IAMAccessControl_ConditionAllowAndDenyBothMatchDenyWins(s *S3Conf) error
- func IAMAccessControl_ConditionAllowMatchesDenyConditionDoesNotApply(s *S3Conf) error
- func IAMAccessControl_ConditionArnOperators(s *S3Conf) error
- func IAMAccessControl_ConditionBinaryEqualsOperator(s *S3Conf) error
- func IAMAccessControl_ConditionBoolOperator(s *S3Conf) error
- func IAMAccessControl_ConditionCurrentTimeBroadWindow(s *S3Conf) error
- func IAMAccessControl_ConditionDateOperators(s *S3Conf) error
- func IAMAccessControl_ConditionForAllValuesOperator(s *S3Conf) error
- func IAMAccessControl_ConditionForAnyValueOperator(s *S3Conf) error
- func IAMAccessControl_ConditionIfExistsPrincipalTag(s *S3Conf) error
- func IAMAccessControl_ConditionIfExistsTrustClaim(s *S3Conf) error
- func IAMAccessControl_ConditionIpAddressExplicitDenyOverridesBroaderAllow(s *S3Conf) error
- func IAMAccessControl_ConditionIpAddressRealSourceIp(s *S3Conf) error
- func IAMAccessControl_ConditionMultipleContextKeysANDed(s *S3Conf) error
- func IAMAccessControl_ConditionMultipleOperatorBlocksANDedTrust(s *S3Conf) error
- func IAMAccessControl_ConditionNullOperatorClaim(s *S3Conf) error
- func IAMAccessControl_ConditionNullPrincipalTag(s *S3Conf) error
- func IAMAccessControl_ConditionNumericOperators(s *S3Conf) error
- func IAMAccessControl_ConditionOneFailedConditionVoidsStatement(s *S3Conf) error
- func IAMAccessControl_ConditionRequestTagOnCreateUser(s *S3Conf) error
- func IAMAccessControl_ConditionResourceTagOnTarget(s *S3Conf) error
- func IAMAccessControl_ConditionStringMultipleExpectedValuesOR(s *S3Conf) error
- func IAMAccessControl_ConditionStringOperators(s *S3Conf) error
- func IAMAccessControl_CrossIdentity_AssumeRoleWithWebIdentityHasNoCallerIdentityCheck(s *S3Conf) error
- func IAMAccessControl_CrossIdentity_UnrelatedRoleCannotBeAssumedViaWrongIssuer(s *S3Conf) error
- func IAMAccessControl_EffectNonMatchingAllowStillImplicitlyDenies(s *S3Conf) error
- func IAMAccessControl_EffectNonMatchingDenyDoesNotBlockUnrelatedAllow(s *S3Conf) error
- func IAMAccessControl_ExplicitDenyOverridesAllow(s *S3Conf) error
- func IAMAccessControl_ImplicitDenyNoMatchingPolicy(s *S3Conf) error
- func IAMAccessControl_MultipleInlinePoliciesCombinedAllow(s *S3Conf) error
- func IAMAccessControl_MultipleInlinePoliciesExplicitDenyWins(s *S3Conf) error
- func IAMAccessControl_MultipleStatementsEvaluatedIndependently(s *S3Conf) error
- func IAMAccessControl_NonMatchingStatementDoesNotGrant(s *S3Conf) error
- func IAMAccessControl_NotActionAllowGrantsEverythingExceptExcluded(s *S3Conf) error
- func IAMAccessControl_NotActionDenyBlocksEverythingExceptExcluded(s *S3Conf) error
- func IAMAccessControl_NotResourceExcludesTarget(s *S3Conf) error
- func IAMAccessControl_NotResourceMultipleExcludedResources(s *S3Conf) error
- func IAMAccessControl_NotResourceWildcardExclusion(s *S3Conf) error
- func IAMAccessControl_ResourceExplicitDenyOverridesBroaderAllow(s *S3Conf) error
- func IAMAccessControl_ResourceMatchingVariants(s *S3Conf) error
- func IAMAccessControl_ResourceOneAllowedOneDeniedSameAction(s *S3Conf) error
- func IAMAccessControl_ResourceWildcardRequiredForListAction(s *S3Conf) error
- func IAMAccessControl_RolePermissionPolicyDoesNotAffectAssumptionDecision(s *S3Conf) error
- func IAMAccessControl_RoleTrustDenialIndependentOfPermissionPolicy(s *S3Conf) error
- func IAMAccessControl_TrustPolicyAudienceAndSubjectBothMustMatch(s *S3Conf) error
- func IAMAccessControl_TrustPolicyAudienceCorrectAllowed(s *S3Conf) error
- func IAMAccessControl_TrustPolicyAudienceIncorrectDenied(s *S3Conf) error
- func IAMAccessControl_TrustPolicyExplicitDenyStatement(s *S3Conf) error
- func IAMAccessControl_TrustPolicyFederatedArrayMatchesAny(s *S3Conf) error
- func IAMAccessControl_TrustPolicyFederatedExactMatchAllowed(s *S3Conf) error
- func IAMAccessControl_TrustPolicyFederatedWrongProviderDenied(s *S3Conf) error
- func IAMAccessControl_TrustPolicyMissingRequiredClaimDenied(s *S3Conf) error
- func IAMAccessControl_TrustPolicyMultipleAudiencesArrayAllowed(s *S3Conf) error
- func IAMAccessControl_TrustPolicyMultipleStatementsSecondGrants(s *S3Conf) error
- func IAMAccessControl_TrustPolicyNonFederatedPrincipalsIgnored(s *S3Conf) error
- func IAMAccessControl_TrustPolicyStringEqualsSubjectExactAllowed(s *S3Conf) error
- func IAMAccessControl_TrustPolicyStringEqualsSubjectMismatchDenied(s *S3Conf) error
- func IAMAccessControl_TrustPolicyStringLikeBranchWildcardAllowed(s *S3Conf) error
- func IAMAccessControl_TrustPolicyStringLikeTagSubjectDenied(s *S3Conf) error
- func IAMAccessControl_UserInlinePolicyWorkflow(s *S3Conf) error
- func IAMAccessControl_UserPathScopedResourceGrantsOnlyMatchingPath(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_client_id_too_long(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_idempotent_duplicate(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_limit_exceeded(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_missing_client_id(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_non_existing_provider(s *S3Conf) error
- func IAMAddClientIDToOpenIDConnectProvider_success(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_audience_not_in_client_id_list(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_condition_failed(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_duration_exceeds_role_max(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_empty_client_id_list(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_explicit_deny(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_idp_communication_error(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_issuer_scheme_mismatch(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_issuer_trailing_slash_mismatch(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_malformed_duration(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_malformed_token(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_missing_role_arn(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_no_issuer_match(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_no_matching_principal(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_nonexistent_role(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_oaud_condition_matches(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_oaud_condition_mismatch(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_policy_arns_rejected(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_provider_id_rejected(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_role_arn_path_mismatch(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_role_arn_too_short(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_session_policy_invalid(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_session_policy_too_large(s *S3Conf) error
- func IAMAssumeRoleWithWebIdentity_wrong_version_is_invalid_action(s *S3Conf) error
- func IAMAuth_credentials_future_date(s *S3Conf) error
- func IAMAuth_credentials_incorrect_region(s *S3Conf) error
- func IAMAuth_credentials_incorrect_service(s *S3Conf) error
- func IAMAuth_credentials_invalid_date(s *S3Conf) error
- func IAMAuth_credentials_invalid_terminal(s *S3Conf) error
- func IAMAuth_credentials_non_existing_access_key(s *S3Conf) error
- func IAMAuth_credentials_past_date(s *S3Conf) error
- func IAMAuth_date_mismatch(s *S3Conf) error
- func IAMAuth_invalid_auth_header(s *S3Conf) error
- func IAMAuth_invalid_date_header(s *S3Conf) error
- func IAMAuth_invalid_sha256_payload_hash_ignored(s *S3Conf) error
- func IAMAuth_malformed_component(s *S3Conf) error
- func IAMAuth_malformed_credential(s *S3Conf) error
- func IAMAuth_missing_authorization_component(s *S3Conf) error
- func IAMAuth_missing_date_header(s *S3Conf) error
- func IAMAuth_signature_error_incorrect_secret_key(s *S3Conf) error
- func IAMAuth_sigv2_not_supported(s *S3Conf) error
- func IAMAuth_unsigned_non_required_header(s *S3Conf) error
- func IAMAuth_unsigned_required_header(s *S3Conf) error
- func IAMAuth_unsupported_signature_version(s *S3Conf) error
- func IAMAuth_with_expect_header(s *S3Conf) error
- func IAMCreateAccessKey_empty_user_name(s *S3Conf) error
- func IAMCreateAccessKey_infers_caller_user_name(s *S3Conf) error
- func IAMCreateAccessKey_invalid_user_name(s *S3Conf) error
- func IAMCreateAccessKey_limit_exceeded(s *S3Conf) error
- func IAMCreateAccessKey_long_user_name(s *S3Conf) error
- func IAMCreateAccessKey_missing_user_name(s *S3Conf) error
- func IAMCreateAccessKey_non_existing_user(s *S3Conf) error
- func IAMCreateAccessKey_success(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_already_exists(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_client_id_too_long(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_defaults(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_duplicate_tag_keys(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_invalid_thumbprint(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_invalid_url(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_ip_literal_host(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_missing_url(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_quota_exceeded(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_success(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_thumbprint_autofetch_communication_error(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_thumbprint_edge_cases(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_too_many_client_ids(s *S3Conf) error
- func IAMCreateOpenIDConnectProvider_trailing_slash_distinct_identity(s *S3Conf) error
- func IAMCreateRole_already_exists(s *S3Conf) error
- func IAMCreateRole_already_exists_case_insensitive(s *S3Conf) error
- func IAMCreateRole_defaults(s *S3Conf) error
- func IAMCreateRole_description_invalid_charset(s *S3Conf) error
- func IAMCreateRole_description_too_long(s *S3Conf) error
- func IAMCreateRole_duplicate_tag_keys(s *S3Conf) error
- func IAMCreateRole_invalid_path(s *S3Conf) error
- func IAMCreateRole_invalid_role_name(s *S3Conf) error
- func IAMCreateRole_long_path(s *S3Conf) error
- func IAMCreateRole_long_role_name(s *S3Conf) error
- func IAMCreateRole_max_session_duration_invalid_format(s *S3Conf) error
- func IAMCreateRole_max_session_duration_too_high(s *S3Conf) error
- func IAMCreateRole_max_session_duration_too_low(s *S3Conf) error
- func IAMCreateRole_missing_assume_role_policy_document(s *S3Conf) error
- func IAMCreateRole_missing_role_name(s *S3Conf) error
- func IAMCreateRole_non_ascii_assume_role_policy_document(s *S3Conf) error
- func IAMCreateRole_success(s *S3Conf) error
- func IAMCreateRole_trust_policy_document_grammar(s *S3Conf) error
- func IAMCreateRole_trust_policy_size_limit_exceeded(s *S3Conf) error
- func IAMCreateUser_already_exists_case_insensitive(s *S3Conf) error
- func IAMCreateUser_default_path(s *S3Conf) error
- func IAMCreateUser_duplicate_tag_keys(s *S3Conf) error
- func IAMCreateUser_invalid_path(s *S3Conf) error
- func IAMCreateUser_invalid_tag_key(s *S3Conf) error
- func IAMCreateUser_invalid_tag_value(s *S3Conf) error
- func IAMCreateUser_invalid_user_name(s *S3Conf) error
- func IAMCreateUser_long_path(s *S3Conf) error
- func IAMCreateUser_long_tag_key(s *S3Conf) error
- func IAMCreateUser_long_tag_value(s *S3Conf) error
- func IAMCreateUser_long_user_name(s *S3Conf) error
- func IAMCreateUser_missing_user_name(s *S3Conf) error
- func IAMCreateUser_success(s *S3Conf) error
- func IAMCreateUser_user_already_exists(s *S3Conf) error
- func IAMDeleteAccessKey_access_key_id_too_long(s *S3Conf) error
- func IAMDeleteAccessKey_access_key_id_too_short(s *S3Conf) error
- func IAMDeleteAccessKey_inferred_user_name_scoped_to_caller(s *S3Conf) error
- func IAMDeleteAccessKey_infers_caller_user_name(s *S3Conf) error
- func IAMDeleteAccessKey_invalid_access_key_id_chars(s *S3Conf) error
- func IAMDeleteAccessKey_invalid_user_name(s *S3Conf) error
- func IAMDeleteAccessKey_long_user_name(s *S3Conf) error
- func IAMDeleteAccessKey_missing_access_key_id(s *S3Conf) error
- func IAMDeleteAccessKey_missing_user_name(s *S3Conf) error
- func IAMDeleteAccessKey_non_existing_access_key(s *S3Conf) error
- func IAMDeleteAccessKey_non_existing_user(s *S3Conf) error
- func IAMDeleteAccessKey_success(s *S3Conf) error
- func IAMDeleteOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMDeleteOpenIDConnectProvider_non_existing(s *S3Conf) error
- func IAMDeleteOpenIDConnectProvider_not_idempotent(s *S3Conf) error
- func IAMDeleteOpenIDConnectProvider_success(s *S3Conf) error
- func IAMDeleteRolePolicy_blocks_role_deletion(s *S3Conf) error
- func IAMDeleteRolePolicy_missing_policy_name(s *S3Conf) error
- func IAMDeleteRolePolicy_missing_role_name(s *S3Conf) error
- func IAMDeleteRolePolicy_non_existing_policy(s *S3Conf) error
- func IAMDeleteRolePolicy_non_existing_role(s *S3Conf) error
- func IAMDeleteRolePolicy_success(s *S3Conf) error
- func IAMDeleteRole_has_policies(s *S3Conf) error
- func IAMDeleteRole_invalid_role_name(s *S3Conf) error
- func IAMDeleteRole_long_role_name(s *S3Conf) error
- func IAMDeleteRole_missing_role_name(s *S3Conf) error
- func IAMDeleteRole_non_existing_role(s *S3Conf) error
- func IAMDeleteRole_success(s *S3Conf) error
- func IAMDeleteUserPolicy_blocks_user_deletion(s *S3Conf) error
- func IAMDeleteUserPolicy_missing_policy_name(s *S3Conf) error
- func IAMDeleteUserPolicy_missing_user_name(s *S3Conf) error
- func IAMDeleteUserPolicy_non_existing_policy(s *S3Conf) error
- func IAMDeleteUserPolicy_non_existing_user(s *S3Conf) error
- func IAMDeleteUserPolicy_success(s *S3Conf) error
- func IAMDeleteUser_has_access_keys(s *S3Conf) error
- func IAMDeleteUser_invalid_user_name(s *S3Conf) error
- func IAMDeleteUser_long_user_name(s *S3Conf) error
- func IAMDeleteUser_non_existing_user(s *S3Conf) error
- func IAMDeleteUser_success(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_access_key_id_too_long(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_access_key_id_too_short(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_invalid_access_key_id_chars(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_missing_access_key_id(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_non_existing_access_key(s *S3Conf) error
- func IAMGetAccessKeyLastUsed_success(s *S3Conf) error
- func IAMGetCallerIdentity_incorrect_service_scope(s *S3Conf) error
- func IAMGetCallerIdentity_no_auth(s *S3Conf) error
- func IAMGetCallerIdentity_root_success(s *S3Conf) error
- func IAMGetCallerIdentity_unknown_access_key(s *S3Conf) error
- func IAMGetCallerIdentity_user_success(s *S3Conf) error
- func IAMGetCallerIdentity_wrong_version_is_invalid_action(s *S3Conf) error
- func IAMGetOpenIDConnectProvider_invalid_arn(s *S3Conf) error
- func IAMGetOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMGetOpenIDConnectProvider_non_existing(s *S3Conf) error
- func IAMGetOpenIDConnectProvider_success(s *S3Conf) error
- func IAMGetRolePolicy_missing_policy_name(s *S3Conf) error
- func IAMGetRolePolicy_missing_role_name(s *S3Conf) error
- func IAMGetRolePolicy_non_existing_policy(s *S3Conf) error
- func IAMGetRolePolicy_non_existing_role(s *S3Conf) error
- func IAMGetRolePolicy_success(s *S3Conf) error
- func IAMGetRole_invalid_role_name(s *S3Conf) error
- func IAMGetRole_long_role_name(s *S3Conf) error
- func IAMGetRole_missing_role_name(s *S3Conf) error
- func IAMGetRole_non_existing_role(s *S3Conf) error
- func IAMGetRole_role_last_used_never_used(s *S3Conf) error
- func IAMGetRole_success(s *S3Conf) error
- func IAMGetUserPolicy_missing_policy_name(s *S3Conf) error
- func IAMGetUserPolicy_missing_user_name(s *S3Conf) error
- func IAMGetUserPolicy_non_existing_policy(s *S3Conf) error
- func IAMGetUserPolicy_non_existing_user(s *S3Conf) error
- func IAMGetUserPolicy_success(s *S3Conf) error
- func IAMGetUser_invalid_user_name(s *S3Conf) error
- func IAMGetUser_long_user_name(s *S3Conf) error
- func IAMGetUser_non_existing_user(s *S3Conf) error
- func IAMGetUser_root_user(s *S3Conf) error
- func IAMGetUser_success(s *S3Conf) error
- func IAMListAccessKeys_empty_result(s *S3Conf) error
- func IAMListAccessKeys_infers_caller_user_name(s *S3Conf) error
- func IAMListAccessKeys_invalid_max_items(s *S3Conf) error
- func IAMListAccessKeys_invalid_max_items_format(s *S3Conf) error
- func IAMListAccessKeys_invalid_user_name(s *S3Conf) error
- func IAMListAccessKeys_long_user_name(s *S3Conf) error
- func IAMListAccessKeys_missing_user_name(s *S3Conf) error
- func IAMListAccessKeys_non_existing_user(s *S3Conf) error
- func IAMListAccessKeys_pagination(s *S3Conf) error
- func IAMListAccessKeys_success(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_empty_result(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_invalid_arn(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_invalid_max_items(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_invalid_max_items_format(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_missing_arn(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_non_existing_provider(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_pagination(s *S3Conf) error
- func IAMListOpenIDConnectProviderTags_success(s *S3Conf) error
- func IAMListOpenIDConnectProviders_success(s *S3Conf) error
- func IAMListRolePolicies_empty_result(s *S3Conf) error
- func IAMListRolePolicies_invalid_max_items(s *S3Conf) error
- func IAMListRolePolicies_missing_role_name(s *S3Conf) error
- func IAMListRolePolicies_non_existing_role(s *S3Conf) error
- func IAMListRolePolicies_pagination(s *S3Conf) error
- func IAMListRolePolicies_success(s *S3Conf) error
- func IAMListRoleTags_empty_result(s *S3Conf) error
- func IAMListRoleTags_invalid_max_items(s *S3Conf) error
- func IAMListRoleTags_invalid_max_items_format(s *S3Conf) error
- func IAMListRoleTags_invalid_role_name(s *S3Conf) error
- func IAMListRoleTags_missing_role_name(s *S3Conf) error
- func IAMListRoleTags_non_existing_role(s *S3Conf) error
- func IAMListRoleTags_pagination(s *S3Conf) error
- func IAMListRoleTags_role_name_too_long(s *S3Conf) error
- func IAMListRoleTags_success(s *S3Conf) error
- func IAMListRoles_empty_result(s *S3Conf) error
- func IAMListRoles_invalid_max_items(s *S3Conf) error
- func IAMListRoles_invalid_max_items_format(s *S3Conf) error
- func IAMListRoles_invalid_path_prefix(s *S3Conf) error
- func IAMListRoles_long_path_prefix(s *S3Conf) error
- func IAMListRoles_pagination(s *S3Conf) error
- func IAMListRoles_path_prefix(s *S3Conf) error
- func IAMListRoles_path_prefix_pagination(s *S3Conf) error
- func IAMListRoles_success(s *S3Conf) error
- func IAMListUserPolicies_empty_result(s *S3Conf) error
- func IAMListUserPolicies_invalid_max_items(s *S3Conf) error
- func IAMListUserPolicies_missing_user_name(s *S3Conf) error
- func IAMListUserPolicies_non_existing_user(s *S3Conf) error
- func IAMListUserPolicies_pagination(s *S3Conf) error
- func IAMListUserPolicies_success(s *S3Conf) error
- func IAMListUserTags_empty_result(s *S3Conf) error
- func IAMListUserTags_invalid_max_items(s *S3Conf) error
- func IAMListUserTags_invalid_max_items_format(s *S3Conf) error
- func IAMListUserTags_invalid_user_name(s *S3Conf) error
- func IAMListUserTags_missing_user_name(s *S3Conf) error
- func IAMListUserTags_non_existing_user(s *S3Conf) error
- func IAMListUserTags_pagination(s *S3Conf) error
- func IAMListUserTags_success(s *S3Conf) error
- func IAMListUserTags_user_name_too_long(s *S3Conf) error
- func IAMListUsers_empty_result(s *S3Conf) error
- func IAMListUsers_invalid_max_items(s *S3Conf) error
- func IAMListUsers_invalid_max_items_format(s *S3Conf) error
- func IAMListUsers_invalid_path_prefix(s *S3Conf) error
- func IAMListUsers_long_path_prefix(s *S3Conf) error
- func IAMListUsers_pagination(s *S3Conf) error
- func IAMListUsers_path_prefix(s *S3Conf) error
- func IAMListUsers_path_prefix_pagination(s *S3Conf) error
- func IAMListUsers_success(s *S3Conf) error
- func IAMPutRolePolicy_invalid_policy_name(s *S3Conf) error
- func IAMPutRolePolicy_limit_exceeded(s *S3Conf) error
- func IAMPutRolePolicy_long_policy_name(s *S3Conf) error
- func IAMPutRolePolicy_malformed_policy_document(s *S3Conf) error
- func IAMPutRolePolicy_missing_policy_document(s *S3Conf) error
- func IAMPutRolePolicy_missing_policy_name(s *S3Conf) error
- func IAMPutRolePolicy_missing_role_name(s *S3Conf) error
- func IAMPutRolePolicy_non_ascii_policy_document(s *S3Conf) error
- func IAMPutRolePolicy_non_existing_role(s *S3Conf) error
- func IAMPutRolePolicy_overwrite_updates_existing(s *S3Conf) error
- func IAMPutRolePolicy_principal_not_allowed(s *S3Conf) error
- func IAMPutRolePolicy_success(s *S3Conf) error
- func IAMPutUserPolicy_invalid_policy_name(s *S3Conf) error
- func IAMPutUserPolicy_limit_exceeded(s *S3Conf) error
- func IAMPutUserPolicy_long_policy_name(s *S3Conf) error
- func IAMPutUserPolicy_malformed_policy_document(s *S3Conf) error
- func IAMPutUserPolicy_missing_policy_document(s *S3Conf) error
- func IAMPutUserPolicy_missing_policy_name(s *S3Conf) error
- func IAMPutUserPolicy_missing_user_name(s *S3Conf) error
- func IAMPutUserPolicy_non_ascii_policy_document(s *S3Conf) error
- func IAMPutUserPolicy_non_existing_user(s *S3Conf) error
- func IAMPutUserPolicy_overwrite_updates_existing(s *S3Conf) error
- func IAMPutUserPolicy_principal_not_allowed(s *S3Conf) error
- func IAMPutUserPolicy_success(s *S3Conf) error
- func IAMQueryAuth_ECDSA_not_supported(s *S3Conf) error
- func IAMQueryAuth_credentials_incorrect_region(s *S3Conf) error
- func IAMQueryAuth_credentials_incorrect_service(s *S3Conf) error
- func IAMQueryAuth_credentials_invalid_date(s *S3Conf) error
- func IAMQueryAuth_credentials_invalid_terminal(s *S3Conf) error
- func IAMQueryAuth_date_mismatch(s *S3Conf) error
- func IAMQueryAuth_incorrect_secret_key(s *S3Conf) error
- func IAMQueryAuth_invalid_date(s *S3Conf) error
- func IAMQueryAuth_invalid_sha256_payload_hash_ignored(s *S3Conf) error
- func IAMQueryAuth_malformed_credential(s *S3Conf) error
- func IAMQueryAuth_missing_query_parameters(s *S3Conf) error
- func IAMQueryAuth_non_existing_access_key(s *S3Conf) error
- func IAMQueryAuth_security_token_not_supported(s *S3Conf) error
- func IAMQueryAuth_success(s *S3Conf) error
- func IAMQueryAuth_unsigned_query_parameter(s *S3Conf) error
- func IAMQueryAuth_unsupported_algorithm(s *S3Conf) error
- func IAMQueryAuth_with_expect_header(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_client_id_too_long(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_idempotent_absent(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_missing_client_id(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_non_existing_provider(s *S3Conf) error
- func IAMRemoveClientIDFromOpenIDConnectProvider_success(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_duplicate_tag_keys(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_invalid_arn(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_invalid_tags(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_invalid_tags_precede_lookup(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_isolated_per_provider(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_missing_tag_key(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_missing_tag_value(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_missing_tags(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_non_existing_provider(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_overwrites_existing_tag(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_success(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_tag_limit_exceeded(s *S3Conf) error
- func IAMTagOpenIDConnectProvider_too_many_tags(s *S3Conf) error
- func IAMTagRole_duplicate_tag_keys(s *S3Conf) error
- func IAMTagRole_empty_tag_key(s *S3Conf) error
- func IAMTagRole_invalid_role_name(s *S3Conf) error
- func IAMTagRole_invalid_tag_key(s *S3Conf) error
- func IAMTagRole_invalid_tag_value(s *S3Conf) error
- func IAMTagRole_isolated_from_same_named_user(s *S3Conf) error
- func IAMTagRole_missing_role_name(s *S3Conf) error
- func IAMTagRole_missing_tag_key(s *S3Conf) error
- func IAMTagRole_missing_tag_value(s *S3Conf) error
- func IAMTagRole_missing_tags(s *S3Conf) error
- func IAMTagRole_non_existing_role(s *S3Conf) error
- func IAMTagRole_overwrites_existing_tag(s *S3Conf) error
- func IAMTagRole_role_name_too_long(s *S3Conf) error
- func IAMTagRole_success(s *S3Conf) error
- func IAMTagRole_tag_key_too_long(s *S3Conf) error
- func IAMTagRole_tag_limit_exceeded(s *S3Conf) error
- func IAMTagRole_tag_value_too_long(s *S3Conf) error
- func IAMTagRole_too_many_tags(s *S3Conf) error
- func IAMTagUser_duplicate_tag_keys(s *S3Conf) error
- func IAMTagUser_empty_tag_key(s *S3Conf) error
- func IAMTagUser_invalid_tag_key(s *S3Conf) error
- func IAMTagUser_invalid_tag_value(s *S3Conf) error
- func IAMTagUser_invalid_user_name(s *S3Conf) error
- func IAMTagUser_missing_tag_key(s *S3Conf) error
- func IAMTagUser_missing_tag_value(s *S3Conf) error
- func IAMTagUser_missing_tags(s *S3Conf) error
- func IAMTagUser_missing_user_name(s *S3Conf) error
- func IAMTagUser_non_existing_user(s *S3Conf) error
- func IAMTagUser_overwrites_existing_tag(s *S3Conf) error
- func IAMTagUser_success(s *S3Conf) error
- func IAMTagUser_tag_key_too_long(s *S3Conf) error
- func IAMTagUser_tag_limit_exceeded(s *S3Conf) error
- func IAMTagUser_tag_value_too_long(s *S3Conf) error
- func IAMTagUser_too_many_tags(s *S3Conf) error
- func IAMTagUser_user_name_too_long(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_case_sensitive_key(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_invalid_arn(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_invalid_tag_key(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_missing_arn(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_missing_tag_keys(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_non_existing_provider(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_removal_is_idempotent(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_removes_only_named_keys(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_success(s *S3Conf) error
- func IAMUntagOpenIDConnectProvider_too_many_tag_keys(s *S3Conf) error
- func IAMUntagRole_case_insensitive_key(s *S3Conf) error
- func IAMUntagRole_invalid_role_name(s *S3Conf) error
- func IAMUntagRole_invalid_tag_key(s *S3Conf) error
- func IAMUntagRole_missing_role_name(s *S3Conf) error
- func IAMUntagRole_missing_tag_keys(s *S3Conf) error
- func IAMUntagRole_non_existing_role(s *S3Conf) error
- func IAMUntagRole_removal_is_idempotent(s *S3Conf) error
- func IAMUntagRole_removes_only_named_keys(s *S3Conf) error
- func IAMUntagRole_role_name_too_long(s *S3Conf) error
- func IAMUntagRole_success(s *S3Conf) error
- func IAMUntagRole_too_many_tag_keys(s *S3Conf) error
- func IAMUntagUser_case_insensitive_key(s *S3Conf) error
- func IAMUntagUser_invalid_tag_key(s *S3Conf) error
- func IAMUntagUser_invalid_user_name(s *S3Conf) error
- func IAMUntagUser_missing_tag_keys(s *S3Conf) error
- func IAMUntagUser_missing_user_name(s *S3Conf) error
- func IAMUntagUser_non_existing_user(s *S3Conf) error
- func IAMUntagUser_removal_is_idempotent(s *S3Conf) error
- func IAMUntagUser_success(s *S3Conf) error
- func IAMUntagUser_too_many_tag_keys(s *S3Conf) error
- func IAMUntagUser_user_name_too_long(s *S3Conf) error
- func IAMUpdateAccessKey_access_key_id_too_long(s *S3Conf) error
- func IAMUpdateAccessKey_access_key_id_too_short(s *S3Conf) error
- func IAMUpdateAccessKey_inferred_user_name_scoped_to_caller(s *S3Conf) error
- func IAMUpdateAccessKey_infers_caller_user_name(s *S3Conf) error
- func IAMUpdateAccessKey_invalid_access_key_id_chars(s *S3Conf) error
- func IAMUpdateAccessKey_invalid_status(s *S3Conf) error
- func IAMUpdateAccessKey_invalid_user_name(s *S3Conf) error
- func IAMUpdateAccessKey_long_user_name(s *S3Conf) error
- func IAMUpdateAccessKey_missing_access_key_id(s *S3Conf) error
- func IAMUpdateAccessKey_missing_status(s *S3Conf) error
- func IAMUpdateAccessKey_missing_user_name(s *S3Conf) error
- func IAMUpdateAccessKey_non_existing_access_key(s *S3Conf) error
- func IAMUpdateAccessKey_non_existing_user(s *S3Conf) error
- func IAMUpdateAccessKey_success(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_invalid_role_name(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_long_role_name(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_missing_policy_document(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_missing_role_name(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_non_ascii_policy_document(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_non_existing_role(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_success(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_trust_policy_document_grammar(s *S3Conf) error
- func IAMUpdateAssumeRolePolicy_trust_policy_size_limit_exceeded(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_boundary_max_thumbprints(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_missing_arn(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_missing_thumbprint_list(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_non_existing_provider(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_success(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_too_many_thumbprints(s *S3Conf) error
- func IAMUpdateOpenIDConnectProviderThumbprint_wrong_length_thumbprint(s *S3Conf) error
- func IAMUpdateUser_invalid_new_path(s *S3Conf) error
- func IAMUpdateUser_invalid_new_user_name(s *S3Conf) error
- func IAMUpdateUser_invalid_user_name(s *S3Conf) error
- func IAMUpdateUser_long_new_path(s *S3Conf) error
- func IAMUpdateUser_long_new_user_name(s *S3Conf) error
- func IAMUpdateUser_long_user_name(s *S3Conf) error
- func IAMUpdateUser_new_user_name_already_exists(s *S3Conf) error
- func IAMUpdateUser_non_existing_user(s *S3Conf) error
- func IAMUpdateUser_success(s *S3Conf) error
- func IAM_ChangeBucketOwner_back_to_root(s *S3Conf) error
- func IAM_CreateBucket_empty_owner_header(s *S3Conf) error
- func IAM_CreateBucket_non_existing_user(s *S3Conf) error
- func IAM_CreateBucket_success(s *S3Conf) error
- func IAM_ListBuckets(s *S3Conf) error
- func IAM_admin_ChangeBucketOwner(s *S3Conf) error
- func IAM_user_access_denied(s *S3Conf) error
- func IAM_userplus_CreateBucket(s *S3Conf) error
- func IAM_userplus_access_denied(s *S3Conf) error
- func ListBucketAnalyticsConfiguration_not_implemented(s *S3Conf) error
- func ListBucketIntelligentTieringConfiguration_not_implemented(s *S3Conf) error
- func ListBucketInventoryConfiguration_not_implemented(s *S3Conf) error
- func ListBucketMetricsConfigurations_not_implemented(s *S3Conf) error
- func ListBuckets_as_admin(s *S3Conf) error
- func ListBuckets_as_user(s *S3Conf) error
- func ListBuckets_bucket_region(s *S3Conf) error
- func ListBuckets_empty_success(s *S3Conf) error
- func ListBuckets_invalid_bucket_region(s *S3Conf) error
- func ListBuckets_invalid_max_buckets(s *S3Conf) error
- func ListBuckets_success(s *S3Conf) error
- func ListBuckets_truncated(s *S3Conf) error
- func ListBuckets_with_prefix(s *S3Conf) error
- func ListMultipartUploads_both_delimiter_and_prefix(s *S3Conf) error
- func ListMultipartUploads_delimiter_no_matches(s *S3Conf) error
- func ListMultipartUploads_delimiter_truncated(s *S3Conf) error
- func ListMultipartUploads_empty_result(s *S3Conf) error
- func ListMultipartUploads_exceeding_max_uploads(s *S3Conf) error
- func ListMultipartUploads_ignore_upload_id_marker(s *S3Conf) error
- func ListMultipartUploads_invalid_max_uploads(s *S3Conf) error
- func ListMultipartUploads_invalid_uploadId_marker(s *S3Conf) error
- func ListMultipartUploads_keyMarker_not_from_list(s *S3Conf) error
- func ListMultipartUploads_max_uploads(s *S3Conf) error
- func ListMultipartUploads_next_markers_not_truncated(s *S3Conf) error
- func ListMultipartUploads_non_existing_bucket(s *S3Conf) error
- func ListMultipartUploads_prefix(s *S3Conf) error
- func ListMultipartUploads_upload_id_marker_truncated(s *S3Conf) error
- func ListMultipartUploads_upload_id_marker_with_key_marker(s *S3Conf) error
- func ListMultipartUploads_with_checksums(s *S3Conf) error
- func ListMultipartUploads_with_upload_id(s *S3Conf) error
- func ListObjectVersions_VD_success(s *S3Conf) error
- func ListObjectVersions_checksum(s *S3Conf) error
- func ListObjectVersions_containing_null_versionId_obj(s *S3Conf) error
- func ListObjectVersions_dir_object_with_children(s *S3Conf) error
- func ListObjectVersions_list_multiple_object_versions(s *S3Conf) error
- func ListObjectVersions_list_single_object_versions(s *S3Conf) error
- func ListObjectVersions_multiple_object_versions_truncated(s *S3Conf) error
- func ListObjectVersions_negative_max_keys(s *S3Conf) error
- func ListObjectVersions_non_existing_bucket(s *S3Conf) error
- func ListObjectVersions_paginate_null_version(s *S3Conf) error
- func ListObjectVersions_single_null_versionId_object(s *S3Conf) error
- func ListObjectVersions_with_delete_markers(s *S3Conf) error
- func ListObjectsV2_all_objs_max_keys(s *S3Conf) error
- func ListObjectsV2_both_delimiter_and_prefix(s *S3Conf) error
- func ListObjectsV2_both_start_after_and_continuation_token(s *S3Conf) error
- func ListObjectsV2_exceeding_max_keys(s *S3Conf) error
- func ListObjectsV2_full_pagination(s *S3Conf) error
- func ListObjectsV2_invalid_parent_prefix(s *S3Conf) error
- func ListObjectsV2_list_all_objs(s *S3Conf) error
- func ListObjectsV2_mp_masking_delimiter(s *S3Conf) error
- func ListObjectsV2_mp_masking_start_after(s *S3Conf) error
- func ListObjectsV2_mp_masking_truncation(s *S3Conf) error
- func ListObjectsV2_non_truncated_common_prefixes(s *S3Conf) error
- func ListObjectsV2_pagination_with_delimiter(s *S3Conf) error
- func ListObjectsV2_should_not_list_pending_mps(s *S3Conf) error
- func ListObjectsV2_single_dir_object_with_delim_and_prefix(s *S3Conf) error
- func ListObjectsV2_start_after(s *S3Conf) error
- func ListObjectsV2_start_after_continuation_token(s *S3Conf) error
- func ListObjectsV2_start_after_empty_result(s *S3Conf) error
- func ListObjectsV2_start_after_not_in_list(s *S3Conf) error
- func ListObjectsV2_truncated_common_prefixes(s *S3Conf) error
- func ListObjectsV2_with_checksum(s *S3Conf) error
- func ListObjectsV2_with_owner(s *S3Conf) error
- func ListObjects_check_owner(s *S3Conf) error
- func ListObjects_delimiter(s *S3Conf) error
- func ListObjects_exceeding_max_keys(s *S3Conf) error
- func ListObjects_invalid_max_keys(s *S3Conf) error
- func ListObjects_list_all_objs(s *S3Conf) error
- func ListObjects_marker_not_from_obj_list(s *S3Conf) error
- func ListObjects_max_keys_0(s *S3Conf) error
- func ListObjects_max_keys_none(s *S3Conf) error
- func ListObjects_mp_masking_delimiter(s *S3Conf) error
- func ListObjects_mp_masking_truncation(s *S3Conf) error
- func ListObjects_mp_masking_with_marker(s *S3Conf) error
- func ListObjects_nested_dir_file_objs(s *S3Conf) error
- func ListObjects_non_existing_bucket(s *S3Conf) error
- func ListObjects_non_truncated_common_prefixes(s *S3Conf) error
- func ListObjects_paginated(s *S3Conf) error
- func ListObjects_should_not_list_pending_mps(s *S3Conf) error
- func ListObjects_start_after(s *S3Conf) error
- func ListObjects_truncated(s *S3Conf) error
- func ListObjects_truncated_with_delimiter(s *S3Conf) error
- func ListObjects_with_checksum(s *S3Conf) error
- func ListObjects_with_prefix(s *S3Conf) error
- func ListParts_default_max_parts(s *S3Conf) error
- func ListParts_exceeding_max_parts(s *S3Conf) error
- func ListParts_incorrect_object_key(s *S3Conf) error
- func ListParts_incorrect_uploadId(s *S3Conf) error
- func ListParts_invalid_max_parts(s *S3Conf) error
- func ListParts_invalid_part_number_marker(s *S3Conf) error
- func ListParts_null_checksums(s *S3Conf) error
- func ListParts_success(s *S3Conf) error
- func ListParts_truncated(s *S3Conf) error
- func ListParts_upload_id_path_traversal(s *S3Conf) error
- func ListParts_with_checksums(s *S3Conf) error
- func NewHasher(algo types.ChecksumAlgorithm) (hash.Hash, error)
- func NoAclMode_CreateBucket_with_acl(s *S3Conf) error
- func NoAclMode_PutBucketAcl(s *S3Conf) error
- func ObjectLock_trailing_slash_counterpart(s *S3Conf) error
- func ObjectTagging_trailing_slash_counterpart(s *S3Conf) error
- func PostObject_access_denied(s *S3Conf) error
- func PostObject_bucket_policy_explicit_deny(s *S3Conf) error
- func PostObject_bucket_policy_object_resource(s *S3Conf) error
- func PostObject_checksums_success(s *S3Conf) error
- func PostObject_default_content_type(s *S3Conf) error
- func PostObject_empty_tag_set_requires_only_put_object(s *S3Conf) error
- func PostObject_expired_due_to_date(s *S3Conf) error
- func PostObject_incorrect_region(s *S3Conf) error
- func PostObject_invalid_algorithm(s *S3Conf) error
- func PostObject_invalid_checksum_algorithm(s *S3Conf) error
- func PostObject_invalid_checksum_value(s *S3Conf) error
- func PostObject_invalid_content_type(s *S3Conf) error
- func PostObject_invalid_credential_format(s *S3Conf) error
- func PostObject_invalid_date(s *S3Conf) error
- func PostObject_invalid_object_names(s *S3Conf) error
- func PostObject_invalid_policy_document(s *S3Conf) error
- func PostObject_invalid_tagging(s *S3Conf) error
- func PostObject_invalid_website_redirect_location(s *S3Conf) error
- func PostObject_missing_boundary(s *S3Conf) error
- func PostObject_multiple_checksum_headers(s *S3Conf) error
- func PostObject_non_existing_access_key(s *S3Conf) error
- func PostObject_object_lock_default_retention(s *S3Conf) error
- func PostObject_object_lock_invalid_fields(s *S3Conf) error
- func PostObject_object_lock_missing_bucket_config(s *S3Conf) error
- func PostObject_object_lock_success(s *S3Conf) error
- func PostObject_partial_auth_fields(s *S3Conf) error
- func PostObject_policy_access_control(s *S3Conf) error
- func PostObject_policy_condition_key_mismatch(s *S3Conf) error
- func PostObject_policy_content_length_too_large(s *S3Conf) error
- func PostObject_policy_content_length_too_small(s *S3Conf) error
- func PostObject_policy_expired(s *S3Conf) error
- func PostObject_policy_extra_field(s *S3Conf) error
- func PostObject_policy_missing_bucket_condition(s *S3Conf) error
- func PostObject_should_ignore_anything_after_file(s *S3Conf) error
- func PostObject_signature_mismatch(s *S3Conf) error
- func PostObject_sse_c_not_implemented(s *S3Conf) error
- func PostObject_success(s *S3Conf) error
- func PostObject_success_double_dash_boundary(s *S3Conf) error
- func PostObject_success_status_200(s *S3Conf) error
- func PostObject_success_status_201(s *S3Conf) error
- func PostObject_success_with_meta_properties(s *S3Conf) error
- func PostObject_success_with_tagging(s *S3Conf) error
- func PostObject_tagging_bucket_policy_explicit_deny(s *S3Conf) error
- func PostObject_tagging_requires_put_object_tagging(s *S3Conf) error
- func PreflightOPTIONS_access_forbidden(s *S3Conf) error
- func PreflightOPTIONS_access_granted(s *S3Conf) error
- func PreflightOPTIONS_invalid_request_headers(s *S3Conf) error
- func PreflightOPTIONS_invalid_request_method(s *S3Conf) error
- func PreflightOPTIONS_missing_origin(s *S3Conf) error
- func PreflightOPTIONS_non_existing_bucket(s *S3Conf) error
- func PreflightOPTIONS_unset_bucket_cors(s *S3Conf) error
- func PresignedAuth_CopyObject_strips_aws_chunked_content_encoding(s *S3Conf) error
- func PresignedAuth_CreateMultipartUpload_strips_aws_chunked_content_encoding(s *S3Conf) error
- func PresignedAuth_ECDSA_not_supported(s *S3Conf) error
- func PresignedAuth_PutObject_strips_aws_chunked_content_encoding(s *S3Conf) error
- func PresignedAuth_PutObject_success(s *S3Conf) error
- func PresignedAuth_Put_GetObject_with_UTF8_chars(s *S3Conf) error
- func PresignedAuth_Put_GetObject_with_data(s *S3Conf) error
- func PresignedAuth_UploadPart(s *S3Conf) error
- func PresignedAuth_creds_incorrect_region(s *S3Conf) error
- func PresignedAuth_creds_incorrect_service(s *S3Conf) error
- func PresignedAuth_creds_invalid_date(s *S3Conf) error
- func PresignedAuth_creds_invalid_terminal(s *S3Conf) error
- func PresignedAuth_dates_mismatch(s *S3Conf) error
- func PresignedAuth_exceeding_expiration_query_param(s *S3Conf) error
- func PresignedAuth_expired_request(s *S3Conf) error
- func PresignedAuth_incorrect_secret_key(s *S3Conf) error
- func PresignedAuth_invalid_expiration_query_param(s *S3Conf) error
- func PresignedAuth_malformed_creds_invalid_parts(s *S3Conf) error
- func PresignedAuth_missing_credentials_query_param(s *S3Conf) error
- func PresignedAuth_missing_date_query(s *S3Conf) error
- func PresignedAuth_missing_expiration_query_param(s *S3Conf) error
- func PresignedAuth_missing_signature_query_param(s *S3Conf) error
- func PresignedAuth_missing_signed_headers_query_param(s *S3Conf) error
- func PresignedAuth_negative_expiration_query_param(s *S3Conf) error
- func PresignedAuth_non_existing_access_key_id(s *S3Conf) error
- func PresignedAuth_security_token_with_permanent_credentials(s *S3Conf) error
- func PresignedAuth_sigv2_not_supported(s *S3Conf) error
- func PresignedAuth_unsigned_non_required_header(s *S3Conf) error
- func PresignedAuth_unsigned_required_header(s *S3Conf) error
- func PresignedAuth_unsupported_algorithm(s *S3Conf) error
- func PublicBucket_default_private_bucket(s *S3Conf) error
- func PublicBucket_incorrect_sha256_hash(s *S3Conf) error
- func PublicBucket_object_version_actions(s *S3Conf) error
- func PublicBucket_object_version_actions_public_acl(s *S3Conf) error
- func PublicBucket_policy_deny_overrides_public_acl(s *S3Conf) error
- func PublicBucket_post_object_lock(s *S3Conf) error
- func PublicBucket_post_object_policy(s *S3Conf) error
- func PublicBucket_post_object_policy_deny_overrides_public_acl(s *S3Conf) error
- func PublicBucket_post_object_tagging(s *S3Conf) error
- func PublicBucket_public_acl(s *S3Conf) error
- func PublicBucket_public_bucket_policy(s *S3Conf) error
- func PublicBucket_public_object_policy(s *S3Conf) error
- func PublicBucket_put_object_default_retention(s *S3Conf) error
- func PublicBucket_put_object_lock(s *S3Conf) error
- func PublicBucket_put_object_lock_missing_bucket_lock(s *S3Conf) error
- func PublicBucket_put_object_tagging(s *S3Conf) error
- func PublicBucket_put_object_tagging_public_acl(s *S3Conf) error
- func PublicBucket_signed_streaming_payload(s *S3Conf) error
- func PublicBucket_upload_part_object_lock(s *S3Conf) error
- func PutBucketAccelerateConfiguration_not_implemented(s *S3Conf) error
- func PutBucketAcl_disabled(s *S3Conf) error
- func PutBucketAcl_empty_grantee_ID_in_body(s *S3Conf) error
- func PutBucketAcl_invalid_acl_acp_and_grants(s *S3Conf) error
- func PutBucketAcl_invalid_acl_canned_and_acp(s *S3Conf) error
- func PutBucketAcl_invalid_acl_canned_and_grants(s *S3Conf) error
- func PutBucketAcl_invalid_canned_acl(s *S3Conf) error
- func PutBucketAcl_invalid_empty_owner_id_in_body(s *S3Conf) error
- func PutBucketAcl_invalid_grantee_type_in_body(s *S3Conf) error
- func PutBucketAcl_invalid_owner(s *S3Conf) error
- func PutBucketAcl_invalid_owner_not_in_body(s *S3Conf) error
- func PutBucketAcl_invalid_permission_in_body(s *S3Conf) error
- func PutBucketAcl_non_existing_bucket(s *S3Conf) error
- func PutBucketAcl_none_of_the_options_specified(s *S3Conf) error
- func PutBucketAcl_success_access_denied(s *S3Conf) error
- func PutBucketAcl_success_acp(s *S3Conf) error
- func PutBucketAcl_success_canned_acl(s *S3Conf) error
- func PutBucketAcl_success_grants(s *S3Conf) error
- func PutBucketAnalyticsConfiguration_not_implemented(s *S3Conf) error
- func PutBucketCors_empty_cors_rules(s *S3Conf) error
- func PutBucketCors_invalid_allowed_origins(s *S3Conf) error
- func PutBucketCors_invalid_header(s *S3Conf) error
- func PutBucketCors_invalid_method(s *S3Conf) error
- func PutBucketCors_md5(s *S3Conf) error
- func PutBucketCors_non_existing_bucket(s *S3Conf) error
- func PutBucketCors_success(s *S3Conf) error
- func PutBucketEncryption_not_implemented(s *S3Conf) error
- func PutBucketIntelligentTieringConfiguration_not_implemented(s *S3Conf) error
- func PutBucketInventoryConfiguration_not_implemented(s *S3Conf) error
- func PutBucketLifecycleConfiguration_not_implemented(s *S3Conf) error
- func PutBucketLogging_not_implemented(s *S3Conf) error
- func PutBucketMetricsConfiguration_not_implemented(s *S3Conf) error
- func PutBucketNotificationConfiguratio_not_implemented(s *S3Conf) error
- func PutBucketOwnershipControls_empty_rules(s *S3Conf) error
- func PutBucketOwnershipControls_invalid_ownership(s *S3Conf) error
- func PutBucketOwnershipControls_multiple_rules(s *S3Conf) error
- func PutBucketOwnershipControls_non_existing_bucket(s *S3Conf) error
- func PutBucketOwnershipControls_success(s *S3Conf) error
- func PutBucketPolicy_action_resource_mismatch(s *S3Conf) error
- func PutBucketPolicy_any_char_match(s *S3Conf) error
- func PutBucketPolicy_condition_action_mismatch(s *S3Conf) error
- func PutBucketPolicy_condition_conditional_write_keys(s *S3Conf) error
- func PutBucketPolicy_condition_invalid_ip(s *S3Conf) error
- func PutBucketPolicy_condition_invalid_key(s *S3Conf) error
- func PutBucketPolicy_condition_invalid_operator(s *S3Conf) error
- func PutBucketPolicy_duplicate_resource(s *S3Conf) error
- func PutBucketPolicy_empty_principals_array(s *S3Conf) error
- func PutBucketPolicy_empty_principals_string(s *S3Conf) error
- func PutBucketPolicy_empty_resources_array(s *S3Conf) error
- func PutBucketPolicy_empty_resources_string(s *S3Conf) error
- func PutBucketPolicy_empty_statement(s *S3Conf) error
- func PutBucketPolicy_explicit_deny(s *S3Conf) error
- func PutBucketPolicy_incorrect_bucket_name(s *S3Conf) error
- func PutBucketPolicy_invalid_action(s *S3Conf) error
- func PutBucketPolicy_invalid_effect(s *S3Conf) error
- func PutBucketPolicy_invalid_json(s *S3Conf) error
- func PutBucketPolicy_invalid_resource_prefix(s *S3Conf) error
- func PutBucketPolicy_invalid_resource_with_starting_slash(s *S3Conf) error
- func PutBucketPolicy_multi_wildcard_resource(s *S3Conf) error
- func PutBucketPolicy_non_existing_bucket(s *S3Conf) error
- func PutBucketPolicy_non_existing_principals(s *S3Conf) error
- func PutBucketPolicy_principals_aws_struct_empty_string(s *S3Conf) error
- func PutBucketPolicy_principals_aws_struct_empty_string_slice(s *S3Conf) error
- func PutBucketPolicy_principals_incorrect_wildcard_usage(s *S3Conf) error
- func PutBucketPolicy_statement_not_provided(s *S3Conf) error
- func PutBucketPolicy_status(s *S3Conf) error
- func PutBucketPolicy_success(s *S3Conf) error
- func PutBucketPolicy_version(s *S3Conf) error
- func PutBucketReplication_not_implemented(s *S3Conf) error
- func PutBucketRequestPayment_not_implemented(s *S3Conf) error
- func PutBucketTagging_duplicate_keys(s *S3Conf) error
- func PutBucketTagging_invalid_tag_error_fields(s *S3Conf) error
- func PutBucketTagging_invalid_tags(s *S3Conf) error
- func PutBucketTagging_long_tags(s *S3Conf) error
- func PutBucketTagging_multibyte_tags(s *S3Conf) error
- func PutBucketTagging_non_existing_bucket(s *S3Conf) error
- func PutBucketTagging_success(s *S3Conf) error
- func PutBucketTagging_success_status(s *S3Conf) error
- func PutBucketTagging_tag_count_limit(s *S3Conf) error
- func PutBucketVersioning_invalid_status(s *S3Conf) error
- func PutBucketVersioning_non_existing_bucket(s *S3Conf) error
- func PutBucketVersioning_success_enabled(s *S3Conf) error
- func PutBucketVersioning_success_suspended(s *S3Conf) error
- func PutBucketWebsite_empty_configuration(s *S3Conf) error
- func PutBucketWebsite_empty_error_document_key(s *S3Conf) error
- func PutBucketWebsite_empty_routing_rule_condition(s *S3Conf) error
- func PutBucketWebsite_empty_routing_rule_redirect(s *S3Conf) error
- func PutBucketWebsite_empty_suffix(s *S3Conf) error
- func PutBucketWebsite_invalid_http_error_code(s *S3Conf) error
- func PutBucketWebsite_invalid_http_redirect_code(s *S3Conf) error
- func PutBucketWebsite_invalid_redirect_protocol(s *S3Conf) error
- func PutBucketWebsite_invalid_routing_rule_protocol(s *S3Conf) error
- func PutBucketWebsite_non_existing_bucket(s *S3Conf) error
- func PutBucketWebsite_redirectAll_index_error_routingRules(s *S3Conf) error
- func PutBucketWebsite_request_too_large(s *S3Conf) error
- func PutBucketWebsite_routing_rule_replace_key_and_prefix(s *S3Conf) error
- func PutBucketWebsite_success(s *S3Conf) error
- func PutBucketWebsite_success_redirect_all(s *S3Conf) error
- func PutBucketWebsite_suffix_with_slash(s *S3Conf) error
- func PutBucketWebsite_too_many_routing_rules(s *S3Conf) error
- func PutObjectAcl_not_implemented(s *S3Conf) error
- func PutObjectLegalHold_empty_version_id(s *S3Conf) error
- func PutObjectLegalHold_invalid_body(s *S3Conf) error
- func PutObjectLegalHold_invalid_status(s *S3Conf) error
- func PutObjectLegalHold_non_existing_bucket(s *S3Conf) error
- func PutObjectLegalHold_non_existing_object(s *S3Conf) error
- func PutObjectLegalHold_success(s *S3Conf) error
- func PutObjectLegalHold_unset_bucket_object_lock_config(s *S3Conf) error
- func PutObjectLockConfiguration_both_years_and_days(s *S3Conf) error
- func PutObjectLockConfiguration_default_retention_missing_period(s *S3Conf) error
- func PutObjectLockConfiguration_empty_request_body(s *S3Conf) error
- func PutObjectLockConfiguration_invalid_mode(s *S3Conf) error
- func PutObjectLockConfiguration_invalid_status(s *S3Conf) error
- func PutObjectLockConfiguration_invalid_years_days(s *S3Conf) error
- func PutObjectLockConfiguration_malformed_body(s *S3Conf) error
- func PutObjectLockConfiguration_non_existing_bucket(s *S3Conf) error
- func PutObjectLockConfiguration_not_enabled_on_bucket_creation(s *S3Conf) error
- func PutObjectLockConfiguration_rule_without_default_retention(s *S3Conf) error
- func PutObjectLockConfiguration_success(s *S3Conf) error
- func PutObjectRetention_empty_version_id(s *S3Conf) error
- func PutObjectRetention_expired_retain_until_date(s *S3Conf) error
- func PutObjectRetention_invalid_mode(s *S3Conf) error
- func PutObjectRetention_non_existing_bucket(s *S3Conf) error
- func PutObjectRetention_non_existing_object(s *S3Conf) error
- func PutObjectRetention_overwrite_compliance_mode(s *S3Conf) error
- func PutObjectRetention_overwrite_compliance_with_compliance(s *S3Conf) error
- func PutObjectRetention_overwrite_governance_with_governance(s *S3Conf) error
- func PutObjectRetention_overwrite_governance_with_permission(s *S3Conf) error
- func PutObjectRetention_overwrite_governance_without_bypass_specified(s *S3Conf) error
- func PutObjectRetention_rewrite_same_date(s *S3Conf) error
- func PutObjectRetention_shorten_compliance_denied(s *S3Conf) error
- func PutObjectRetention_shorten_governance_with_bypass(s *S3Conf) error
- func PutObjectRetention_shorten_governance_without_bypass(s *S3Conf) error
- func PutObjectRetention_success(s *S3Conf) error
- func PutObjectRetention_unset_bucket_object_lock_config(s *S3Conf) error
- func PutObjectTagging_duplicate_keys(s *S3Conf) error
- func PutObjectTagging_empty_version_id(s *S3Conf) error
- func PutObjectTagging_invalid_tag_error_fields(s *S3Conf) error
- func PutObjectTagging_invalid_tags(s *S3Conf) error
- func PutObjectTagging_long_tags(s *S3Conf) error
- func PutObjectTagging_non_existing_object(s *S3Conf) error
- func PutObjectTagging_success(s *S3Conf) error
- func PutObjectTagging_tag_count_limit(s *S3Conf) error
- func PutObject_aborted_plain_body(s *S3Conf) error
- func PutObject_checksum_algorithm_and_header_mismatch(s *S3Conf) error
- func PutObject_checksums_success(s *S3Conf) error
- func PutObject_conditional_writes(s *S3Conf) error
- func PutObject_data_integrity_etag(s *S3Conf) error
- func PutObject_default_checksum(s *S3Conf) error
- func PutObject_default_content_type(s *S3Conf) error
- func PutObject_default_retention_checksum_required(s *S3Conf) error
- func PutObject_dir_obj_with_data(s *S3Conf) error
- func PutObject_dir_object_checksums_success(s *S3Conf) error
- func PutObject_dir_object_data_integrity_etag(s *S3Conf) error
- func PutObject_dir_object_default_checksum(s *S3Conf) error
- func PutObject_dir_object_overwrite_resets_attributes(s *S3Conf) error
- func PutObject_false_negative_object_names(s *S3Conf) error
- func PutObject_incorrect_checksums(s *S3Conf) error
- func PutObject_invalid_checksum_header(s *S3Conf) error
- func PutObject_invalid_credentials(s *S3Conf) error
- func PutObject_invalid_legal_hold(s *S3Conf) error
- func PutObject_invalid_object_lock_mode(s *S3Conf) error
- func PutObject_invalid_object_names(s *S3Conf) error
- func PutObject_invalid_retain_until_date(s *S3Conf) error
- func PutObject_invalid_website_redirect_location(s *S3Conf) error
- func PutObject_long_metadata(s *S3Conf) error
- func PutObject_md5(s *S3Conf) error
- func PutObject_missing_bucket_lock(s *S3Conf) error
- func PutObject_missing_object_lock_retention_config(s *S3Conf) error
- func PutObject_multiple_checksum_headers(s *S3Conf) error
- func PutObject_name_too_long(s *S3Conf) error
- func PutObject_non_existing_bucket(s *S3Conf) error
- func PutObject_object_acl_not_supported(s *S3Conf) error
- func PutObject_object_lock_checksum_required(s *S3Conf) error
- func PutObject_object_lock_headers_validation(s *S3Conf) error
- func PutObject_overwrite_dir_obj(s *S3Conf) error
- func PutObject_overwrite_file_obj(s *S3Conf) error
- func PutObject_overwrite_file_obj_with_nested_obj(s *S3Conf) error
- func PutObject_overwrite_multipart_object(s *S3Conf) error
- func PutObject_overwrite_resets_attributes(s *S3Conf) error
- func PutObject_past_retain_until_date(s *S3Conf) error
- func PutObject_plain_body_with_decoded_length(s *S3Conf) error
- func PutObject_plain_stores_aws_chunked_content_encoding(s *S3Conf) error
- func PutObject_race_with_delete(s *S3Conf) error
- func PutObject_racey_success(s *S3Conf) error
- func PutObject_should_combine_metadata(s *S3Conf) error
- func PutObject_special_chars(s *S3Conf) error
- func PutObject_sse_c_invalid_headers(s *S3Conf) error
- func PutObject_sse_c_not_implemented(s *S3Conf) error
- func PutObject_sse_c_requires_tls(s *S3Conf) error
- func PutObject_success(s *S3Conf) error
- func PutObject_tagging(s *S3Conf) error
- func PutObject_tagging_invalid_argument_value(s *S3Conf) error
- func PutObject_unsigned_payload_with_aws_chunked_content_encoding(s *S3Conf) error
- func PutObject_unsupported_sse_not_implemented(s *S3Conf) error
- func PutObject_windows_reserved_names(s *S3Conf) error
- func PutObject_with_metadata(s *S3Conf) error
- func PutObject_with_object_lock(s *S3Conf) error
- func PutObject_with_slashes(s *S3Conf) error
- func PutPublicAccessBlock_not_implemented(s *S3Conf) error
- func RouterCopySourceNotAllowed(s *S3Conf) error
- func RouterGetUploadsWithKey(s *S3Conf) error
- func RouterInvalidURLEscape(s *S3Conf) error
- func RouterListVersionsWithKey(s *S3Conf) error
- func RouterObjectAnnotationNotImplemented(s *S3Conf) error
- func RouterObjectTorrentMethodNotAllowed(s *S3Conf) error
- func RouterPUTObjectOnlyUploadId(s *S3Conf) error
- func RouterPostObjectWithoutQuery(s *S3Conf) error
- func RouterPostRoot(s *S3Conf) error
- func RouterPutPartNumberWithoutUploadId(s *S3Conf) error
- func RouterRenameObjectNotImplemented(s *S3Conf) error
- func RouterUploadsWithUploadId(s *S3Conf) error
- func S3IAMAccessControl_access_key_last_used_records_s3(s *S3Conf) error
- func S3IAMAccessControl_bucket_policy_allows_without_identity_policy(s *S3Conf) error
- func S3IAMAccessControl_bucket_policy_explicit_deny(s *S3Conf) error
- func S3IAMAccessControl_compliance_mode_not_bypassable(s *S3Conf) error
- func S3IAMAccessControl_condition_conditional_write_keys_cover_copies(s *S3Conf) error
- func S3IAMAccessControl_condition_conditional_write_keys_ignore_reads(s *S3Conf) error
- func S3IAMAccessControl_condition_conditional_write_values(s *S3Conf) error
- func S3IAMAccessControl_condition_identity_keys(s *S3Conf) error
- func S3IAMAccessControl_condition_if_match_bucket_level_write(s *S3Conf) error
- func S3IAMAccessControl_condition_if_match_delete_object(s *S3Conf) error
- func S3IAMAccessControl_condition_if_match_ignores_delete_objects(s *S3Conf) error
- func S3IAMAccessControl_condition_if_match_versioned_delete(s *S3Conf) error
- func S3IAMAccessControl_condition_if_none_match_required(s *S3Conf) error
- func S3IAMAccessControl_condition_multiple_keys_anded(s *S3Conf) error
- func S3IAMAccessControl_condition_negated_operator_needs_context(s *S3Conf) error
- func S3IAMAccessControl_condition_on_deny_statement(s *S3Conf) error
- func S3IAMAccessControl_condition_principal_tag(s *S3Conf) error
- func S3IAMAccessControl_condition_request_keys(s *S3Conf) error
- func S3IAMAccessControl_condition_source_ip(s *S3Conf) error
- func S3IAMAccessControl_copy_object_requires_both_sides(s *S3Conf) error
- func S3IAMAccessControl_copy_object_tagging_split_sources(s *S3Conf) error
- func S3IAMAccessControl_create_bucket(s *S3Conf) error
- func S3IAMAccessControl_create_multipart_upload_tagging_split_sources(s *S3Conf) error
- func S3IAMAccessControl_delete_objects_authorizes_each_key(s *S3Conf) error
- func S3IAMAccessControl_delete_objects_bucket_policy_deny_per_key(s *S3Conf) error
- func S3IAMAccessControl_delete_objects_deny_across_versioned_split(s *S3Conf) error
- func S3IAMAccessControl_delete_objects_version_needs_separate_permission(s *S3Conf) error
- func S3IAMAccessControl_governance_bypass_delete_objects(s *S3Conf) error
- func S3IAMAccessControl_governance_bypass_put_object_retention(s *S3Conf) error
- func S3IAMAccessControl_governance_bypass_sources(s *S3Conf) error
- func S3IAMAccessControl_governance_without_bypass_header(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_action_wildcards(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_allows_without_bucket_policy(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_bucket_vs_object_arn(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_explicit_deny_wins(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_not_action_and_not_resource(s *S3Conf) error
- func S3IAMAccessControl_identity_policy_resource_scoping(s *S3Conf) error
- func S3IAMAccessControl_inactive_and_deleted_credentials(s *S3Conf) error
- func S3IAMAccessControl_list_buckets(s *S3Conf) error
- func S3IAMAccessControl_multiple_inline_policies_combine(s *S3Conf) error
- func S3IAMAccessControl_no_policy_denies(s *S3Conf) error
- func S3IAMAccessControl_policy_combinations(s *S3Conf) error
- func S3IAMAccessControl_post_object_identity_policy_resource_scoping(s *S3Conf) error
- func S3IAMAccessControl_post_object_lock_identity_policy(s *S3Conf) error
- func S3IAMAccessControl_post_object_tagging_identity_policy(s *S3Conf) error
- func S3IAMAccessControl_post_object_tagging_split_sources(s *S3Conf) error
- func S3IAMAccessControl_put_object_lock_split_sources(s *S3Conf) error
- func S3IAMAccessControl_put_object_tagging_split_sources(s *S3Conf) error
- func S3IAMAccessControl_retention_extension_needs_no_bypass(s *S3Conf) error
- func S3IAMAccessControl_retention_shortening_needs_bypass(s *S3Conf) error
- func S3IAMAccessControl_root_bypasses_policies(s *S3Conf) error
- func S3IAMPrincipal_accepted_forms(s *S3Conf) error
- func S3IAMPrincipal_account_delegates_but_does_not_grant(s *S3Conf) error
- func S3IAMPrincipal_deleted_user_arn_rejected(s *S3Conf) error
- func S3IAMPrincipal_empty_forms(s *S3Conf) error
- func S3IAMPrincipal_pathed_user_arn(s *S3Conf) error
- func S3IAMPrincipal_rejected_forms(s *S3Conf) error
- func S3IAMPrincipal_role_arn_does_not_match_a_user(s *S3Conf) error
- func S3IAMPrincipal_user_arn_names_only_that_user(s *S3Conf) error
- func S3IAMPrincipal_wildcard_grants_everyone(s *S3Conf) error
- func S3IAMSession_AssumeRoleWithWebIdentity_github_oidc_live(s *S3Conf) error
- func S3IAMSession_GetRole_role_last_used_recorded(s *S3Conf) error
- func S3IAMSession_bucket_policy_account_delegates(s *S3Conf) error
- func S3IAMSession_bucket_policy_allows_without_role_policy(s *S3Conf) error
- func S3IAMSession_bucket_policy_deny_overrides_role_allow(s *S3Conf) error
- func S3IAMSession_bucket_policy_names_one_session(s *S3Conf) error
- func S3IAMSession_bucket_policy_role_arn_covers_every_session(s *S3Conf) error
- func S3IAMSession_bucket_policy_session_principal_forms(s *S3Conf) error
- func S3IAMSession_condition_identity_keys(s *S3Conf) error
- func S3IAMSession_create_bucket_via_role_policy(s *S3Conf) error
- func S3IAMSession_delete_objects_authorizes_each_key(s *S3Conf) error
- func S3IAMSession_deleted_role_denies(s *S3Conf) error
- func S3IAMSession_get_caller_identity_matches_s3_principal(s *S3Conf) error
- func S3IAMSession_governance_bypass_via_role_policy(s *S3Conf) error
- func S3IAMSession_missing_and_wrong_security_token(s *S3Conf) error
- func S3IAMSession_presigned_url_with_session_credentials(s *S3Conf) error
- func S3IAMSession_role_last_used_records_s3(s *S3Conf) error
- func S3IAMSession_role_policy_allows(s *S3Conf) error
- func S3IAMSession_role_policy_deny_overrides_session_allow(s *S3Conf) error
- func S3IAMSession_role_policy_explicit_deny_wins(s *S3Conf) error
- func S3IAMSession_role_policy_resource_scoped(s *S3Conf) error
- func S3IAMSession_role_without_policy_denied(s *S3Conf) error
- func S3IAMSession_session_policy_cannot_widen_role(s *S3Conf) error
- func S3IAMSession_session_policy_explicit_deny_overrides_role(s *S3Conf) error
- func S3IAMSession_session_policy_filters_bucket_policy_grant(s *S3Conf) error
- func S3IAMSession_session_policy_narrows_role(s *S3Conf) error
- func S3IAMSession_session_policy_without_role_policy_denied(s *S3Conf) error
- func Server_large_http_header(s *S3Conf) error
- func SignedStreamingPayloadTrailer_bad_digest(s *S3Conf) error
- func SignedStreamingPayloadTrailer_incomplete_body(s *S3Conf) error
- func SignedStreamingPayloadTrailer_invalid_checksum(s *S3Conf) error
- func SignedStreamingPayloadTrailer_malformed_trailer(s *S3Conf) error
- func SignedStreamingPayloadTrailer_missing_x_amz_trailer_header(s *S3Conf) error
- func SignedStreamingPayloadTrailer_success(s *S3Conf) error
- func SignedStreamingPayload_decoded_content_length_mismatch(s *S3Conf) error
- func SignedStreamingPayload_invalid_chunk_size(s *S3Conf) error
- func SignedStreamingPayload_invalid_encoding(s *S3Conf) error
- func TestAbortMultipartUpload(ts *TestState)
- func TestAccessControl(ts *TestState)
- func TestAuthentication(ts *TestState)
- func TestCORSMiddleware(ts *TestState)
- func TestCompleteMultipartUpload(ts *TestState)
- func TestCopyObject(ts *TestState)
- func TestCreateBucket(ts *TestState)
- func TestCreateMultipartUpload(ts *TestState)
- func TestDataIntegrityETag(ts *TestState)
- func TestDeleteBucket(ts *TestState)
- func TestDeleteBucketCors(ts *TestState)
- func TestDeleteBucketOwnershipControls(ts *TestState)
- func TestDeleteBucketPolicy(ts *TestState)
- func TestDeleteBucketTagging(ts *TestState)
- func TestDeleteBucketWebsite(ts *TestState)
- func TestDeleteObject(ts *TestState)
- func TestDeleteObjectTagging(ts *TestState)
- func TestDeleteObjects(ts *TestState)
- func TestDownload(s *S3Conf, files int, objSize int64, bucket, prefix string) error
- func TestFullFlow(ts *TestState)
- func TestGatewayIAM(ts *TestState)
- func TestGetBucketAcl(ts *TestState)
- func TestGetBucketCors(ts *TestState)
- func TestGetBucketLocation(ts *TestState)
- func TestGetBucketOwnershipControls(ts *TestState)
- func TestGetBucketPolicy(ts *TestState)
- func TestGetBucketPolicyStatus(ts *TestState)
- func TestGetBucketTagging(ts *TestState)
- func TestGetBucketWebsite(ts *TestState)
- func TestGetObject(ts *TestState)
- func TestGetObjectAttributes(ts *TestState)
- func TestGetObjectLegalHold(ts *TestState)
- func TestGetObjectLockConfiguration(ts *TestState)
- func TestGetObjectRetention(ts *TestState)
- func TestGetObjectTagging(ts *TestState)
- func TestHeadBucket(ts *TestState)
- func TestHeadObject(ts *TestState)
- func TestIAM(ts *TestState)
- func TestIAMAccessControl(ts *TestState)
- func TestIAMAddClientIDToOpenIDConnectProvider(ts *TestState)
- func TestIAMAssumeRoleWithWebIdentity(ts *TestState)
- func TestIAMAuth(ts *TestState)
- func TestIAMCreateAccessKey(ts *TestState)
- func TestIAMCreateOpenIDConnectProvider(ts *TestState)
- func TestIAMCreateRole(ts *TestState)
- func TestIAMCreateUser(ts *TestState)
- func TestIAMDeleteAccessKey(ts *TestState)
- func TestIAMDeleteOpenIDConnectProvider(ts *TestState)
- func TestIAMDeleteRole(ts *TestState)
- func TestIAMDeleteRolePolicy(ts *TestState)
- func TestIAMDeleteUser(ts *TestState)
- func TestIAMDeleteUserPolicy(ts *TestState)
- func TestIAMGetAccessKeyLastUsed(ts *TestState)
- func TestIAMGetCallerIdentity(ts *TestState)
- func TestIAMGetOpenIDConnectProvider(ts *TestState)
- func TestIAMGetRole(ts *TestState)
- func TestIAMGetRolePolicy(ts *TestState)
- func TestIAMGetUser(ts *TestState)
- func TestIAMGetUserPolicy(ts *TestState)
- func TestIAMListAccessKeys(ts *TestState)
- func TestIAMListOpenIDConnectProviderTags(ts *TestState)
- func TestIAMListOpenIDConnectProviders(ts *TestState)
- func TestIAMListRolePolicies(ts *TestState)
- func TestIAMListRoleTags(ts *TestState)
- func TestIAMListRoles(ts *TestState)
- func TestIAMListUserPolicies(ts *TestState)
- func TestIAMListUserTags(ts *TestState)
- func TestIAMListUsers(ts *TestState)
- func TestIAMPutRolePolicy(ts *TestState)
- func TestIAMPutUserPolicy(ts *TestState)
- func TestIAMQueryAuth(ts *TestState)
- func TestIAMRemoveClientIDFromOpenIDConnectProvider(ts *TestState)
- func TestIAMTagOpenIDConnectProvider(ts *TestState)
- func TestIAMTagRole(ts *TestState)
- func TestIAMTagUser(ts *TestState)
- func TestIAMUntagOpenIDConnectProvider(ts *TestState)
- func TestIAMUntagRole(ts *TestState)
- func TestIAMUntagUser(ts *TestState)
- func TestIAMUpdateAccessKey(ts *TestState)
- func TestIAMUpdateAssumeRolePolicy(ts *TestState)
- func TestIAMUpdateOpenIDConnectProviderThumbprint(ts *TestState)
- func TestIAMUpdateUser(ts *TestState)
- func TestListBuckets(ts *TestState)
- func TestListMultipartUploads(ts *TestState)
- func TestListObjectVersions_VD(ts *TestState)
- func TestListObjects(ts *TestState)
- func TestListObjectsV2(ts *TestState)
- func TestListParts(ts *TestState)
- func TestNoAclMode(ts *TestState)
- func TestNotImplementedActions(ts *TestState)
- func TestPosix(ts *TestState)
- func TestPostObject(ts *TestState)
- func TestPreflightOPTIONSEndpoint(ts *TestState)
- func TestPresignedAuthentication(ts *TestState)
- func TestPublicBuckets(ts *TestState)
- func TestPutBucketAcl(ts *TestState)
- func TestPutBucketCors(ts *TestState)
- func TestPutBucketOwnershipControls(ts *TestState)
- func TestPutBucketPolicy(ts *TestState)
- func TestPutBucketTagging(ts *TestState)
- func TestPutBucketWebsite(ts *TestState)
- func TestPutObject(ts *TestState)
- func TestPutObjectLegalHold(ts *TestState)
- func TestPutObjectLockConfiguration(ts *TestState)
- func TestPutObjectRetention(ts *TestState)
- func TestPutObjectTagging(ts *TestState)
- func TestReqPerSec(s *S3Conf, totalReqs int, bucket string) error
- func TestRouter(ts *TestState)
- func TestS3IAMAccessControl(ts *TestState)
- func TestS3IAMSessionAccessControl(ts *TestState)
- func TestSSECNotImplemented(ts *TestState)
- func TestSSECTransport(ts *TestState)
- func TestScoutfs(ts *TestState)
- func TestServer(ts *TestState)
- func TestSignedStreaminPayload(ts *TestState)
- func TestSignedStreaminPayloadTrailer(ts *TestState)
- func TestUnsignedStreaminPayloadTrailer(ts *TestState)
- func TestUpload(s *S3Conf, files int, objSize int64, bucket, prefix string) error
- func TestUploadPart(ts *TestState)
- func TestUploadPartCopy(ts *TestState)
- func TestVersioning(ts *TestState)
- func TestVersioningDisabled(ts *TestState)
- func TestWORMProtection(ts *TestState)
- func TestWebsiteHosting(ts *TestState)
- func UnsignedStreaminPayloadTrailer_malformed_trailer(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_UploadPart_no_trailer_composite_checksum(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_UploadPart_no_trailer_full_object(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_UploadPart_success_with_trailer(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_UploadPart_trailer_and_mp_algo_mismatch(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_aborted_connection(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_content_length_payload_size_mismatch(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_incomplete_body(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_incorrect_trailing_checksum(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_invalid_chunk_size(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_invalid_trailing_checksum(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_missing_invalid_dec_content_length(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_multiple_checksum_headers(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_no_payload_trailer_only_headers(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_no_trailer_should_calculate_crc64nvme(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_not_allowed(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_sdk_algo_and_trailer_mismatch(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_strips_aws_chunked_content_encoding(s *S3Conf) error
- func UnsignedStreamingPayloadTrailer_success_both_sdk_algo_and_trailer(s *S3Conf) error
- func UploadPartCopy_by_range_invalid_ranges(s *S3Conf) error
- func UploadPartCopy_by_range_success(s *S3Conf) error
- func UploadPartCopy_conditional_reads(s *S3Conf) error
- func UploadPartCopy_data_integrity_etag(s *S3Conf) error
- func UploadPartCopy_exceeding_copy_source_range(s *S3Conf) error
- func UploadPartCopy_greater_range_than_obj_size(s *S3Conf) error
- func UploadPartCopy_incorrect_object_key(s *S3Conf) error
- func UploadPartCopy_incorrect_source_bucket_expected_owner(s *S3Conf) error
- func UploadPartCopy_incorrect_uploadId(s *S3Conf) error
- func UploadPartCopy_invalid_copy_source(s *S3Conf) error
- func UploadPartCopy_invalid_part_number(s *S3Conf) error
- func UploadPartCopy_non_existing_bucket(s *S3Conf) error
- func UploadPartCopy_non_existing_source_bucket(s *S3Conf) error
- func UploadPartCopy_non_existing_source_object_key(s *S3Conf) error
- func UploadPartCopy_should_calculate_the_checksum(s *S3Conf) error
- func UploadPartCopy_should_copy_the_checksum(s *S3Conf) error
- func UploadPartCopy_should_not_copy_the_checksum(s *S3Conf) error
- func UploadPartCopy_sse_c_not_implemented(s *S3Conf) error
- func UploadPartCopy_success(s *S3Conf) error
- func UploadPartCopy_upload_id_path_traversal(s *S3Conf) error
- func UploadPart_checksum_algorithm_mistmatch_on_initialization(s *S3Conf) error
- func UploadPart_checksum_algorithm_mistmatch_on_initialization_with_value(s *S3Conf) error
- func UploadPart_checksum_header_and_algo_mismatch(s *S3Conf) error
- func UploadPart_data_integrity_etag(s *S3Conf) error
- func UploadPart_default_retention_checksum_required(s *S3Conf) error
- func UploadPart_etag_quoting_consistency(s *S3Conf) error
- func UploadPart_incorrect_checksums(s *S3Conf) error
- func UploadPart_invalid_checksum_header(s *S3Conf) error
- func UploadPart_invalid_part_number(s *S3Conf) error
- func UploadPart_multiple_checksum_headers(s *S3Conf) error
- func UploadPart_no_checksum_with_composite_checksum_type(s *S3Conf) error
- func UploadPart_no_checksum_with_full_object_checksum_type(s *S3Conf) error
- func UploadPart_non_existing_bucket(s *S3Conf) error
- func UploadPart_non_existing_key(s *S3Conf) error
- func UploadPart_non_existing_mp_upload(s *S3Conf) error
- func UploadPart_object_lock_checksum_required(s *S3Conf) error
- func UploadPart_plain_body_with_decoded_length(s *S3Conf) error
- func UploadPart_sse_c_not_implemented(s *S3Conf) error
- func UploadPart_success(s *S3Conf) error
- func UploadPart_upload_id_path_traversal(s *S3Conf) error
- func UploadPart_with_checksums_success(s *S3Conf) error
- func VersioningDisabled_GetBucketVersioning_no_such_bucket(s *S3Conf) error
- func VersioningDisabled_GetBucketVersioning_not_configured(s *S3Conf) error
- func VersioningDisabled_PutBucketVersioning_not_configured(s *S3Conf) error
- func Versioning_AccessControl_DeleteObject_policy(s *S3Conf) error
- func Versioning_AccessControl_GetObjectAttributes_policy(s *S3Conf) error
- func Versioning_AccessControl_GetObjectVersion(s *S3Conf) error
- func Versioning_AccessControl_HeadObjectVersion(s *S3Conf) error
- func Versioning_AccessControl_object_tagging_policy(s *S3Conf) error
- func Versioning_CopyObject_conditional_writes(s *S3Conf) error
- func Versioning_CopyObject_encoded_versionid_separator_invalid_versionId(s *S3Conf) error
- func Versioning_CopyObject_from_a_delete_marker(s *S3Conf) error
- func Versioning_CopyObject_from_an_object_version(s *S3Conf) error
- func Versioning_CopyObject_invalid_versionId(s *S3Conf) error
- func Versioning_CopyObject_non_existing_version_id(s *S3Conf) error
- func Versioning_CopyObject_special_chars(s *S3Conf) error
- func Versioning_CopyObject_success(s *S3Conf) error
- func Versioning_CopyObject_to_itself(s *S3Conf) error
- func Versioning_CopyObject_to_itself_from_the_current_version(s *S3Conf) error
- func Versioning_DeleteBucket_not_empty(s *S3Conf) error
- func Versioning_DeleteObjectTagging_invalid_versionId(s *S3Conf) error
- func Versioning_DeleteObjectTagging_non_existing_object_version(s *S3Conf) error
- func Versioning_DeleteObject_conditional_delete_marker(s *S3Conf) error
- func Versioning_DeleteObject_delete_a_delete_marker(s *S3Conf) error
- func Versioning_DeleteObject_delete_marker_last_modified(s *S3Conf) error
- func Versioning_DeleteObject_delete_object_version(s *S3Conf) error
- func Versioning_DeleteObject_dir_object_latest_version(s *S3Conf) error
- func Versioning_DeleteObject_dir_object_with_children(s *S3Conf) error
- func Versioning_DeleteObject_implicit_dir(s *S3Conf) error
- func Versioning_DeleteObject_invalid_versionId(s *S3Conf) error
- func Versioning_DeleteObject_latest_version_null_version_order(s *S3Conf) error
- func Versioning_DeleteObject_latest_version_with_null_version(s *S3Conf) error
- func Versioning_DeleteObject_nested_dir_object(s *S3Conf) error
- func Versioning_DeleteObject_never_versioned_bucket(s *S3Conf) error
- func Versioning_DeleteObject_non_existing_object(s *S3Conf) error
- func Versioning_DeleteObject_non_existing_objects(s *S3Conf) error
- func Versioning_DeleteObject_promoted_version_attributes(s *S3Conf) error
- func Versioning_DeleteObject_promoted_version_last_modified(s *S3Conf) error
- func Versioning_DeleteObject_suspended(s *S3Conf) error
- func Versioning_DeleteObject_trailing_slash_counterpart(s *S3Conf) error
- func Versioning_DeleteObjects_conditional(s *S3Conf) error
- func Versioning_DeleteObjects_delete_deleteMarkers(s *S3Conf) error
- func Versioning_DeleteObjects_never_versioned_bucket(s *S3Conf) error
- func Versioning_DeleteObjects_success(s *S3Conf) error
- func Versioning_Delete_null_versionId_object(s *S3Conf) error
- func Versioning_Enable_object_lock(s *S3Conf) error
- func Versioning_GetObjectAttributes_delete_marker(s *S3Conf) error
- func Versioning_GetObjectAttributes_invalid_versionId(s *S3Conf) error
- func Versioning_GetObjectAttributes_object_version(s *S3Conf) error
- func Versioning_GetObjectLegalHold_invalid_versionId(s *S3Conf) error
- func Versioning_GetObjectLegalHold_non_existing_object_version(s *S3Conf) error
- func Versioning_GetObjectRetention_invalid_versionId(s *S3Conf) error
- func Versioning_GetObjectRetention_non_existing_object_version(s *S3Conf) error
- func Versioning_GetObjectTagging_invalid_versionId(s *S3Conf) error
- func Versioning_GetObjectTagging_non_existing_object_version(s *S3Conf) error
- func Versioning_GetObject_delete_marker(s *S3Conf) error
- func Versioning_GetObject_delete_marker_without_versionId(s *S3Conf) error
- func Versioning_GetObject_invalid_versionId(s *S3Conf) error
- func Versioning_GetObject_non_existing_object_version(s *S3Conf) error
- func Versioning_GetObject_null_versionId_obj(s *S3Conf) error
- func Versioning_GetObject_null_version_without_versionId(s *S3Conf) error
- func Versioning_GetObject_success(s *S3Conf) error
- func Versioning_HeadObject_delete_marker(s *S3Conf) error
- func Versioning_HeadObject_dir_object_versions(s *S3Conf) error
- func Versioning_HeadObject_invalid_parent(s *S3Conf) error
- func Versioning_HeadObject_invalid_versionId(s *S3Conf) error
- func Versioning_HeadObject_non_existing_object_version(s *S3Conf) error
- func Versioning_HeadObject_null_versionId_obj(s *S3Conf) error
- func Versioning_HeadObject_null_version_without_versionId(s *S3Conf) error
- func Versioning_HeadObject_success(s *S3Conf) error
- func Versioning_HeadObject_without_versionId(s *S3Conf) error
- func Versioning_Multipart_Upload_already_completed(s *S3Conf) error
- func Versioning_Multipart_Upload_conditional_writes_over_delete_marker(s *S3Conf) error
- func Versioning_Multipart_Upload_overwrite_an_object(s *S3Conf) error
- func Versioning_Multipart_Upload_overwrite_keeps_previous_version_metadata(s *S3Conf) error
- func Versioning_Multipart_Upload_success(s *S3Conf) error
- func Versioning_Multipart_Upload_suspended_overwrite_versioned_object(s *S3Conf) error
- func Versioning_ObjectTagging_trailing_slash_counterpart(s *S3Conf) error
- func Versioning_PutGetDeleteObjectTagging_delete_marker(s *S3Conf) error
- func Versioning_PutGetDeleteObjectTagging_success(s *S3Conf) error
- func Versioning_PutGetObjectLegalHold_delete_marker(s *S3Conf) error
- func Versioning_PutObjectLegalHold_invalid_versionId(s *S3Conf) error
- func Versioning_PutObjectLegalHold_non_existing_object_version(s *S3Conf) error
- func Versioning_PutObjectRetention_invalid_versionId(s *S3Conf) error
- func Versioning_PutObjectRetention_non_existing_object_version(s *S3Conf) error
- func Versioning_PutObjectTagging_invalid_versionId(s *S3Conf) error
- func Versioning_PutObjectTagging_non_existing_object_version(s *S3Conf) error
- func Versioning_PutObject_conditional_writes_over_delete_marker(s *S3Conf) error
- func Versioning_PutObject_dir_object_new_version_resets_attributes(s *S3Conf) error
- func Versioning_PutObject_new_version_resets_attributes(s *S3Conf) error
- func Versioning_PutObject_null_versionId_obj(s *S3Conf) error
- func Versioning_PutObject_over_delete_marker_resets_attributes(s *S3Conf) error
- func Versioning_PutObject_overwrite_null_versionId_obj(s *S3Conf) error
- func Versioning_PutObject_success(s *S3Conf) error
- func Versioning_PutObject_suspended_null_versionId_obj(s *S3Conf) error
- func Versioning_PutObject_suspended_null_version_resets_attributes(s *S3Conf) error
- func Versioning_Put_GetObjectLegalHold_success(s *S3Conf) error
- func Versioning_Put_GetObjectRetention_delete_marker(s *S3Conf) error
- func Versioning_Put_GetObjectRetention_success(s *S3Conf) error
- func Versioning_UploadPartCopy_encoded_versionid_separator_invalid_versionId(s *S3Conf) error
- func Versioning_UploadPartCopy_from_a_delete_marker(s *S3Conf) error
- func Versioning_UploadPartCopy_from_an_object_version(s *S3Conf) error
- func Versioning_UploadPartCopy_invalid_versionId(s *S3Conf) error
- func Versioning_UploadPartCopy_non_existing_versionId(s *S3Conf) error
- func Versioning_WORM_CompleteMultipartUpload_overwrite_locked_object(s *S3Conf) error
- func Versioning_WORM_CopyObject_overwrite_locked_object(s *S3Conf) error
- func Versioning_WORM_CopyObject_to_itself_locked_object(s *S3Conf) error
- func Versioning_WORM_DeleteObject_promoted_version_lock_settings(s *S3Conf) error
- func Versioning_WORM_PutObject_new_version_lock_settings(s *S3Conf) error
- func Versioning_WORM_PutObject_overwrite_locked_object(s *S3Conf) error
- func Versioning_WORM_delete_marker_locked_object_compliance_retention(s *S3Conf) error
- func Versioning_WORM_delete_marker_locked_object_governance_retention(s *S3Conf) error
- func Versioning_WORM_delete_marker_locked_object_legal_hold(s *S3Conf) error
- func Versioning_WORM_dir_object_lock_headers(s *S3Conf) error
- func Versioning_WORM_null_version_locked_with_legal_hold(s *S3Conf) error
- func Versioning_WORM_obj_version_locked_with_compliance_retention(s *S3Conf) error
- func Versioning_WORM_obj_version_locked_with_governance_retention(s *S3Conf) error
- func Versioning_WORM_obj_version_locked_with_legal_hold(s *S3Conf) error
- func Versioning_WORM_remove_delete_marker_under_bucket_default_retention(s *S3Conf) error
- func Versioning_WORM_trailing_slash_counterpart(s *S3Conf) error
- func Versioning_concurrent_upload_object(s *S3Conf) error
- func Versioning_object_lock_not_enabled_on_bucket_creation(s *S3Conf) error
- func Versioning_status_switch_to_suspended_with_object_lock(s *S3Conf) error
- func Versioning_unversioned_bucket_omits_versionId(s *S3Conf) error
- func WORMProtection_bucket_object_lock_configuration_governance_mode(s *S3Conf) error
- func WORMProtection_bucket_object_lock_governance_bypass_delete(s *S3Conf) error
- func WORMProtection_bucket_object_lock_governance_bypass_delete_multiple(s *S3Conf) error
- func WORMProtection_default_retention_applies_to_new_objects(s *S3Conf) error
- func WORMProtection_default_retention_explicit_lock_settings(s *S3Conf) error
- func WORMProtection_default_retention_set_at_create_multipart_upload(s *S3Conf) error
- func WORMProtection_default_retention_survives_rule_change(s *S3Conf) error
- func WORMProtection_delete_objects_locked_object_partial_success(s *S3Conf) error
- func WORMProtection_legal_hold_outlives_expired_retention(s *S3Conf) error
- func WORMProtection_object_lock_legal_hold_locked(s *S3Conf) error
- func WORMProtection_object_lock_retention_compliance_locked(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_delete(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_delete_mul(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_overwrite_copy(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_overwrite_mp(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_overwrite_post(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_bypass_overwrite_put(s *S3Conf) error
- func WORMProtection_object_lock_retention_governance_locked(s *S3Conf) error
- func WORMProtection_root_bypass_governance_retention_delete_object(s *S3Conf) error
- func WORMProtection_unable_to_overwrite_locked_object_copy(s *S3Conf) error
- func WORMProtection_unable_to_overwrite_locked_object_mp(s *S3Conf) error
- func WORMProtection_unable_to_overwrite_locked_object_post(s *S3Conf) error
- func WORMProtection_unable_to_overwrite_locked_object_put(s *S3Conf) error
- func WebsiteHosting_error_document_not_found(s *S3Conf) error
- func WebsiteHosting_error_document_served(s *S3Conf) error
- func WebsiteHosting_get_cors_headers(s *S3Conf) error
- func WebsiteHosting_head_cors_headers(s *S3Conf) error
- func WebsiteHosting_index_document(s *S3Conf) error
- func WebsiteHosting_index_error_document_and_routing_rules(s *S3Conf) error
- func WebsiteHosting_no_bucket_in_request_location(s *S3Conf) error
- func WebsiteHosting_no_error_document(s *S3Conf) error
- func WebsiteHosting_object_redirect_location(s *S3Conf) error
- func WebsiteHosting_options_preflight_access_forbidden(s *S3Conf) error
- func WebsiteHosting_options_preflight_access_granted(s *S3Conf) error
- func WebsiteHosting_options_preflight_missing_origin(s *S3Conf) error
- func WebsiteHosting_private_object_and_error_document(s *S3Conf) error
- func WebsiteHosting_redirect_all_requests(s *S3Conf) error
- func WebsiteHosting_routing_rule_no_match_serves_error_document(s *S3Conf) error
- func WebsiteHosting_routing_rule_post_request_redirect(s *S3Conf) error
- func WebsiteHosting_routing_rule_pre_request_redirect(s *S3Conf) error
- func WebsiteHosting_routing_rule_prefix_and_error_redirect(s *S3Conf) error
- func WebsiteHosting_url_encoded_object_key(s *S3Conf) error
- type APIErrorResponse
- type IAMErrorResponse
- type IntTest
- type IntTests
- type NW
- type ObjectMetaProps
- type Option
- func WithAccess(ak string) Option
- func WithAzureMode() Option
- func WithConcurrency(c int) Option
- func WithDebug() Option
- func WithDisableChecksum() Option
- func WithEndpoint(e string) Option
- func WithHostStyle() Option
- func WithIAMEndpoint(e string) Option
- func WithPartSize(p int64) Option
- func WithRegion(r string) Option
- func WithSecret(sk string) Option
- func WithSidecarMode() Option
- func WithTLSStatus(ts bool) Option
- func WithVersioningEnabled() Option
- func WithWebsiteDomain(d string) Option
- func WithWebsitePort(p string) Option
- func WithWebsiteScheme(scheme string) Option
- func WithWindowsMode() Option
- type PostRequestConfig
- type PreflightResult
- type PublicBucketTestCase
- type RReader
- type S3Conf
- func (c *S3Conf) Config() aws.Config
- func (c *S3Conf) DownloadData(w io.WriterAt, bucket, object string) (int64, error)
- func (c *S3Conf) GetAnonymousClient() *s3.Client
- func (c *S3Conf) GetClient() *s3.Client
- func (c *S3Conf) GetIAMClient() *iam.Client
- func (c *S3Conf) GetPresignClient() *s3.PresignClient
- func (c *S3Conf) GetSTSClient() *sts.Client
- func (c *S3Conf) UploadData(r io.Reader, bucket, object string) error
- type TestState
- type ZReader
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func AbortMultipartUpload_if_match_initiated_time ¶ added in v1.0.18
func AbortMultipartUpload_upload_id_path_traversal ¶ added in v1.9.0
func AccessControl_CopyObject_with_legal_hold_policy ¶ added in v1.5.0
func AccessControl_CopyObject_with_retention_policy ¶ added in v1.5.0
func AccessControl_CopyObject_with_tagging_policy ¶ added in v1.5.0
func AccessControl_CreateMultipartUpload_with_legal_hold_policy ¶ added in v1.5.0
func AccessControl_CreateMultipartUpload_with_retention_policy ¶ added in v1.5.0
func AccessControl_CreateMultipartUpload_with_tagging_policy ¶ added in v1.5.0
func AccessControl_PutObject_with_legal_hold_policy ¶ added in v1.5.0
func AccessControl_PutObject_with_retention_policy ¶ added in v1.5.0
func AccessControl_PutObject_with_tagging_policy ¶ added in v1.5.0
func AccessControl_acl_grant_excludes_bucket_configuration ¶ added in v1.9.0
func AccessControl_acl_grant_with_bucket_policy ¶ added in v1.9.0
func AccessControl_bucket_ownership_to_user ¶ added in v1.0.4
func AccessControl_bucket_policy_condition_binary_operator ¶ added in v1.8.0
AccessControl_bucket_policy_condition_binary_operator covers BinaryEquals against s3:prefix: AWS's own condition-operator reference documents the match as a literal string comparison between the policy's base64 text and the request context value
func AccessControl_bucket_policy_condition_bool_operator ¶ added in v1.8.0
AccessControl_bucket_policy_condition_bool_operator covers Bool against aws:SecureTransport, comparing it to whether s's own endpoint is actually using TLS - so this passes the same way against either an HTTP or HTTPS test target.
func AccessControl_bucket_policy_condition_date_operators ¶ added in v1.8.0
AccessControl_bucket_policy_condition_date_operators covers the Less/Greater halves of the Date family against aws:CurrentTime, using dates 48 hours in the past/future so the outcome is never flaky regardless of test-runner clock skew or how long the request takes. DateEquals/DateNotEquals aren't covered here - matching an exact instant against a live "now" is inherently flaky at this layer - but are exercised at internal/condition's unit-test layer (TestEvaluateConditionDate), which is what actually implements the comparison; only the request-to-context wiring is new here.
func AccessControl_bucket_policy_condition_explicit_deny_overrides_allow ¶ added in v1.8.0
AccessControl_bucket_policy_condition_explicit_deny_overrides_allow covers a Deny statement scoped by a matching IpAddress Condition overriding a broader, unconditional Allow — the same explicit-deny-wins precedence bucket policies already have for unconditional statements, now confirmed to hold once one side's match depends on Condition evaluation too.
func AccessControl_bucket_policy_condition_if_match_delete_object ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_match_delete_object covers the half of s3:if-match that isn't an upload: S3's conditional delete, which is the only other action a bucket policy may name the key on.
func AccessControl_bucket_policy_condition_if_match_value ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_match_value covers s3:if-match's value shape: the key carries the ETag with the surrounding quotes stripped, so a policy compares against the bare ETag whichever form the client puts on the wire.
func AccessControl_bucket_policy_condition_if_match_versioned_delete ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_match_versioned_delete pins the edge of s3:if-match's action set. A delete naming a version removes that version rather than overwriting the current one, so it is authorized as s3:DeleteObjectVersion — an action the key doesn't apply to, which is why PutBucketPolicy rejects a statement pairing the two. The key has to stay absent from the request context to match, or a wildcard-action statement would grant on a precondition the policy language can't name.
func AccessControl_bucket_policy_condition_if_none_match_copy ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_none_match_copy is the same "enforce conditional writes" pattern for a copy: its If-None-Match is a conditional write on the destination, so it populates the key just like an upload's.
func AccessControl_bucket_policy_condition_if_none_match_required ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_none_match_required is AWS's documented "enforce conditional writes" pattern: an unconditional Allow paired with a Deny that fires whenever the key is absent, forcing every upload to carry If-None-Match.
func AccessControl_bucket_policy_condition_if_none_match_value ¶ added in v1.9.0
AccessControl_bucket_policy_condition_if_none_match_value covers the key's value rather than its presence: the only value S3 accepts in an If-None-Match write is "*", and that is what the key carries verbatim - under StringEquals "*" is a literal, not a wildcard.
func AccessControl_bucket_policy_condition_ip_allow ¶ added in v1.8.0
AccessControl_bucket_policy_condition_ip_allow covers a bucket-policy Allow statement scoped by an IpAddress Condition matching the caller's real source IP: 0.0.0.0/0 matches any IPv4 address, so this exercises the Condition machinery without depending on the test runner's actual address.
func AccessControl_bucket_policy_condition_ip_deny_no_match ¶ added in v1.8.0
AccessControl_bucket_policy_condition_ip_deny_no_match covers the same shape as AccessControl_bucket_policy_condition_ip_allow with a CIDR (TEST-NET-3, RFC 5737) that can never match a real caller, so the Allow statement never applies and the request falls through to an implicit deny.
func AccessControl_bucket_policy_condition_not_ip_address_allow ¶ added in v1.8.0
AccessControl_bucket_policy_condition_not_ip_address_allow and ..._deny cover NotIpAddress, the negated counterpart of the IpAddress coverage above (AccessControl_bucket_policy_condition_ip_allow/ ..._ip_deny_no_match): it grants access when the caller's address falls OUTSIDE the given range.
func AccessControl_bucket_policy_condition_not_ip_address_deny ¶ added in v1.8.0
func AccessControl_bucket_policy_condition_null_operator ¶ added in v1.8.0
AccessControl_bucket_policy_condition_null_operator covers Null against s3:prefix's presence/absence: Null:"true" requires the key be absent (no Prefix parameter on the request at all), Null:"false" requires it be present.
func AccessControl_bucket_policy_condition_numeric_operators ¶ added in v1.8.0
AccessControl_bucket_policy_condition_numeric_operators covers the full Numeric family against s3:max-keys, populated from a ListObjectsV2 request's own MaxKeys parameter, binding to the request's actual MaxKeys value, not some default.
func AccessControl_bucket_policy_condition_s3_prefix ¶ added in v1.8.0
AccessControl_bucket_policy_condition_s3_prefix covers the s3:prefix condition key, populated from a ListObjectsV2 request's own Prefix parameter: an Allow scoped to a specific prefix grants a request naming that exact prefix and denies one that doesn't.
func AccessControl_bucket_policy_condition_string_operators ¶ added in v1.8.0
AccessControl_bucket_policy_condition_string_operators covers the full String family (Equals/NotEquals/Like/NotLike, both plain and IgnoreCase) against s3:prefix, populated from a ListObjectsV2 request's own Prefix parameter.
func AccessControl_copy_object_with_starting_slash_for_user ¶ added in v1.0.6
func AccessControl_default_ACL_user_access_denied ¶
Access control tests (with bucket ACLs and Policies)
func AccessControl_owner_deny_only_policy_keeps_access ¶ added in v1.9.0
func AccessControl_owner_policy_lockout_protection ¶ added in v1.9.0
func AccessControl_policy_normalizes_object_key_for_get_put_delete ¶ added in v1.5.0
func AccessControl_root_PutBucketAcl ¶ added in v1.0.4
func AccessControl_user_PutBucketAcl_with_policy_access ¶ added in v1.0.6
func Authentication_credentials_incorrect_region_head ¶ added in v1.9.0
Authentication_credentials_incorrect_region_head verifies that a HEAD request signed for the wrong region reports the gateway region in the x-amz-bucket-region response header. HEAD responses carry no body, so the header is the only channel through which a client can discover the region and retry against it, which is how the aws sdks recover from the mismatch.
func Authentication_credentials_invalid_terminal ¶ added in v1.0.19
func Authentication_invalid_sha256_payload_hash ¶ added in v1.0.17
func Authentication_malformed_component ¶ added in v1.0.19
func Authentication_malformed_credential ¶ added in v1.0.19
func Authentication_missing_components ¶ added in v1.0.19
func Authentication_missing_credentials ¶ added in v1.0.19
func Authentication_missing_signature ¶ added in v1.0.19
func Authentication_missing_signedheaders ¶ added in v1.0.19
func Authentication_sigv2_not_supported ¶ added in v1.5.0
func Authentication_unsigned_non_required_header ¶ added in v1.5.0
func Authentication_unsigned_required_header ¶ added in v1.5.0
func Authentication_with_expect_header ¶ added in v1.1.0
func CORSMiddleware_access_forbidden ¶ added in v1.0.17
func CORSMiddleware_access_granted ¶ added in v1.0.17
func CORSMiddleware_invalid_headers ¶ added in v1.0.17
func CORSMiddleware_invalid_method ¶ added in v1.0.17
CORS middleware tests
func CompleteMultipartUpload_aborted_upload_existing_key ¶ added in v1.9.0
func CompleteMultipartUpload_already_completed ¶ added in v1.4.1
func CompleteMultipartUpload_already_completed_different_parts ¶ added in v1.9.0
func CompleteMultipartUpload_already_completed_overwritten ¶ added in v1.9.0
func CompleteMultipartUpload_checksum_type_mismatch ¶ added in v1.0.11
func CompleteMultipartUpload_conditional_writes ¶ added in v1.0.18
func CompleteMultipartUpload_data_integrity_etag ¶ added in v1.8.0
func CompleteMultipartUpload_default_content_type ¶ added in v1.4.1
func CompleteMultipartUpload_different_checksum_part ¶ added in v1.0.11
func CompleteMultipartUpload_empty_parts ¶ added in v1.0.10
func CompleteMultipartUpload_incorrect_checksum_part ¶ added in v1.0.11
func CompleteMultipartUpload_incorrect_final_checksums ¶ added in v1.0.11
func CompleteMultipartUpload_incorrect_part_number ¶ added in v1.0.11
func CompleteMultipartUpload_incorrect_parts_order ¶ added in v1.0.11
func CompleteMultipartUpload_invalid_ETag_error_fields ¶ added in v1.9.0
func CompleteMultipartUpload_invalid_checksum_part ¶ added in v1.0.11
func CompleteMultipartUpload_invalid_checksum_type ¶ added in v1.0.11
func CompleteMultipartUpload_invalid_final_checksums ¶ added in v1.0.11
func CompleteMultipartUpload_invalid_final_composite_checksum ¶ added in v1.0.19
func CompleteMultipartUpload_missing_part_checksum ¶ added in v1.0.11
func CompleteMultipartUpload_missing_part_fields ¶ added in v1.5.0
func CompleteMultipartUpload_mpu_object_size ¶ added in v1.0.11
func CompleteMultipartUpload_multiple_checksum_part ¶ added in v1.0.11
func CompleteMultipartUpload_multiple_final_checksums ¶ added in v1.0.11
func CompleteMultipartUpload_non_existing_upload_existing_key ¶ added in v1.9.0
func CompleteMultipartUpload_overwrite_dir_obj ¶ added in v1.9.0
func CompleteMultipartUpload_overwrite_dir_obj_delete_marker ¶ added in v1.9.0
func CompleteMultipartUpload_overwrite_resets_attributes ¶ added in v1.9.0
func CompleteMultipartUpload_racey_data_integrity ¶ added in v1.4.0
CompleteMultipartUpload_racey_data_integrity creates a single multipart upload, uploads its parts, then fires multiple concurrent CompleteMultipartUpload calls for the exact same upload ID. All calls must succeed and return the same ETag (idempotent completion). The surviving object must contain exactly the data that was uploaded. The whole sequence is repeated several times so that intermittent scheduling cannot hide a data-corruption bug.
func CompleteMultipartUpload_racey_success ¶ added in v1.0.8
func CompleteMultipartUpload_should_calculate_the_final_checksum_full_object ¶ added in v1.0.11
func CompleteMultipartUpload_should_ignore_the_final_checksum ¶ added in v1.0.11
func CompleteMultipartUpload_should_succeed_without_final_checksum_type ¶ added in v1.0.11
func CompleteMultipartUpload_should_verify_final_composite_checksum ¶ added in v1.0.19
func CompleteMultipartUpload_should_verify_the_final_checksum ¶ added in v1.0.11
func CompleteMultipartUpload_small_upload_size ¶ added in v1.0.11
func CompleteMultipartUpload_sse_c_not_implemented ¶ added in v1.9.0
func CompleteMultipartUpload_upload_id_path_traversal ¶ added in v1.9.0
func CompleteMultipartUpload_upload_of_another_bucket ¶ added in v1.9.0
func CompleteMultipartUpload_upload_of_another_key ¶ added in v1.9.0
func CompleteMultipartUpload_with_metadata ¶ added in v1.0.19
func CopyObject_conditional_reads ¶ added in v1.0.18
func CopyObject_conditional_writes ¶ added in v1.9.0
func CopyObject_conditional_writes_precedence ¶ added in v1.9.0
The destination's If-Match/If-None-Match are evaluated before the copy source is looked up, so they decide the outcome over a missing source, a failing copy-source precondition and an invalid copy onto itself.
func CopyObject_copy_source_starting_with_slash ¶ added in v1.0.17
func CopyObject_copy_to_itself_invalid_directive ¶ added in v1.0.6
func CopyObject_create_checksum_on_copy ¶ added in v1.0.11
func CopyObject_cross_bucket_server_side_copy ¶ added in v1.8.0
CopyObject_cross_bucket_server_side_copy exercises a cross-bucket copy where source and destination live in different buckets. On the Azure backend this drives the server-side StartCopyFromURL path (added in copy.go), verifying that object data, user metadata, content-type and tags all survive the copy and that an ETag is returned. It also runs on the other backends as a plain copy.
func CopyObject_default_content_type_with_replace_metadata ¶ added in v1.3.0
func CopyObject_incorrect_source_bucket_expected_owner ¶ added in v1.4.0
func CopyObject_invalid_checksum_algorithm ¶ added in v1.0.11
func CopyObject_invalid_copy_source ¶ added in v1.0.17
func CopyObject_invalid_legal_hold ¶ added in v1.0.12
func CopyObject_invalid_object_lock_mode ¶ added in v1.0.12
func CopyObject_invalid_tagging_directive ¶ added in v1.0.12
func CopyObject_invalid_website_redirect_location ¶ added in v1.6.0
func CopyObject_long_metadata ¶ added in v1.4.0
func CopyObject_missing_bucket_lock ¶ added in v1.1.0
func CopyObject_non_existing_dir_object ¶ added in v1.0.5
func CopyObject_object_acl_not_supported ¶ added in v1.2.0
func CopyObject_overwrite_resets_attributes ¶ added in v1.9.0
func CopyObject_overwrite_same_dir_object ¶ added in v1.0.13
func CopyObject_overwrite_same_file_object ¶ added in v1.0.13
func CopyObject_should_copy_meta_props ¶ added in v1.0.12
func CopyObject_should_copy_tagging ¶ added in v1.0.12
func CopyObject_should_copy_the_existing_checksum ¶ added in v1.0.11
func CopyObject_should_not_copy_website_redirect_without_user_metadata ¶ added in v1.8.0
func CopyObject_should_replace_meta_props ¶ added in v1.0.12
func CopyObject_should_replace_tagging ¶ added in v1.0.14
func CopyObject_should_replace_the_existing_checksum ¶ added in v1.0.11
func CopyObject_sse_c_invalid_copy_source_headers ¶ added in v1.9.0
func CopyObject_sse_c_not_implemented ¶ added in v1.9.0
func CopyObject_success ¶
func CopyObject_to_itself_by_replacing_the_checksum ¶ added in v1.0.11
func CopyObject_with_legal_hold ¶ added in v1.0.12
func CopyObject_with_metadata ¶ added in v1.0.19
func CopyObject_with_retention_lock ¶ added in v1.0.12
func CopyObject_with_special_characters ¶ added in v1.3.0
func CreateBucket_as_user ¶
func CreateBucket_duplicate_keys ¶ added in v1.0.19
func CreateBucket_invalid_canned_acl ¶ added in v1.0.19
func CreateBucket_invalid_location_constraint ¶ added in v1.0.19
func CreateBucket_invalid_ownership ¶ added in v1.0.3
func CreateBucket_invalid_tags ¶ added in v1.0.19
func CreateBucket_long_tags ¶ added in v1.0.19
func CreateBucket_ownership_with_acl ¶ added in v1.0.3
func CreateBucket_private_canned_acl ¶ added in v1.3.0
func CreateBucket_private_canned_acl_bucket_owner_enforced_ownership ¶ added in v1.3.0
func CreateBucket_success ¶ added in v1.3.0
func CreateBucket_tag_count_limit ¶ added in v1.0.19
func CreateMultipartUpload_empty_checksum_algorithm_with_checksum_type ¶ added in v1.0.11
func CreateMultipartUpload_invalid_checksum_algorithm ¶ added in v1.0.11
func CreateMultipartUpload_invalid_checksum_type ¶ added in v1.0.11
func CreateMultipartUpload_invalid_legal_hold ¶ added in v1.0.12
func CreateMultipartUpload_invalid_object_lock_mode ¶ added in v1.0.12
func CreateMultipartUpload_invalid_website_redirect_location ¶ added in v1.6.0
func CreateMultipartUpload_long_metadata ¶ added in v1.4.0
func CreateMultipartUpload_object_acl_not_supported ¶ added in v1.2.0
func CreateMultipartUpload_sse_c_not_implemented ¶ added in v1.9.0
func CreateMultipartUpload_type_algo_mismatch ¶ added in v1.0.19
func CreateMultipartUpload_valid_algo_type ¶ added in v1.0.17
func DeleteBucketAnalyticsConfiguration_not_implemented ¶ added in v1.0.17
func DeleteBucketCors_non_existing_bucket ¶ added in v1.0.17
func DeleteBucketCors_success ¶ added in v1.0.17
func DeleteBucketEncryption_not_implemented ¶ added in v1.0.17
func DeleteBucketIntelligentTieringConfiguration_not_implemented ¶ added in v1.0.17
func DeleteBucketInventoryConfiguration_not_implemented ¶ added in v1.0.17
func DeleteBucketLifecycle_not_implemented ¶ added in v1.0.17
func DeleteBucketMetricsConfiguration_not_implemented ¶ added in v1.0.17
func DeleteBucketOwnershipControls_non_existing_bucket ¶ added in v1.0.3
func DeleteBucketOwnershipControls_success ¶ added in v1.0.3
func DeleteBucketReplication_not_implemented ¶ added in v1.0.17
func DeleteBucketWebsite_non_existing_bucket ¶ added in v1.6.0
func DeleteBucketWebsite_success ¶ added in v1.6.0
func DeleteBucket_incorrect_expected_bucket_owner ¶ added in v1.0.19
func DeleteObjectTagging_empty_version_id ¶ added in v1.9.0
func DeleteObjectTagging_expected_bucket_owner ¶ added in v1.0.19
func DeleteObject_conditional_non_existing_object ¶ added in v1.9.0
func DeleteObject_conditional_wildcard ¶ added in v1.9.0
func DeleteObject_conditional_with_version_id ¶ added in v1.9.0
func DeleteObject_conditional_writes ¶ added in v1.0.18
func DeleteObject_directory_not_empty ¶ added in v1.0.9
func DeleteObject_directory_object ¶ added in v1.0.11
func DeleteObject_directory_object_noslash ¶ added in v1.0.8
func DeleteObject_empty_version_id ¶ added in v1.9.0
func DeleteObject_expected_bucket_owner ¶ added in v1.0.19
func DeleteObject_incorrect_expected_bucket_owner ¶ added in v1.0.19
func DeleteObject_name_too_long ¶ added in v1.0.6
func DeleteObject_non_empty_dir_obj ¶ added in v1.0.13
func DeleteObject_non_existing_dir_object ¶ added in v1.0.5
func DeleteObject_success ¶
func DeleteObjects_conditional ¶ added in v1.9.0
DeleteObjects_conditional checks that the ETag of each object is a condition of its delete: a stale ETag keeps the object, a missing key fails with NoSuchKey, and an empty ETag or one with a version id is rejected. The checks don't depend on the order of the results.
func DeleteObjects_iam_all_access_denied ¶ added in v1.8.0
DeleteObjects_iam_all_access_denied covers a batch where the identity policy grants nothing at all: the call itself still succeeds — no top-level error — with every object reported denied in Errors, in request order, and nothing in Deleted.
func DeleteObjects_iam_all_locked ¶ added in v1.8.0
DeleteObjects_iam_all_locked covers a batch where every object is governance-locked and none is deleted: the call still succeeds — no top-level error — with every object reported denied in Errors, in request order, and nothing in Deleted. Omitting the bypass header entirely reports the generic object-lock message; sending the header without s3:BypassGovernanceRetention reports the specific AccessDenied naming that action instead — the same distinction the single-object DELETE path makes, now confirmed for the batch path too.
func DeleteObjects_iam_mixed_denials_and_success ¶ added in v1.8.0
DeleteObjects_iam_mixed_denials_and_success covers a single batch mixing every DeleteObjects outcome at once: a key the identity policy denies, a governance-locked key with no bypass, and keys the caller may freely delete. All three outcomes land in one response — no top-level error — with Deleted and Errors each preserving the order the keys were requested in.
func DeleteObjects_invalid_object_keys ¶ added in v1.9.0
func DeleteObjects_key_limit ¶ added in v1.9.0
DeleteObjects_key_limit pins the S3 limit of 1000 keys per request: a batch of exactly 1000 succeeds, and 1001 is rejected with MalformedXML before any of the keys is deleted.
func DeleteObjects_non_existing_bucket ¶ added in v1.9.0
func DeleteObjects_quiet_mode ¶ added in v1.9.0
DeleteObjects_quiet_mode checks that a quiet-mode request deletes the objects but lists none of them, since quiet mode reports only the objects that could not be deleted.
func DeleteObjects_success ¶
func DeletePublicAccessBlock_not_implemented ¶ added in v1.0.17
func GetBucketAccelerateConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketAcl_success ¶
func GetBucketAcl_translation_canned_private ¶ added in v1.0.3
func GetBucketAcl_translation_canned_public_read ¶ added in v1.0.3
func GetBucketAcl_translation_canned_public_read_write ¶ added in v1.0.3
func GetBucketAnalyticsConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketCors_no_such_bucket_cors ¶ added in v1.0.17
func GetBucketCors_non_existing_bucket ¶ added in v1.0.17
func GetBucketCors_success ¶ added in v1.0.17
func GetBucketEncryption_not_implemented ¶ added in v1.0.17
func GetBucketIntelligentTieringConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketInventoryConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketLifecycleConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketLocation_no_access ¶ added in v1.0.18
func GetBucketLocation_non_exist ¶ added in v1.0.18
func GetBucketLocation_success ¶ added in v1.0.18
func GetBucketLogging_not_implemented ¶ added in v1.0.17
func GetBucketMetricsConfiguration_not_implemented ¶ added in v1.0.17
func GetBucketNotificationConfiguratio_not_implemented ¶ added in v1.0.17
func GetBucketOwnershipControls_default_ownership ¶ added in v1.0.3
func GetBucketOwnershipControls_non_existing_bucket ¶ added in v1.0.3
func GetBucketOwnershipControls_success ¶ added in v1.0.3
func GetBucketPolicyStatus_no_such_bucket_policy ¶ added in v1.0.17
func GetBucketPolicyStatus_non_existing_bucket ¶ added in v1.0.17
func GetBucketPolicyStatus_success ¶ added in v1.0.17
func GetBucketPolicy_not_set ¶
func GetBucketPolicy_success ¶
func GetBucketReplication_not_implemented ¶ added in v1.0.17
func GetBucketRequestPayment_not_implemented ¶ added in v1.0.17
func GetBucketVersioning_acl_grant_access_denied ¶ added in v1.9.0
func GetBucketVersioning_empty_response ¶ added in v1.0.8
func GetBucketVersioning_non_existing_bucket ¶ added in v1.0.8
func GetBucketVersioning_non_owner_access_denied ¶ added in v1.8.0
func GetBucketVersioning_success ¶ added in v1.0.8
func GetBucketVersioning_with_policy_access ¶ added in v1.8.0
func GetBucketWebsite_no_such_website_config ¶ added in v1.6.0
func GetBucketWebsite_non_existing_bucket ¶ added in v1.6.0
func GetBucketWebsite_success ¶ added in v1.6.0
func GetBucketWebsite_success_redirect_all ¶ added in v1.6.0
func GetObjectAcl_not_implemented ¶ added in v1.3.0
func GetObjectAttributes_checksums ¶ added in v1.0.11
func GetObjectAttributes_empty_attrs ¶ added in v1.0.9
func GetObjectAttributes_empty_version_id ¶ added in v1.9.0
func GetObjectAttributes_invalid_attrs ¶ added in v1.0.9
func GetObjectAttributes_invalid_parent ¶ added in v1.0.9
func GetObjectAttributes_invalid_single_attribute ¶ added in v1.0.13
func GetObjectAttributes_sse_c_not_implemented ¶ added in v1.9.0
func GetObjectLegalHold_disabled_lock ¶ added in v1.0.8
func GetObjectLegalHold_empty_version_id ¶ added in v1.9.0
func GetObjectLockConfiguration_no_default_retention ¶ added in v1.9.0
func GetObjectRetention_disabled_lock ¶ added in v1.0.8
func GetObjectRetention_empty_version_id ¶ added in v1.9.0
func GetObjectRetention_retain_until_date_format ¶ added in v1.9.0
GetObjectRetention_retain_until_date_format covers the retain until date on the wire. It is kept to the millisecond, in UTC. GetObjectRetention gives it with three fraction digits, and the HeadObject and GetObject headers with them left out when they are zero.
func GetObjectTagging_empty_version_id ¶ added in v1.9.0
func GetObjectTagging_invalid_parent ¶ added in v1.0.9
func GetObject_checksums ¶ added in v1.0.11
func GetObject_conditional_reads ¶ added in v1.0.18
func GetObject_dir_object_checksum ¶ added in v1.3.0
func GetObject_dir_with_range ¶ added in v1.0.17
func GetObject_directory_object_noslash ¶ added in v1.0.8
func GetObject_directory_success ¶ added in v1.0.7
func GetObject_empty_object_part_number_1 ¶ added in v1.4.1
func GetObject_empty_version_id ¶ added in v1.9.0
func GetObject_incidental_dir_object ¶ added in v1.5.0
GetObject_incidental_dir_object verifies that a directory created incidentally as a parent during object upload (i.e. never explicitly PUT via S3 with a trailing-slash key) is not accessible via GetObject.
func GetObject_invalid_parent ¶ added in v1.0.9
func GetObject_invalid_part_number ¶ added in v1.0.18
func GetObject_large_object ¶ added in v1.0.10
func GetObject_mp_part_number_exceeds_parts_count ¶ added in v1.4.1
func GetObject_mp_part_number_resp_status ¶ added in v1.4.1
func GetObject_mp_part_number_success ¶ added in v1.4.1
func GetObject_non_existing_dir_object ¶ added in v1.0.5
func GetObject_non_mp_part_number_1_success ¶ added in v1.4.1
func GetObject_not_enabled_checksum_mode ¶ added in v1.4.1
func GetObject_overrides_fail_public ¶ added in v1.0.18
func GetObject_overrides_presign_success ¶ added in v1.0.18
func GetObject_overrides_success ¶ added in v1.0.18
func GetObject_range_and_part_number ¶ added in v1.4.1
func GetObject_ranged_with_checksum_mode ¶ added in v1.4.1
func GetObject_sse_c_not_implemented ¶ added in v1.9.0
func GetObject_success ¶
func GetObject_with_range ¶ added in v1.0.14
func GetObject_zero_len_with_range ¶ added in v1.0.17
func GetPublicAccessBlock_not_implemented ¶ added in v1.0.17
func HeadBucket_success ¶
func HeadObject_by_range_resp_status ¶ added in v1.4.1
func HeadObject_checksums ¶ added in v1.0.11
func HeadObject_conditional_reads ¶ added in v1.0.18
func HeadObject_dir_with_range ¶ added in v1.0.17
func HeadObject_directory_object_noslash ¶ added in v1.0.8
func HeadObject_empty_object_part_number_1 ¶ added in v1.4.1
func HeadObject_empty_version_id ¶ added in v1.9.0
func HeadObject_incidental_dir_object ¶ added in v1.5.0
HeadObject_incidental_dir_object verifies that a directory created incidentally as a parent during object upload (i.e. never explicitly PUT via S3 with a trailing-slash key) is not accessible via HeadObject.
func HeadObject_invalid_parent_dir ¶ added in v1.0.9
func HeadObject_mp_part_number_exceeds_parts_count ¶ added in v1.4.1
func HeadObject_mp_part_number_resp_status ¶ added in v1.4.1
func HeadObject_mp_part_number_success ¶ added in v1.4.1
func HeadObject_name_too_long ¶ added in v1.0.6
func HeadObject_non_existing_dir_object ¶ added in v1.0.5
func HeadObject_non_mp_part_number_1_success ¶ added in v1.4.1
func HeadObject_not_enabled_checksum_mode ¶ added in v1.0.11
func HeadObject_overrides_fail_public ¶ added in v1.4.0
func HeadObject_overrides_presign_success ¶ added in v1.4.0
func HeadObject_overrides_success ¶ added in v1.4.0
func HeadObject_range_and_part_number ¶ added in v1.4.1
func HeadObject_ranged_with_checksum_mode ¶ added in v1.4.1
func HeadObject_sse_c_invalid_headers ¶ added in v1.9.0
func HeadObject_sse_c_not_implemented ¶ added in v1.9.0
func HeadObject_success ¶
func HeadObject_with_range ¶ added in v1.0.14
func HeadObject_zero_len_with_range ¶ added in v1.0.17
func IAMAccessControl_ActionAllowOneDenyAnotherByOmission ¶ added in v1.8.0
IAMAccessControl_ActionAllowOneDenyAnotherByOmission verifies a policy granting exactly one action grants only that action — a sibling action against the very same resource is still denied.
func IAMAccessControl_ActionExplicitDenySubsetOfWildcardAllow ¶ added in v1.8.0
IAMAccessControl_ActionExplicitDenySubsetOfWildcardAllow verifies an explicit Deny for one specific action carves it out of an otherwise all-encompassing wildcard Allow, without affecting any other action the wildcard still covers.
func IAMAccessControl_ActionMatchingVariants ¶ added in v1.8.0
IAMAccessControl_ActionMatchingVariants covers exact, wildcard, array, and case-insensitive Action matching, all against the same target resource so only the Action dimension varies row to row.
func IAMAccessControl_AllowGrantsMatchingRequest ¶ added in v1.8.0
IAMAccessControl_AllowGrantsMatchingRequest verifies a single matching Allow statement grants the request, and that the response actually reflects the target resource (not just a nil error) — proving the call was genuinely authorized and executed, not accidentally short-circuited.
func IAMAccessControl_ConditionAllowAndDenyBothMatchDenyWins ¶ added in v1.8.0
IAMAccessControl_ConditionAllowAndDenyBothMatchDenyWins verifies that when both an Allow's and a Deny's conditions match the same request, the Deny still wins — condition-matching does not change explicit Deny precedence.
func IAMAccessControl_ConditionAllowMatchesDenyConditionDoesNotApply ¶ added in v1.8.0
IAMAccessControl_ConditionAllowMatchesDenyConditionDoesNotApply verifies that when an Allow's condition matches but a separate Deny statement's own condition does *not* match, the Deny simply doesn't apply and the Allow wins — a failing condition on a Deny is not the same as the Deny being absent, but it does mean that particular Deny never fires.
func IAMAccessControl_ConditionArnOperators ¶ added in v1.8.0
IAMAccessControl_ConditionArnOperators covers the ArnEquals/ArnLike/ ArnNotEquals/ArnNotLike family against aws:PrincipalArn — a real, fully-known ARN this suite controls exactly (the caller's own Arn).
func IAMAccessControl_ConditionBinaryEqualsOperator ¶ added in v1.8.0
IAMAccessControl_ConditionBinaryEqualsOperator covers BinaryEquals with deterministic base64-encoded claim values.
func IAMAccessControl_ConditionBoolOperator ¶ added in v1.8.0
IAMAccessControl_ConditionBoolOperator covers Bool: true/false claim values, a string-typed "true"/"false" claim (still matched, since both sides parse via strconv.ParseBool), and a missing key.
func IAMAccessControl_ConditionCurrentTimeBroadWindow ¶ added in v1.8.0
IAMAccessControl_ConditionCurrentTimeBroadWindow covers Numeric/Date operators against the server's own request-time keys (aws:EpochTime, aws:CurrentTime) — since "now" can't be injected or fixed by the test, this uses deliberately broad, never-flaky bounds (year 2001 through year 2100) rather than tight boundaries; see IAMAccessControl_ConditionNumericOperators/ConditionDateOperators for precise boundary coverage against a fully test-controlled claim value.
func IAMAccessControl_ConditionDateOperators ¶ added in v1.8.0
IAMAccessControl_ConditionDateOperators covers the full Date condition-operator family, using a custom "joined" claim around a fixed boundary of 2024-06-15T00:00:00Z (epoch 1718409600) — both RFC3339 and epoch-seconds forms are exercised since evaluateCondition accepts either on either side.
func IAMAccessControl_ConditionForAllValuesOperator ¶ added in v1.8.0
IAMAccessControl_ConditionForAllValuesOperator covers ForAllValues:StringEquals against a multi-valued "groups" claim: every request value must match one of the expected values.
func IAMAccessControl_ConditionForAnyValueOperator ¶ added in v1.8.0
IAMAccessControl_ConditionForAnyValueOperator covers ForAnyValue: StringEquals against a multi-valued "groups" claim: one request value matching is enough.
func IAMAccessControl_ConditionIfExistsPrincipalTag ¶ added in v1.8.0
IAMAccessControl_ConditionIfExistsPrincipalTag covers a StringEqualsIfExists condition against aws:PrincipalTag/<key>: absent (vacuously allowed), present and matching (allowed), present and mismatched (denied).
func IAMAccessControl_ConditionIfExistsTrustClaim ¶ added in v1.8.0
IAMAccessControl_ConditionIfExistsTrustClaim covers a *IfExists operator against a custom claim: absent (vacuously allowed), present and matching (allowed), present and mismatched (denied).
func IAMAccessControl_ConditionIpAddressExplicitDenyOverridesBroaderAllow ¶ added in v1.8.0
IAMAccessControl_ConditionIpAddressExplicitDenyOverridesBroaderAllow verifies a Deny scoped to one IP range carves it out of a broader Allow, using a range guaranteed to contain this test process's real source IP.
func IAMAccessControl_ConditionIpAddressRealSourceIp ¶ added in v1.8.0
IAMAccessControl_ConditionIpAddressRealSourceIp covers IpAddress/ NotIpAddress against the *real* aws:SourceIp the gateway observes for this test process's own connection (see callerSourceIP), proving the source-IP condition context is actually wired end to end — not just that the operator's CIDR logic works in isolation (see IAMAccessControl_ConditionIpAddressOperators for the broader operator coverage via a fully test-controlled claim value).
func IAMAccessControl_ConditionMultipleContextKeysANDed ¶ added in v1.8.0
IAMAccessControl_ConditionMultipleContextKeysANDed verifies two different condition keys within the same Condition block are ANDed: both aws:username and aws:PrincipalTag/department must match for the statement to apply.
func IAMAccessControl_ConditionMultipleOperatorBlocksANDedTrust ¶ added in v1.8.0
IAMAccessControl_ConditionMultipleOperatorBlocksANDedTrust verifies two separate operator blocks in the same trust-statement Condition (a StringEquals on sub and a NumericGreaterThan on a custom claim) are ANDed: both must be satisfied.
func IAMAccessControl_ConditionNullOperatorClaim ¶ added in v1.8.0
IAMAccessControl_ConditionNullOperatorClaim covers Null against a custom claim: key exists vs. does not, Null:true vs. Null:false, and Null combined (ANDed) with a separate StringEquals condition in the same statement.
func IAMAccessControl_ConditionNullPrincipalTag ¶ added in v1.8.0
IAMAccessControl_ConditionNullPrincipalTag covers the Null operator against aws:PrincipalTag/<key>, a key that's genuinely absent from request context for an untagged caller and present for a tagged one — exercising Null's "key does not exist"/"key exists" semantics against a real, request-driven context key rather than a synthetic one.
func IAMAccessControl_ConditionNumericOperators ¶ added in v1.8.0
IAMAccessControl_ConditionNumericOperators covers the full Numeric condition-operator family, using a custom "level" claim this suite fully controls, around a fixed boundary value of 5.
func IAMAccessControl_ConditionOneFailedConditionVoidsStatement ¶ added in v1.8.0
IAMAccessControl_ConditionOneFailedConditionVoidsStatement verifies a statement combining two condition keys (ANDed) does not apply if either one fails to match — demonstrated here via aws:username (matching) AND aws:SourceIp (deliberately scoped to a range that excludes this test process's real source IP).
func IAMAccessControl_ConditionRequestTagOnCreateUser ¶ added in v1.8.0
IAMAccessControl_ConditionRequestTagOnCreateUser covers aws:RequestTag/ aws:TagKeys: a Condition scoping the Tags parameter of a CreateUser request itself, proving request-scoped (not just principal- or resource-scoped) context is evaluated.
func IAMAccessControl_ConditionResourceTagOnTarget ¶ added in v1.8.0
IAMAccessControl_ConditionResourceTagOnTarget covers iam:ResourceTag/ aws:ResourceTag: a Condition scoping the *target* resource's own tag, proving resourceForAction's tag resolution is wired into Condition evaluation, not just the caller's own tags.
func IAMAccessControl_ConditionStringMultipleExpectedValuesOR ¶ added in v1.8.0
IAMAccessControl_ConditionStringMultipleExpectedValuesOR verifies a StringEquals condition with an array of expected values matches if the actual value equals *any* of them.
func IAMAccessControl_ConditionStringOperators ¶ added in v1.8.0
IAMAccessControl_ConditionStringOperators covers the full String condition-operator family against aws:username — a key this suite fully controls on both sides (the caller's actual username, and the policy's expected value), giving every row a deterministic outcome.
func IAMAccessControl_CrossIdentity_AssumeRoleWithWebIdentityHasNoCallerIdentityCheck ¶ added in v1.8.0
func IAMAccessControl_CrossIdentity_AssumeRoleWithWebIdentityHasNoCallerIdentityCheck(s *S3Conf) error
IAMAccessControl_CrossIdentity_AssumeRoleWithWebIdentityHasNoCallerIdentityCheck documents a meaningful divergence from real AWS's plain sts:AssumeRole: this gateway's only assume-role action is unauthenticated (see stsOpenRoute in iamapi/router.go — VerifyIAMAuth never runs for it), so there is no calling IAM identity and thus no identity-based-policy check on the assumption call itself, only the target role's trust policy. This is demonstrated by showing an identical trust/token pair produces an identical result (the same network-dependent failure this suite uses throughout as its proxy for reaching a genuine Allowed decision — see the file doc comment) whether the request is signed with the real root credential or with a completely arbitrary, nonexistent access key: if caller identity mattered here, at least one of these would fail differently (e.g. an unknown-access-key error) instead of both reaching the identical outcome.
func IAMAccessControl_CrossIdentity_UnrelatedRoleCannotBeAssumedViaWrongIssuer ¶ added in v1.8.0
IAMAccessControl_CrossIdentity_UnrelatedRoleCannotBeAssumedViaWrongIssuer verifies isolation between two independently-configured federated roles: a token issued for role A's provider cannot assume role B, even though it can (still) assume role A.
func IAMAccessControl_EffectNonMatchingAllowStillImplicitlyDenies ¶ added in v1.8.0
IAMAccessControl_EffectNonMatchingAllowStillImplicitlyDenies verifies an Allow statement present in a policy but not covering the tested action/resource contributes nothing — the request is still implicitly denied, not accidentally granted just because *some* Allow exists somewhere in the document.
func IAMAccessControl_EffectNonMatchingDenyDoesNotBlockUnrelatedAllow ¶ added in v1.8.0
IAMAccessControl_EffectNonMatchingDenyDoesNotBlockUnrelatedAllow verifies a Deny statement that doesn't cover the tested action/resource simply doesn't apply — it does not somehow block an unrelated Allow elsewhere in the same policy.
func IAMAccessControl_ExplicitDenyOverridesAllow ¶ added in v1.8.0
IAMAccessControl_ExplicitDenyOverridesAllow verifies an explicit Deny always wins over a matching Allow, regardless of statement order or whether the Deny is in the same policy document or a separate one.
func IAMAccessControl_ImplicitDenyNoMatchingPolicy ¶ added in v1.8.0
IAMAccessControl_ImplicitDenyNoMatchingPolicy verifies a caller with no policies at all is denied by default (no Allow ever exists to grant anything).
func IAMAccessControl_MultipleInlinePoliciesCombinedAllow ¶ added in v1.8.0
IAMAccessControl_MultipleInlinePoliciesCombinedAllow verifies two separate inline policies attached to the same user are combined: a statement in either one is enough to grant its action.
func IAMAccessControl_MultipleInlinePoliciesExplicitDenyWins ¶ added in v1.8.0
IAMAccessControl_MultipleInlinePoliciesExplicitDenyWins verifies a Deny in one inline policy overrides an Allow in a *different* inline policy on the same user — combination is not "most permissive wins", explicit Deny is global across every attached policy.
func IAMAccessControl_MultipleStatementsEvaluatedIndependently ¶ added in v1.8.0
IAMAccessControl_MultipleStatementsEvaluatedIndependently verifies two statements in one policy document, covering two different actions, are each evaluated on their own terms: both grant their own action, and neither grants the other's.
func IAMAccessControl_NonMatchingStatementDoesNotGrant ¶ added in v1.8.0
IAMAccessControl_NonMatchingStatementDoesNotGrant verifies a policy whose only statement covers a *different* action does not grant the tested action — a non-matching statement contributes nothing, it isn't a fallback Allow.
func IAMAccessControl_NotActionAllowGrantsEverythingExceptExcluded ¶ added in v1.8.0
IAMAccessControl_NotActionAllowGrantsEverythingExceptExcluded verifies an Allow+NotAction statement grants every action *except* the ones listed — the excluded action is denied, a nonexcluded one is allowed.
func IAMAccessControl_NotActionDenyBlocksEverythingExceptExcluded ¶ added in v1.8.0
IAMAccessControl_NotActionDenyBlocksEverythingExceptExcluded verifies the interaction between an Action-based Allow and a NotAction-based Deny: a broad Allow grants everything, but a Deny+NotAction statement denies every action *except* the one named — net effect, only that one action remains allowed.
func IAMAccessControl_NotResourceExcludesTarget ¶ added in v1.8.0
IAMAccessControl_NotResourceExcludesTarget verifies both directions of NotResource: an Allow+NotResource statement applies to every resource *except* the excluded one, while a Deny+NotResource statement (layered over a broader baseline Allow) denies every resource *except* the excluded one — the excluded resource's fate inverts between the two.
func IAMAccessControl_NotResourceMultipleExcludedResources ¶ added in v1.8.0
IAMAccessControl_NotResourceMultipleExcludedResources verifies a NotResource array excludes every listed resource, not just the first.
func IAMAccessControl_NotResourceWildcardExclusion ¶ added in v1.8.0
IAMAccessControl_NotResourceWildcardExclusion verifies NotResource supports the same wildcard glob Resource does: excluding a whole path-prefix pattern excludes every resource under it, not just one exact ARN.
func IAMAccessControl_ResourceExplicitDenyOverridesBroaderAllow ¶ added in v1.8.0
IAMAccessControl_ResourceExplicitDenyOverridesBroaderAllow verifies a Deny scoped to one specific resource carves it out of a broader Resource:"*" Allow, without affecting any other resource the Allow still covers.
func IAMAccessControl_ResourceMatchingVariants ¶ added in v1.8.0
IAMAccessControl_ResourceMatchingVariants covers exact, wildcard, and array Resource matching for both a user and a role target.
func IAMAccessControl_ResourceOneAllowedOneDeniedSameAction ¶ added in v1.8.0
IAMAccessControl_ResourceOneAllowedOneDeniedSameAction verifies a resource-scoped Allow grants the same action against its named resource but denies it against an equally-valid, unrelated resource.
func IAMAccessControl_ResourceWildcardRequiredForListAction ¶ added in v1.8.0
IAMAccessControl_ResourceWildcardRequiredForListAction verifies a List-type action (whose only valid resource-level scope is "*", per resourceForAction's classification) is denied by a resource-scoped grant naming a specific entity, and allowed once the grant uses "*".
func IAMAccessControl_RolePermissionPolicyDoesNotAffectAssumptionDecision ¶ added in v1.8.0
IAMAccessControl_RolePermissionPolicyDoesNotAffectAssumptionDecision demonstrates that trust-policy authorization and role-permission authorization are separate stages: a role's inline (permission) policy — absent, permissive, or deny-all — has no bearing on whether the role can be assumed. Every variant reaches the identical trust-evaluation outcome (this suite's network-stage proxy for "Allowed", per the file doc comment) with the trust policy held fixed.
func IAMAccessControl_RoleTrustDenialIndependentOfPermissionPolicy ¶ added in v1.8.0
IAMAccessControl_RoleTrustDenialIndependentOfPermissionPolicy is the converse of RolePermissionPolicyDoesNotAffectAssumptionDecision: even a maximally permissive role permission policy cannot compensate for a trust policy that doesn't authorize the caller — assumption is still denied.
func IAMAccessControl_TrustPolicyAudienceAndSubjectBothMustMatch ¶ added in v1.8.0
IAMAccessControl_TrustPolicyAudienceAndSubjectBothMustMatch verifies a trust statement with Conditions on both <provider>:aud and <provider>:sub requires both to match — either alone is not enough.
func IAMAccessControl_TrustPolicyAudienceCorrectAllowed ¶ added in v1.8.0
IAMAccessControl_TrustPolicyAudienceCorrectAllowed verifies a StringEquals condition on <provider>:aud allows a token whose (ClientIDList-valid) audience matches the condition's expected value. The provider's ClientIDList registers *two* acceptable audiences so this and AudienceIncorrectDenied can each present a ClientIDList-valid audience, isolating the Condition itself as what's actually under test (see newFederatedRole's doc comment).
func IAMAccessControl_TrustPolicyAudienceIncorrectDenied ¶ added in v1.8.0
IAMAccessControl_TrustPolicyAudienceIncorrectDenied is the AudienceCorrectAllowed companion: an audience that's valid per ClientIDList but doesn't match the trust policy's Condition is denied.
func IAMAccessControl_TrustPolicyExplicitDenyStatement ¶ added in v1.8.0
IAMAccessControl_TrustPolicyExplicitDenyStatement verifies an explicit Deny statement scoped to one subject blocks assumption for that subject while a broader Allow still covers every other subject.
func IAMAccessControl_TrustPolicyFederatedArrayMatchesAny ¶ added in v1.8.0
IAMAccessControl_TrustPolicyFederatedArrayMatchesAny verifies a Federated principal given as an array of provider ARNs matches a token issued by *either* one.
func IAMAccessControl_TrustPolicyFederatedExactMatchAllowed ¶ added in v1.8.0
IAMAccessControl_TrustPolicyFederatedExactMatchAllowed verifies a trust policy naming the exact registered OIDC provider ARN as its Federated principal allows assumption for a token issued by that provider.
func IAMAccessControl_TrustPolicyFederatedWrongProviderDenied ¶ added in v1.8.0
IAMAccessControl_TrustPolicyFederatedWrongProviderDenied verifies a trust policy federating a *real, registered* provider still denies a token issued by a *different* real, registered provider — an existing-but- mismatched principal, distinct from a dangling reference to a provider that was never created at all (see IAMAssumeRoleWithWebIdentity_no_matching_principal for that case).
func IAMAccessControl_TrustPolicyMissingRequiredClaimDenied ¶ added in v1.8.0
IAMAccessControl_TrustPolicyMissingRequiredClaimDenied verifies a StringEquals condition against a claim key the token simply never carries denies assumption — a positive (non-IfExists) operator against an absent key fails closed (see IAMAccessControl_ConditionIfExistsTrustClaim for the IfExists variant's opposite behavior on the same kind of absence).
func IAMAccessControl_TrustPolicyMultipleAudiencesArrayAllowed ¶ added in v1.8.0
IAMAccessControl_TrustPolicyMultipleAudiencesArrayAllowed verifies a StringEquals condition on <provider>:aud with an array of acceptable values matches any one of them.
func IAMAccessControl_TrustPolicyMultipleStatementsSecondGrants ¶ added in v1.8.0
IAMAccessControl_TrustPolicyMultipleStatementsSecondGrants verifies a trust policy is evaluated statement by statement across the whole document: a first statement referencing an unrelated provider doesn't prevent a second statement (for the *actual* issuer) from granting assumption.
func IAMAccessControl_TrustPolicyNonFederatedPrincipalsIgnored ¶ added in v1.8.0
IAMAccessControl_TrustPolicyNonFederatedPrincipalsIgnored documents a meaningful divergence from real AWS IAM: this gateway's only AssumeRole-family action is AssumeRoleWithWebIdentity, so EvaluateWebIdentityTrust only ever inspects a statement's Principal.Federated value — an "AWS" principal (even a wildcard "*", or a literal account root ARN, both of which would grant real AWS's plain sts:AssumeRole) or a "Service" principal is accepted by write-time validation but has no runtime effect: a role trusting *only* one of these can never actually be assumed by anyone, denied exactly as if the trust policy had no usable principal at all.
func IAMAccessControl_TrustPolicyStringEqualsSubjectExactAllowed ¶ added in v1.8.0
IAMAccessControl_TrustPolicyStringEqualsSubjectExactAllowed verifies a StringEquals condition on <provider>:sub allows a token whose subject matches exactly.
func IAMAccessControl_TrustPolicyStringEqualsSubjectMismatchDenied ¶ added in v1.8.0
IAMAccessControl_TrustPolicyStringEqualsSubjectMismatchDenied is the StringEqualsSubjectExactAllowed companion: a different repository's subject is denied.
func IAMAccessControl_TrustPolicyStringLikeBranchWildcardAllowed ¶ added in v1.8.0
IAMAccessControl_TrustPolicyStringLikeBranchWildcardAllowed verifies a StringLike condition on <provider>:sub with a trailing wildcard allows any branch under refs/heads/ — a realistic GitHub-Actions-style pattern.
func IAMAccessControl_TrustPolicyStringLikeTagSubjectDenied ¶ added in v1.8.0
IAMAccessControl_TrustPolicyStringLikeTagSubjectDenied is the StringLikeBranchWildcardAllowed companion: a pull-request-triggered subject (a different sub shape entirely, not matching the refs/heads/* pattern) is denied.
func IAMAccessControl_UserInlinePolicyWorkflow ¶ added in v1.8.0
IAMAccessControl_UserInlinePolicyWorkflow exercises the full lifecycle a user's inline policy goes through: create two users (one caller, one target), attach an inline policy scoped to a condition on the caller's own identity, create access keys, make signed calls as the caller, verify the permitted action+resource succeeds, verify denial for another action, another user resource, a condition mismatch (a second, differently-named caller under the same policy shape), and an explicit Deny, then update the policy and verify the changed authorization takes effect while the explicit Deny still holds.
func IAMAccessControl_UserPathScopedResourceGrantsOnlyMatchingPath ¶ added in v1.8.0
IAMAccessControl_UserPathScopedResourceGrantsOnlyMatchingPath verifies a resource pattern scoped to one path prefix grants access to users under that path but not to a user with a different path, even with an otherwise-identical name prefix.
func IAMAddClientIDToOpenIDConnectProvider_client_id_too_long ¶ added in v1.8.0
func IAMAddClientIDToOpenIDConnectProvider_idempotent_duplicate ¶ added in v1.8.0
IAMAddClientIDToOpenIDConnectProvider_idempotent_duplicate confirms adding an already-present client ID succeeds silently rather than erroring or creating a duplicate entry.
func IAMAddClientIDToOpenIDConnectProvider_limit_exceeded ¶ added in v1.8.0
func IAMAddClientIDToOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMAddClientIDToOpenIDConnectProvider_missing_client_id ¶ added in v1.8.0
func IAMAddClientIDToOpenIDConnectProvider_non_existing_provider ¶ added in v1.8.0
func IAMAddClientIDToOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_audience_not_in_client_id_list ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_condition_failed ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_duration_exceeds_role_max ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_empty_client_id_list ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_explicit_deny ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_idp_communication_error ¶ added in v1.8.0
IAMAssumeRoleWithWebIdentity_idp_communication_error confirms the network-dependent signature-verification step is wired all the way through the real HTTP action handler: a provider Url that's a loopback IP literal is rejected by VerifyWebIdentitySignature's SSRF guard (on by default, and never waived for this suite's gateway) before any real network attempt, deterministically and without requiring outbound network access from the test environment — the same technique IAMCreateOpenIDConnectProvider_thumbprint_autofetch_communication_error uses for CreateOpenIDConnectProvider's own auto-fetch path.
func IAMAssumeRoleWithWebIdentity_issuer_scheme_mismatch ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_issuer_trailing_slash_mismatch ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_malformed_duration ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_malformed_token ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_missing_role_arn ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_no_issuer_match ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_no_matching_principal ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_nonexistent_role ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_oaud_condition_matches ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_oaud_condition_mismatch ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_policy_arns_rejected ¶ added in v1.8.0
IAMAssumeRoleWithWebIdentity_policy_arns_rejected and IAMAssumeRoleWithWebIdentity_provider_id_rejected confirm PolicyArns and ProviderId — valid AssumeRoleWithWebIdentity parameters this implementation doesn't support — are rejected outright rather than silently ignored. Both checks run before the role is even looked up, so (matching the other request-validation tests above) RoleArn need not name a real role.
func IAMAssumeRoleWithWebIdentity_provider_id_rejected ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_role_arn_path_mismatch ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_role_arn_too_short ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_session_policy_invalid ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_session_policy_too_large ¶ added in v1.8.0
func IAMAssumeRoleWithWebIdentity_wrong_version_is_invalid_action ¶ added in v1.8.0
func IAMAuth_credentials_future_date ¶ added in v1.8.0
func IAMAuth_credentials_incorrect_region ¶ added in v1.8.0
func IAMAuth_credentials_incorrect_service ¶ added in v1.8.0
func IAMAuth_credentials_invalid_date ¶ added in v1.8.0
func IAMAuth_credentials_invalid_terminal ¶ added in v1.8.0
func IAMAuth_credentials_non_existing_access_key ¶ added in v1.8.0
func IAMAuth_credentials_past_date ¶ added in v1.8.0
func IAMAuth_date_mismatch ¶ added in v1.8.0
func IAMAuth_invalid_auth_header ¶ added in v1.8.0
func IAMAuth_invalid_date_header ¶ added in v1.8.0
func IAMAuth_invalid_sha256_payload_hash_ignored ¶ added in v1.8.0
func IAMAuth_malformed_component ¶ added in v1.8.0
func IAMAuth_malformed_credential ¶ added in v1.8.0
func IAMAuth_missing_authorization_component ¶ added in v1.8.0
func IAMAuth_missing_date_header ¶ added in v1.8.0
func IAMAuth_signature_error_incorrect_secret_key ¶ added in v1.8.0
func IAMAuth_sigv2_not_supported ¶ added in v1.8.0
func IAMAuth_unsigned_non_required_header ¶ added in v1.8.0
func IAMAuth_unsigned_required_header ¶ added in v1.8.0
func IAMAuth_unsupported_signature_version ¶ added in v1.8.0
func IAMAuth_with_expect_header ¶ added in v1.8.0
func IAMCreateAccessKey_empty_user_name ¶ added in v1.8.0
IAMCreateAccessKey_empty_user_name confirms only an entirely absent UserName is inferred: sending the parameter with an empty value stays a validation failure rather than silently creating a key for the caller.
func IAMCreateAccessKey_infers_caller_user_name ¶ added in v1.8.0
func IAMCreateAccessKey_invalid_user_name ¶ added in v1.8.0
func IAMCreateAccessKey_limit_exceeded ¶ added in v1.8.0
func IAMCreateAccessKey_long_user_name ¶ added in v1.8.0
func IAMCreateAccessKey_missing_user_name ¶ added in v1.8.0
IAMCreateAccessKey_missing_user_name calls as root, which is a configured credential rather than a stored IAM user and so has no user name to infer — unlike a caller signing with an IAM user's own access key, covered by IAMCreateAccessKey_infers_caller_user_name.
func IAMCreateAccessKey_non_existing_user ¶ added in v1.8.0
func IAMCreateAccessKey_success ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_already_exists ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_client_id_too_long ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_defaults ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_duplicate_tag_keys ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_duplicate_tag_keys covers the provider actions' exact tag-key comparison: only a byte-identical repeat is a duplicate, so a differently-cased repeat creates two distinct tags.
func IAMCreateOpenIDConnectProvider_invalid_thumbprint ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_invalid_url ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_ip_literal_host ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_ip_literal_host confirms an IP-literal host is accepted by exercising isValidOIDCHostname's net.ParseIP branch end-to-end.
func IAMCreateOpenIDConnectProvider_missing_url ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_quota_exceeded ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_quota_exceeded tops the account up to storage.MaxOIDCProvidersPerAccount from whatever baseline count already exists, then confirms one more Create is rejected. It only ever creates (and cleans up) providers relative to the observed baseline, so it tolerates a non-empty account, but — like any test of a truly account-global, unscoped quota — it assumes no other test is concurrently creating/deleting OIDC providers, which holds for this suite's default sequential execution (not necessarily under --parallel).
func IAMCreateOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_thumbprint_autofetch_communication_error ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_thumbprint_autofetch_communication_error confirms the network-dependent auto-fetch fallback (triggered by omitting ThumbprintList) is wired all the way through the real HTTP action handler: a loopback URL is rejected by the fetch's SSRF guard (on by default, and never waived for this suite's gateway) before any real network attempt, deterministically and without requiring outbound network access from the test environment.
func IAMCreateOpenIDConnectProvider_thumbprint_edge_cases ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_thumbprint_edge_cases exercises two success-path ThumbprintList edge cases in one pass: exactly MaxThumbprintsPerOIDCProvider entries (the limit message says "fewer than 5", but 5 itself is accepted), and a 40-character entry outside the hex charset (AWS does not check for a hex charset).
func IAMCreateOpenIDConnectProvider_too_many_client_ids ¶ added in v1.8.0
func IAMCreateOpenIDConnectProvider_trailing_slash_distinct_identity ¶ added in v1.8.0
IAMCreateOpenIDConnectProvider_trailing_slash_distinct_identity confirms that a trailing slash is part of a provider's identity: "https://host" and "https://host/" register as two distinct providers, not a collision.
func IAMCreateRole_already_exists ¶ added in v1.8.0
func IAMCreateRole_already_exists_case_insensitive ¶ added in v1.8.0
func IAMCreateRole_defaults ¶ added in v1.8.0
func IAMCreateRole_description_invalid_charset ¶ added in v1.8.0
func IAMCreateRole_description_too_long ¶ added in v1.8.0
func IAMCreateRole_duplicate_tag_keys ¶ added in v1.8.0
func IAMCreateRole_invalid_path ¶ added in v1.8.0
func IAMCreateRole_invalid_role_name ¶ added in v1.8.0
func IAMCreateRole_long_path ¶ added in v1.8.0
func IAMCreateRole_long_role_name ¶ added in v1.8.0
func IAMCreateRole_max_session_duration_invalid_format ¶ added in v1.8.0
func IAMCreateRole_max_session_duration_too_high ¶ added in v1.8.0
func IAMCreateRole_max_session_duration_too_low ¶ added in v1.8.0
func IAMCreateRole_missing_assume_role_policy_document ¶ added in v1.8.0
func IAMCreateRole_missing_role_name ¶ added in v1.8.0
func IAMCreateRole_non_ascii_assume_role_policy_document ¶ added in v1.8.0
func IAMCreateRole_success ¶ added in v1.8.0
func IAMCreateRole_trust_policy_document_grammar ¶ added in v1.8.0
func IAMCreateRole_trust_policy_size_limit_exceeded ¶ added in v1.8.0
func IAMCreateUser_already_exists_case_insensitive ¶ added in v1.8.0
func IAMCreateUser_default_path ¶ added in v1.8.0
func IAMCreateUser_duplicate_tag_keys ¶ added in v1.8.0
func IAMCreateUser_invalid_path ¶ added in v1.8.0
func IAMCreateUser_invalid_tag_key ¶ added in v1.8.0
func IAMCreateUser_invalid_tag_value ¶ added in v1.8.0
func IAMCreateUser_invalid_user_name ¶ added in v1.8.0
func IAMCreateUser_long_path ¶ added in v1.8.0
func IAMCreateUser_long_tag_key ¶ added in v1.8.0
func IAMCreateUser_long_tag_value ¶ added in v1.8.0
func IAMCreateUser_long_user_name ¶ added in v1.8.0
func IAMCreateUser_missing_user_name ¶ added in v1.8.0
func IAMCreateUser_success ¶ added in v1.8.0
func IAMCreateUser_user_already_exists ¶ added in v1.8.0
func IAMDeleteAccessKey_access_key_id_too_long ¶ added in v1.8.0
func IAMDeleteAccessKey_access_key_id_too_short ¶ added in v1.8.0
func IAMDeleteAccessKey_inferred_user_name_scoped_to_caller ¶ added in v1.8.0
IAMDeleteAccessKey_inferred_user_name_scoped_to_caller confirms the inferred user name is the caller's own and nothing else: another user's access key is simply not found, rather than being deleted.
func IAMDeleteAccessKey_infers_caller_user_name ¶ added in v1.8.0
func IAMDeleteAccessKey_invalid_access_key_id_chars ¶ added in v1.8.0
func IAMDeleteAccessKey_invalid_user_name ¶ added in v1.8.0
func IAMDeleteAccessKey_long_user_name ¶ added in v1.8.0
func IAMDeleteAccessKey_missing_access_key_id ¶ added in v1.8.0
func IAMDeleteAccessKey_missing_user_name ¶ added in v1.8.0
IAMDeleteAccessKey_missing_user_name calls as root, which is a configured credential rather than a stored IAM user and so has no user name to infer — unlike a caller signing with an IAM user's own access key, covered by IAMDeleteAccessKey_infers_caller_user_name.
func IAMDeleteAccessKey_non_existing_access_key ¶ added in v1.8.0
func IAMDeleteAccessKey_non_existing_user ¶ added in v1.8.0
func IAMDeleteAccessKey_success ¶ added in v1.8.0
func IAMDeleteOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMDeleteOpenIDConnectProvider_non_existing ¶ added in v1.8.0
func IAMDeleteOpenIDConnectProvider_not_idempotent ¶ added in v1.8.0
IAMDeleteOpenIDConnectProvider_not_idempotent confirms a second delete of the same ARN fails.
func IAMDeleteOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMDeleteRolePolicy_blocks_role_deletion ¶ added in v1.8.0
func IAMDeleteRolePolicy_missing_policy_name ¶ added in v1.8.0
func IAMDeleteRolePolicy_missing_role_name ¶ added in v1.8.0
func IAMDeleteRolePolicy_non_existing_policy ¶ added in v1.8.0
func IAMDeleteRolePolicy_non_existing_role ¶ added in v1.8.0
func IAMDeleteRolePolicy_success ¶ added in v1.8.0
func IAMDeleteRole_has_policies ¶ added in v1.8.0
func IAMDeleteRole_invalid_role_name ¶ added in v1.8.0
func IAMDeleteRole_long_role_name ¶ added in v1.8.0
func IAMDeleteRole_missing_role_name ¶ added in v1.8.0
func IAMDeleteRole_non_existing_role ¶ added in v1.8.0
func IAMDeleteRole_success ¶ added in v1.8.0
func IAMDeleteUserPolicy_blocks_user_deletion ¶ added in v1.8.0
func IAMDeleteUserPolicy_missing_policy_name ¶ added in v1.8.0
func IAMDeleteUserPolicy_missing_user_name ¶ added in v1.8.0
func IAMDeleteUserPolicy_non_existing_policy ¶ added in v1.8.0
func IAMDeleteUserPolicy_non_existing_user ¶ added in v1.8.0
func IAMDeleteUserPolicy_success ¶ added in v1.8.0
func IAMDeleteUser_has_access_keys ¶ added in v1.8.0
func IAMDeleteUser_invalid_user_name ¶ added in v1.8.0
func IAMDeleteUser_long_user_name ¶ added in v1.8.0
func IAMDeleteUser_non_existing_user ¶ added in v1.8.0
func IAMDeleteUser_success ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_access_key_id_too_long ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_access_key_id_too_short ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_invalid_access_key_id_chars ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_missing_access_key_id ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_non_existing_access_key ¶ added in v1.8.0
func IAMGetAccessKeyLastUsed_success ¶ added in v1.8.0
func IAMGetCallerIdentity_incorrect_service_scope ¶ added in v1.8.0
IAMGetCallerIdentity_incorrect_service_scope confirms the shared sigv4 auth pipeline reports the STS-specific service name ("sts", not "iam") when GetCallerIdentity is signed with a Credential scoped to the wrong service.
func IAMGetCallerIdentity_no_auth ¶ added in v1.8.0
func IAMGetCallerIdentity_root_success ¶ added in v1.8.0
func IAMGetCallerIdentity_unknown_access_key ¶ added in v1.8.0
func IAMGetCallerIdentity_user_success ¶ added in v1.8.0
func IAMGetCallerIdentity_wrong_version_is_invalid_action ¶ added in v1.8.0
func IAMGetOpenIDConnectProvider_invalid_arn ¶ added in v1.8.0
func IAMGetOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMGetOpenIDConnectProvider_non_existing ¶ added in v1.8.0
func IAMGetOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMGetRolePolicy_missing_policy_name ¶ added in v1.8.0
func IAMGetRolePolicy_missing_role_name ¶ added in v1.8.0
func IAMGetRolePolicy_non_existing_policy ¶ added in v1.8.0
func IAMGetRolePolicy_non_existing_role ¶ added in v1.8.0
func IAMGetRolePolicy_success ¶ added in v1.8.0
func IAMGetRole_invalid_role_name ¶ added in v1.8.0
func IAMGetRole_long_role_name ¶ added in v1.8.0
func IAMGetRole_missing_role_name ¶ added in v1.8.0
func IAMGetRole_non_existing_role ¶ added in v1.8.0
func IAMGetRole_role_last_used_never_used ¶ added in v1.8.0
IAMGetRole_role_last_used_never_used confirms a role nobody has assumed reports the empty RoleLastUsed element — present, but carrying neither a date nor a region, exactly as real IAM answers for a never-used role.
func IAMGetRole_success ¶ added in v1.8.0
func IAMGetUserPolicy_missing_policy_name ¶ added in v1.8.0
func IAMGetUserPolicy_missing_user_name ¶ added in v1.8.0
func IAMGetUserPolicy_non_existing_policy ¶ added in v1.8.0
func IAMGetUserPolicy_non_existing_user ¶ added in v1.8.0
func IAMGetUserPolicy_success ¶ added in v1.8.0
func IAMGetUser_invalid_user_name ¶ added in v1.8.0
func IAMGetUser_long_user_name ¶ added in v1.8.0
func IAMGetUser_non_existing_user ¶ added in v1.8.0
func IAMGetUser_root_user ¶ added in v1.8.0
func IAMGetUser_success ¶ added in v1.8.0
func IAMListAccessKeys_empty_result ¶ added in v1.8.0
func IAMListAccessKeys_infers_caller_user_name ¶ added in v1.8.0
IAMListAccessKeys_infers_caller_user_name also covers the scoping the other inferred-user-name tests assert through a NoSuchEntity: a listing with no UserName returns the caller's own keys and only those, so a second user's key must not appear in it.
func IAMListAccessKeys_invalid_max_items ¶ added in v1.8.0
func IAMListAccessKeys_invalid_max_items_format ¶ added in v1.8.0
func IAMListAccessKeys_invalid_user_name ¶ added in v1.8.0
func IAMListAccessKeys_long_user_name ¶ added in v1.8.0
func IAMListAccessKeys_missing_user_name ¶ added in v1.8.0
IAMListAccessKeys_missing_user_name calls as root, which is a configured credential rather than a stored IAM user and so has no user name to infer — unlike a caller signing with an IAM user's own access key, covered by IAMListAccessKeys_infers_caller_user_name.
func IAMListAccessKeys_non_existing_user ¶ added in v1.8.0
func IAMListAccessKeys_pagination ¶ added in v1.8.0
func IAMListAccessKeys_success ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_empty_result ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_invalid_arn ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_invalid_max_items ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_invalid_max_items_format ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_missing_arn ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_non_existing_provider ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_pagination ¶ added in v1.8.0
func IAMListOpenIDConnectProviderTags_success ¶ added in v1.8.0
func IAMListOpenIDConnectProviders_success ¶ added in v1.8.0
func IAMListRolePolicies_empty_result ¶ added in v1.8.0
func IAMListRolePolicies_invalid_max_items ¶ added in v1.8.0
func IAMListRolePolicies_missing_role_name ¶ added in v1.8.0
func IAMListRolePolicies_non_existing_role ¶ added in v1.8.0
func IAMListRolePolicies_pagination ¶ added in v1.8.0
func IAMListRolePolicies_success ¶ added in v1.8.0
func IAMListRoleTags_empty_result ¶ added in v1.8.0
func IAMListRoleTags_invalid_max_items ¶ added in v1.8.0
func IAMListRoleTags_invalid_max_items_format ¶ added in v1.8.0
func IAMListRoleTags_invalid_role_name ¶ added in v1.8.0
func IAMListRoleTags_missing_role_name ¶ added in v1.8.0
func IAMListRoleTags_non_existing_role ¶ added in v1.8.0
func IAMListRoleTags_pagination ¶ added in v1.8.0
func IAMListRoleTags_role_name_too_long ¶ added in v1.8.0
func IAMListRoleTags_success ¶ added in v1.8.0
func IAMListRoles_empty_result ¶ added in v1.8.0
func IAMListRoles_invalid_max_items ¶ added in v1.8.0
func IAMListRoles_invalid_max_items_format ¶ added in v1.8.0
func IAMListRoles_invalid_path_prefix ¶ added in v1.8.0
func IAMListRoles_long_path_prefix ¶ added in v1.8.0
func IAMListRoles_pagination ¶ added in v1.8.0
func IAMListRoles_path_prefix ¶ added in v1.8.0
func IAMListRoles_path_prefix_pagination ¶ added in v1.8.0
func IAMListRoles_success ¶ added in v1.8.0
func IAMListUserPolicies_empty_result ¶ added in v1.8.0
func IAMListUserPolicies_invalid_max_items ¶ added in v1.8.0
func IAMListUserPolicies_missing_user_name ¶ added in v1.8.0
func IAMListUserPolicies_non_existing_user ¶ added in v1.8.0
func IAMListUserPolicies_pagination ¶ added in v1.8.0
func IAMListUserPolicies_success ¶ added in v1.8.0
func IAMListUserTags_empty_result ¶ added in v1.8.0
func IAMListUserTags_invalid_max_items ¶ added in v1.8.0
func IAMListUserTags_invalid_max_items_format ¶ added in v1.8.0
func IAMListUserTags_invalid_user_name ¶ added in v1.8.0
func IAMListUserTags_missing_user_name ¶ added in v1.8.0
func IAMListUserTags_non_existing_user ¶ added in v1.8.0
func IAMListUserTags_pagination ¶ added in v1.8.0
func IAMListUserTags_success ¶ added in v1.8.0
func IAMListUserTags_user_name_too_long ¶ added in v1.8.0
func IAMListUsers_empty_result ¶ added in v1.8.0
func IAMListUsers_invalid_max_items ¶ added in v1.8.0
func IAMListUsers_invalid_max_items_format ¶ added in v1.8.0
func IAMListUsers_invalid_path_prefix ¶ added in v1.8.0
func IAMListUsers_long_path_prefix ¶ added in v1.8.0
func IAMListUsers_pagination ¶ added in v1.8.0
func IAMListUsers_path_prefix ¶ added in v1.8.0
func IAMListUsers_path_prefix_pagination ¶ added in v1.8.0
func IAMListUsers_success ¶ added in v1.8.0
func IAMPutRolePolicy_invalid_policy_name ¶ added in v1.8.0
func IAMPutRolePolicy_limit_exceeded ¶ added in v1.8.0
func IAMPutRolePolicy_long_policy_name ¶ added in v1.8.0
func IAMPutRolePolicy_malformed_policy_document ¶ added in v1.8.0
func IAMPutRolePolicy_missing_policy_document ¶ added in v1.8.0
func IAMPutRolePolicy_missing_policy_name ¶ added in v1.8.0
func IAMPutRolePolicy_missing_role_name ¶ added in v1.8.0
func IAMPutRolePolicy_non_ascii_policy_document ¶ added in v1.8.0
func IAMPutRolePolicy_non_existing_role ¶ added in v1.8.0
func IAMPutRolePolicy_overwrite_updates_existing ¶ added in v1.8.0
func IAMPutRolePolicy_principal_not_allowed ¶ added in v1.8.0
func IAMPutRolePolicy_success ¶ added in v1.8.0
func IAMPutUserPolicy_invalid_policy_name ¶ added in v1.8.0
func IAMPutUserPolicy_limit_exceeded ¶ added in v1.8.0
func IAMPutUserPolicy_long_policy_name ¶ added in v1.8.0
func IAMPutUserPolicy_malformed_policy_document ¶ added in v1.8.0
func IAMPutUserPolicy_missing_policy_document ¶ added in v1.8.0
func IAMPutUserPolicy_missing_policy_name ¶ added in v1.8.0
func IAMPutUserPolicy_missing_user_name ¶ added in v1.8.0
func IAMPutUserPolicy_non_ascii_policy_document ¶ added in v1.8.0
func IAMPutUserPolicy_non_existing_user ¶ added in v1.8.0
func IAMPutUserPolicy_overwrite_updates_existing ¶ added in v1.8.0
func IAMPutUserPolicy_principal_not_allowed ¶ added in v1.8.0
func IAMPutUserPolicy_success ¶ added in v1.8.0
func IAMQueryAuth_ECDSA_not_supported ¶ added in v1.8.0
func IAMQueryAuth_credentials_incorrect_region ¶ added in v1.8.0
func IAMQueryAuth_credentials_incorrect_service ¶ added in v1.8.0
func IAMQueryAuth_credentials_invalid_date ¶ added in v1.8.0
func IAMQueryAuth_credentials_invalid_terminal ¶ added in v1.8.0
func IAMQueryAuth_date_mismatch ¶ added in v1.8.0
func IAMQueryAuth_incorrect_secret_key ¶ added in v1.8.0
func IAMQueryAuth_invalid_date ¶ added in v1.8.0
func IAMQueryAuth_invalid_sha256_payload_hash_ignored ¶ added in v1.8.0
func IAMQueryAuth_malformed_credential ¶ added in v1.8.0
func IAMQueryAuth_missing_query_parameters ¶ added in v1.8.0
func IAMQueryAuth_non_existing_access_key ¶ added in v1.8.0
func IAMQueryAuth_security_token_not_supported ¶ added in v1.8.0
func IAMQueryAuth_success ¶ added in v1.8.0
func IAMQueryAuth_unsigned_query_parameter ¶ added in v1.8.0
func IAMQueryAuth_unsupported_algorithm ¶ added in v1.8.0
func IAMQueryAuth_with_expect_header ¶ added in v1.8.0
func IAMRemoveClientIDFromOpenIDConnectProvider_client_id_too_long ¶ added in v1.8.0
func IAMRemoveClientIDFromOpenIDConnectProvider_idempotent_absent ¶ added in v1.8.0
IAMRemoveClientIDFromOpenIDConnectProvider_idempotent_absent confirms removing a client ID that was never added succeeds silently rather than erroring.
func IAMRemoveClientIDFromOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMRemoveClientIDFromOpenIDConnectProvider_missing_client_id ¶ added in v1.8.0
func IAMRemoveClientIDFromOpenIDConnectProvider_non_existing_provider ¶ added in v1.8.0
func IAMRemoveClientIDFromOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_duplicate_tag_keys ¶ added in v1.8.0
IAMTagOpenIDConnectProvider_duplicate_tag_keys covers the provider actions' exact tag-key comparison: an identical key twice in one request is rejected, where a differently-cased repeat is two separate tags.
func IAMTagOpenIDConnectProvider_invalid_arn ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_invalid_tags ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_invalid_tags_precede_lookup ¶ added in v1.8.0
IAMTagOpenIDConnectProvider_invalid_tags_precede_lookup covers a malformed tag naming a provider that does not exist: the request is validated in full before the provider is looked up, so the tag error wins over NoSuchEntity.
func IAMTagOpenIDConnectProvider_isolated_per_provider ¶ added in v1.8.0
IAMTagOpenIDConnectProvider_isolated_per_provider covers two providers carrying the same tag keys: each set is its own, in both directions.
func IAMTagOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_missing_tag_key ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_missing_tag_value ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_missing_tags ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_non_existing_provider ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_overwrites_existing_tag ¶ added in v1.8.0
IAMTagOpenIDConnectProvider_overwrites_existing_tag covers re-tagging a key that is already present: the value is replaced rather than added alongside, while a differently-cased key is a separate tag that leaves the original in place.
func IAMTagOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_tag_limit_exceeded ¶ added in v1.8.0
func IAMTagOpenIDConnectProvider_too_many_tags ¶ added in v1.8.0
func IAMTagRole_duplicate_tag_keys ¶ added in v1.8.0
IAMTagRole_duplicate_tag_keys covers both an exact repeat and a differently-cased repeat: IAM compares tag keys case-insensitively, so both are the same key twice in one request.
func IAMTagRole_empty_tag_key ¶ added in v1.8.0
func IAMTagRole_invalid_role_name ¶ added in v1.8.0
func IAMTagRole_invalid_tag_key ¶ added in v1.8.0
func IAMTagRole_invalid_tag_value ¶ added in v1.8.0
func IAMTagRole_isolated_from_same_named_user ¶ added in v1.8.0
IAMTagRole_isolated_from_same_named_user covers a role and a user sharing a name: they are separate entities, so tagging one leaves the other's tags untouched in both directions.
func IAMTagRole_missing_role_name ¶ added in v1.8.0
func IAMTagRole_missing_tag_key ¶ added in v1.8.0
func IAMTagRole_missing_tag_value ¶ added in v1.8.0
func IAMTagRole_missing_tags ¶ added in v1.8.0
func IAMTagRole_non_existing_role ¶ added in v1.8.0
func IAMTagRole_overwrites_existing_tag ¶ added in v1.8.0
IAMTagRole_overwrites_existing_tag covers re-tagging a key that is already present: the value is replaced rather than added alongside, and a differently-cased key is the same tag — the newly supplied casing wins.
func IAMTagRole_role_name_too_long ¶ added in v1.8.0
func IAMTagRole_success ¶ added in v1.8.0
func IAMTagRole_tag_key_too_long ¶ added in v1.8.0
func IAMTagRole_tag_limit_exceeded ¶ added in v1.8.0
func IAMTagRole_tag_value_too_long ¶ added in v1.8.0
func IAMTagRole_too_many_tags ¶ added in v1.8.0
func IAMTagUser_duplicate_tag_keys ¶ added in v1.8.0
IAMTagUser_duplicate_tag_keys covers both an exact repeat and a differently-cased repeat: IAM compares tag keys case-insensitively, so both are the same key twice in one request.
func IAMTagUser_empty_tag_key ¶ added in v1.8.0
func IAMTagUser_invalid_tag_key ¶ added in v1.8.0
func IAMTagUser_invalid_tag_value ¶ added in v1.8.0
func IAMTagUser_invalid_user_name ¶ added in v1.8.0
func IAMTagUser_missing_tag_key ¶ added in v1.8.0
func IAMTagUser_missing_tag_value ¶ added in v1.8.0
func IAMTagUser_missing_tags ¶ added in v1.8.0
func IAMTagUser_missing_user_name ¶ added in v1.8.0
func IAMTagUser_non_existing_user ¶ added in v1.8.0
func IAMTagUser_overwrites_existing_tag ¶ added in v1.8.0
IAMTagUser_overwrites_existing_tag covers re-tagging a key that is already present: the value is replaced rather than added alongside, and a differently-cased key is the same tag — the newly supplied casing wins.
func IAMTagUser_success ¶ added in v1.8.0
func IAMTagUser_tag_key_too_long ¶ added in v1.8.0
func IAMTagUser_tag_limit_exceeded ¶ added in v1.8.0
func IAMTagUser_tag_value_too_long ¶ added in v1.8.0
func IAMTagUser_too_many_tags ¶ added in v1.8.0
func IAMTagUser_user_name_too_long ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_case_sensitive_key ¶ added in v1.8.0
IAMUntagOpenIDConnectProvider_case_sensitive_key covers removal by a differently-cased key: provider tag keys are compared exactly, so the stored tag survives and only its exact key removes it.
func IAMUntagOpenIDConnectProvider_invalid_arn ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_invalid_tag_key ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_missing_arn ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_missing_tag_keys ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_non_existing_provider ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_removal_is_idempotent ¶ added in v1.8.0
IAMUntagOpenIDConnectProvider_removal_is_idempotent covers the two ways a request can name a key that removes nothing: a key the provider never carried, and the same key twice in one request. Neither is an error — unlike TagOpenIDConnectProvider, which rejects a repeated key outright.
func IAMUntagOpenIDConnectProvider_removes_only_named_keys ¶ added in v1.8.0
IAMUntagOpenIDConnectProvider_removes_only_named_keys covers a partial removal leaving the rest of the set intact, including a key whose name only prefixes one of the supplied keys — matching is exact, not by prefix.
func IAMUntagOpenIDConnectProvider_success ¶ added in v1.8.0
func IAMUntagOpenIDConnectProvider_too_many_tag_keys ¶ added in v1.8.0
func IAMUntagRole_case_insensitive_key ¶ added in v1.8.0
IAMUntagRole_case_insensitive_key covers removal by a differently-cased key: IAM compares tag keys case-insensitively, so the tag is removed even though the supplied key does not match the stored casing.
func IAMUntagRole_invalid_role_name ¶ added in v1.8.0
func IAMUntagRole_invalid_tag_key ¶ added in v1.8.0
func IAMUntagRole_missing_role_name ¶ added in v1.8.0
func IAMUntagRole_missing_tag_keys ¶ added in v1.8.0
func IAMUntagRole_non_existing_role ¶ added in v1.8.0
func IAMUntagRole_removal_is_idempotent ¶ added in v1.8.0
IAMUntagRole_removal_is_idempotent covers the two ways a request can name a key that removes nothing: a key the role never carried, and the same key twice in one request. Neither is an error — unlike TagRole, which rejects a repeated key outright.
func IAMUntagRole_removes_only_named_keys ¶ added in v1.8.0
IAMUntagRole_removes_only_named_keys covers a partial removal leaving the rest of the set intact, including a key whose name only prefixes one of the supplied keys — matching is exact, not by prefix.
func IAMUntagRole_role_name_too_long ¶ added in v1.8.0
func IAMUntagRole_success ¶ added in v1.8.0
func IAMUntagRole_too_many_tag_keys ¶ added in v1.8.0
func IAMUntagUser_case_insensitive_key ¶ added in v1.8.0
IAMUntagUser_case_insensitive_key covers removal by a differently-cased key: IAM compares tag keys case-insensitively, so the tag is removed even though the supplied key does not match the stored casing.
func IAMUntagUser_invalid_tag_key ¶ added in v1.8.0
IAMUntagUser_invalid_tag_key covers every malformed TagKeys member the same way IAM does: whichever constraint fails — empty, over-long, or outside the allowed charset — the response is one generic error naming the whole constraint set, not the individual constraint that tripped.
func IAMUntagUser_invalid_user_name ¶ added in v1.8.0
func IAMUntagUser_missing_tag_keys ¶ added in v1.8.0
func IAMUntagUser_missing_user_name ¶ added in v1.8.0
func IAMUntagUser_non_existing_user ¶ added in v1.8.0
func IAMUntagUser_removal_is_idempotent ¶ added in v1.8.0
IAMUntagUser_removal_is_idempotent covers the two ways a request can name a key that removes nothing: a key the user never carried, and the same key twice in one request. Neither is an error — unlike TagUser, which rejects a repeated key outright.
func IAMUntagUser_success ¶ added in v1.8.0
func IAMUntagUser_too_many_tag_keys ¶ added in v1.8.0
func IAMUntagUser_user_name_too_long ¶ added in v1.8.0
func IAMUpdateAccessKey_access_key_id_too_long ¶ added in v1.8.0
func IAMUpdateAccessKey_access_key_id_too_short ¶ added in v1.8.0
func IAMUpdateAccessKey_inferred_user_name_scoped_to_caller ¶ added in v1.8.0
IAMUpdateAccessKey_inferred_user_name_scoped_to_caller confirms the inferred user name is the caller's own and nothing else: another user's access key is simply not found, rather than being updated.
func IAMUpdateAccessKey_infers_caller_user_name ¶ added in v1.8.0
func IAMUpdateAccessKey_invalid_access_key_id_chars ¶ added in v1.8.0
func IAMUpdateAccessKey_invalid_status ¶ added in v1.8.0
func IAMUpdateAccessKey_invalid_user_name ¶ added in v1.8.0
func IAMUpdateAccessKey_long_user_name ¶ added in v1.8.0
func IAMUpdateAccessKey_missing_access_key_id ¶ added in v1.8.0
func IAMUpdateAccessKey_missing_status ¶ added in v1.8.0
func IAMUpdateAccessKey_missing_user_name ¶ added in v1.8.0
IAMUpdateAccessKey_missing_user_name calls as root, which is a configured credential rather than a stored IAM user and so has no user name to infer — unlike a caller signing with an IAM user's own access key, covered by IAMUpdateAccessKey_infers_caller_user_name.
func IAMUpdateAccessKey_non_existing_access_key ¶ added in v1.8.0
func IAMUpdateAccessKey_non_existing_user ¶ added in v1.8.0
func IAMUpdateAccessKey_success ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_invalid_role_name ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_long_role_name ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_missing_policy_document ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_missing_role_name ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_non_ascii_policy_document ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_non_existing_role ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_success ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_trust_policy_document_grammar ¶ added in v1.8.0
func IAMUpdateAssumeRolePolicy_trust_policy_size_limit_exceeded ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_boundary_max_thumbprints ¶ added in v1.8.0
IAMUpdateOpenIDConnectProviderThumbprint_boundary_max_thumbprints confirms exactly MaxThumbprintsPerOIDCProvider entries succeeds — the limit message says "fewer than 5", but 5 itself is accepted.
func IAMUpdateOpenIDConnectProviderThumbprint_missing_arn ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_missing_thumbprint_list ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_non_existing_provider ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_success ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_too_many_thumbprints ¶ added in v1.8.0
func IAMUpdateOpenIDConnectProviderThumbprint_wrong_length_thumbprint ¶ added in v1.8.0
func IAMUpdateUser_invalid_new_path ¶ added in v1.8.0
func IAMUpdateUser_invalid_new_user_name ¶ added in v1.8.0
func IAMUpdateUser_invalid_user_name ¶ added in v1.8.0
func IAMUpdateUser_long_new_path ¶ added in v1.8.0
func IAMUpdateUser_long_new_user_name ¶ added in v1.8.0
func IAMUpdateUser_long_user_name ¶ added in v1.8.0
func IAMUpdateUser_new_user_name_already_exists ¶ added in v1.8.0
func IAMUpdateUser_non_existing_user ¶ added in v1.8.0
func IAMUpdateUser_success ¶ added in v1.8.0
func IAM_ChangeBucketOwner_back_to_root ¶ added in v1.0.6
func IAM_CreateBucket_empty_owner_header ¶ added in v1.1.0
func IAM_CreateBucket_non_existing_user ¶ added in v1.1.0
func IAM_CreateBucket_success ¶ added in v1.1.0
func IAM_ListBuckets ¶ added in v1.0.9
func IAM_user_access_denied ¶
func ListBucketAnalyticsConfiguration_not_implemented ¶ added in v1.0.17
func ListBucketIntelligentTieringConfiguration_not_implemented ¶ added in v1.0.17
func ListBucketInventoryConfiguration_not_implemented ¶ added in v1.0.17
func ListBucketMetricsConfigurations_not_implemented ¶ added in v1.0.17
func ListBuckets_as_admin ¶
func ListBuckets_as_user ¶
func ListBuckets_bucket_region ¶ added in v1.9.0
func ListBuckets_empty_success ¶ added in v1.0.9
func ListBuckets_invalid_bucket_region ¶ added in v1.9.0
func ListBuckets_invalid_max_buckets ¶ added in v1.0.9
func ListBuckets_success ¶
func ListBuckets_truncated ¶ added in v1.0.9
func ListBuckets_with_prefix ¶ added in v1.0.9
func ListMultipartUploads_both_delimiter_and_prefix ¶ added in v1.2.0
func ListMultipartUploads_delimiter_no_matches ¶ added in v1.2.0
func ListMultipartUploads_delimiter_truncated ¶ added in v1.2.0
func ListMultipartUploads_exceeding_max_uploads ¶ added in v1.0.11
func ListMultipartUploads_invalid_uploadId_marker ¶ added in v1.2.0
func ListMultipartUploads_keyMarker_not_from_list ¶ added in v1.2.0
func ListMultipartUploads_next_markers_not_truncated ¶ added in v1.9.0
func ListMultipartUploads_prefix ¶ added in v1.2.0
func ListMultipartUploads_upload_id_marker_truncated ¶ added in v1.9.0
func ListMultipartUploads_upload_id_marker_with_key_marker ¶ added in v1.9.0
func ListMultipartUploads_with_checksums ¶ added in v1.0.11
func ListMultipartUploads_with_upload_id ¶ added in v1.9.0
func ListObjectVersions_VD_success ¶ added in v1.0.8
func ListObjectVersions_checksum ¶ added in v1.0.11
func ListObjectVersions_containing_null_versionId_obj ¶ added in v1.0.8
func ListObjectVersions_dir_object_with_children ¶ added in v1.9.0
func ListObjectVersions_list_multiple_object_versions ¶ added in v1.0.8
func ListObjectVersions_list_single_object_versions ¶ added in v1.0.8
func ListObjectVersions_multiple_object_versions_truncated ¶ added in v1.0.8
func ListObjectVersions_negative_max_keys ¶ added in v1.2.0
func ListObjectVersions_non_existing_bucket ¶ added in v1.0.8
func ListObjectVersions_paginate_null_version ¶ added in v1.9.0
func ListObjectVersions_single_null_versionId_object ¶ added in v1.0.8
func ListObjectVersions_with_delete_markers ¶ added in v1.0.8
func ListObjectsV2_all_objs_max_keys ¶ added in v1.0.6
func ListObjectsV2_both_delimiter_and_prefix ¶ added in v1.0.6
func ListObjectsV2_exceeding_max_keys ¶ added in v1.0.11
func ListObjectsV2_full_pagination ¶ added in v1.8.0
ListObjectsV2_full_pagination walks a listing that spans many pages and checks that every object is returned exactly once, in order, with the continuation token driving the walk. This exercises backends whose continuation token is opaque (e.g. azure) rather than the last key.
func ListObjectsV2_invalid_parent_prefix ¶ added in v1.0.9
func ListObjectsV2_list_all_objs ¶ added in v1.0.8
func ListObjectsV2_mp_masking_delimiter ¶ added in v1.4.1
ListObjectsV2 with a delimiter should not include the .sgwtmp/ multipart prefix in common prefixes, even when pending multipart uploads exist.
func ListObjectsV2_mp_masking_start_after ¶ added in v1.4.1
ListObjectsV2 with startAfter should not surface pending multipart uploads even when real objects are interleaved with the startAfter boundary.
func ListObjectsV2_mp_masking_truncation ¶ added in v1.4.1
ListObjectsV2 truncation should count only real objects, not pending multipart uploads, and the continuation token should allow correct pagination.
func ListObjectsV2_non_truncated_common_prefixes ¶ added in v1.0.17
func ListObjectsV2_pagination_with_delimiter ¶ added in v1.8.0
ListObjectsV2_pagination_with_delimiter walks a delimited listing across several pages and checks that common prefixes and objects are each returned once and in order, with no prefix repeated across page boundaries.
func ListObjectsV2_should_not_list_pending_mps ¶ added in v1.4.1
ListObjects should not list any pending multipart uploads and no pending mp should block the bucket from deletion
func ListObjectsV2_single_dir_object_with_delim_and_prefix ¶ added in v1.0.6
func ListObjectsV2_start_after_continuation_token ¶ added in v1.9.0
func ListObjectsV2_truncated_common_prefixes ¶ added in v1.0.6
func ListObjectsV2_with_checksum ¶ added in v1.0.11
func ListObjectsV2_with_owner ¶ added in v1.0.13
func ListObjects_check_owner ¶ added in v1.0.13
func ListObjects_delimiter ¶
func ListObjects_exceeding_max_keys ¶ added in v1.0.11
func ListObjects_list_all_objs ¶ added in v1.0.8
func ListObjects_max_keys_0 ¶
func ListObjects_mp_masking_delimiter ¶ added in v1.4.1
ListObjects with a delimiter should not include the .sgwtmp/ multipart prefix in common prefixes, even when pending multipart uploads exist.
func ListObjects_mp_masking_truncation ¶ added in v1.4.1
ListObjects truncation should count only real objects, not pending multipart uploads.
func ListObjects_mp_masking_with_marker ¶ added in v1.4.1
ListObjects with a marker should not surface pending multipart uploads even when real objects are interleaved with the marker boundary.
func ListObjects_nested_dir_file_objs ¶ added in v1.0.11
func ListObjects_non_truncated_common_prefixes ¶ added in v1.0.13
func ListObjects_paginated ¶ added in v1.0.7
func ListObjects_should_not_list_pending_mps ¶ added in v1.4.1
ListObjects should not list any pending multipart uploads and no pending mp should block the bucket from deletion
func ListObjects_start_after ¶ added in v1.9.0
start-after and continuation-token belong to ListObjectsV2, so S3 rejects either one on a V1 listing, with or without a value. The SDK ListObjects input has neither field, so the requests are signed and sent by hand.
func ListObjects_truncated ¶ added in v1.0.6
func ListObjects_truncated_with_delimiter ¶ added in v1.9.0
func ListObjects_with_checksum ¶ added in v1.0.11
func ListObjects_with_prefix ¶
func ListParts_default_max_parts ¶ added in v1.0.8
func ListParts_exceeding_max_parts ¶ added in v1.0.11
func ListParts_invalid_max_parts ¶ added in v1.0.8
func ListParts_invalid_part_number_marker ¶ added in v1.2.0
func ListParts_null_checksums ¶ added in v1.0.14
func ListParts_success ¶
func ListParts_truncated ¶ added in v1.0.1
func ListParts_upload_id_path_traversal ¶ added in v1.9.0
func ListParts_with_checksums ¶ added in v1.0.11
func NoAclMode_CreateBucket_with_acl ¶ added in v1.3.0
func NoAclMode_PutBucketAcl ¶ added in v1.3.0
func ObjectLock_trailing_slash_counterpart ¶ added in v1.9.0
func ObjectTagging_trailing_slash_counterpart ¶ added in v1.9.0
func PostObject_access_denied ¶ added in v1.4.0
func PostObject_bucket_policy_explicit_deny ¶ added in v1.9.0
PostObject_bucket_policy_explicit_deny covers a Deny statement scoped to a key prefix overriding a bucket-wide Allow for POST uploads, the way it does for PutObject: the Deny on "bucket/private/*" matches the object ARN a POST to a private/ key is authorized against, and nothing else.
func PostObject_bucket_policy_object_resource ¶ added in v1.9.0
PostObject_bucket_policy_object_resource covers a user whose only upload grant is a bucket policy scoped to a key prefix. A POST upload is an s3:PutObject on the object its key field names, so it is authorized against that object's ARN, as PutObject is: the grant on "bucket/uploads/*" allows a key under uploads/ and denies any other.
func PostObject_checksums_success ¶ added in v1.4.0
func PostObject_default_content_type ¶ added in v1.8.0
func PostObject_empty_tag_set_requires_only_put_object ¶ added in v1.9.0
PostObject_empty_tag_set_requires_only_put_object covers a tagging field whose tag set is empty. It tags nothing, so the upload needs only s3:PutObject, as it does on S3.
func PostObject_expired_due_to_date ¶ added in v1.4.0
func PostObject_incorrect_region ¶ added in v1.4.0
func PostObject_invalid_algorithm ¶ added in v1.4.0
func PostObject_invalid_checksum_algorithm ¶ added in v1.4.0
func PostObject_invalid_checksum_value ¶ added in v1.4.0
func PostObject_invalid_content_type ¶ added in v1.4.0
func PostObject_invalid_credential_format ¶ added in v1.4.0
func PostObject_invalid_date ¶ added in v1.4.0
func PostObject_invalid_object_names ¶ added in v1.5.0
func PostObject_invalid_policy_document ¶ added in v1.4.0
func PostObject_invalid_tagging ¶ added in v1.4.0
func PostObject_invalid_website_redirect_location ¶ added in v1.6.0
func PostObject_missing_boundary ¶ added in v1.4.0
func PostObject_multiple_checksum_headers ¶ added in v1.4.0
func PostObject_non_existing_access_key ¶ added in v1.4.0
func PostObject_object_lock_default_retention ¶ added in v1.9.0
PostObject_object_lock_default_retention covers POST uploads to a bucket with a default retention rule: a plain upload gets the rule's retention, one setting a retention keeps its own, and one setting a legal hold, of either status, gets none.
func PostObject_object_lock_invalid_fields ¶ added in v1.9.0
PostObject_object_lock_invalid_fields covers invalid Object Lock fields of a POST upload, checked after the POST policy and the tagging, in the order S3 checks them: the mode and the date set together, then the legal hold, the date and the mode values. A field sent empty is invalid.
func PostObject_object_lock_missing_bucket_config ¶ added in v1.9.0
PostObject_object_lock_missing_bucket_config covers Object Lock fields of a POST upload to a bucket without Object Lock: a legal hold of either status or a retention is rejected, once the fields are found valid.
func PostObject_object_lock_success ¶ added in v1.9.0
PostObject_object_lock_success covers the Object Lock fields of a POST upload: a retention and a legal hold set on the object, the date kept to the millisecond.
func PostObject_partial_auth_fields ¶ added in v1.4.0
func PostObject_policy_access_control ¶ added in v1.4.0
func PostObject_policy_condition_key_mismatch ¶ added in v1.4.0
func PostObject_policy_content_length_too_large ¶ added in v1.4.0
func PostObject_policy_content_length_too_small ¶ added in v1.4.0
func PostObject_policy_expired ¶ added in v1.4.0
func PostObject_policy_extra_field ¶ added in v1.4.0
func PostObject_policy_missing_bucket_condition ¶ added in v1.4.0
func PostObject_should_ignore_anything_after_file ¶ added in v1.4.0
func PostObject_signature_mismatch ¶ added in v1.4.0
func PostObject_sse_c_not_implemented ¶ added in v1.9.0
func PostObject_success ¶ added in v1.4.0
func PostObject_success_double_dash_boundary ¶ added in v1.4.0
func PostObject_success_status_200 ¶ added in v1.4.0
func PostObject_success_status_201 ¶ added in v1.4.0
func PostObject_success_with_meta_properties ¶ added in v1.4.0
func PostObject_success_with_tagging ¶ added in v1.4.0
func PostObject_tagging_bucket_policy_explicit_deny ¶ added in v1.9.0
PostObject_tagging_bucket_policy_explicit_deny covers a Deny on s3:PutObjectTagging scoped to a key prefix. It refuses a tagged POST upload to a key under that prefix although a bucket-wide Allow grants both actions, and leaves an untagged upload there, which needs only s3:PutObject, alone.
func PostObject_tagging_requires_put_object_tagging ¶ added in v1.9.0
func PreflightOPTIONS_access_forbidden ¶ added in v1.0.17
func PreflightOPTIONS_access_granted ¶ added in v1.0.17
func PreflightOPTIONS_invalid_request_headers ¶ added in v1.0.17
func PreflightOPTIONS_invalid_request_method ¶ added in v1.0.17
func PreflightOPTIONS_missing_origin ¶ added in v1.0.17
func PreflightOPTIONS_non_existing_bucket ¶ added in v1.0.17
func PreflightOPTIONS_unset_bucket_cors ¶ added in v1.0.17
func PresignedAuth_CopyObject_strips_aws_chunked_content_encoding ¶ added in v1.9.0
PresignedAuth_CopyObject_strips_aws_chunked_content_encoding checks that aws-chunked is dropped from the stored Content-Encoding on a presigned copy.
func PresignedAuth_CreateMultipartUpload_strips_aws_chunked_content_encoding ¶ added in v1.9.0
PresignedAuth_CreateMultipartUpload_strips_aws_chunked_content_encoding checks that aws-chunked is dropped from the Content-Encoding a presigned CreateMultipartUpload stores for the completed object.
func PresignedAuth_ECDSA_not_supported ¶ added in v1.0.19
func PresignedAuth_PutObject_strips_aws_chunked_content_encoding ¶ added in v1.9.0
PresignedAuth_PutObject_strips_aws_chunked_content_encoding checks that aws-chunked is dropped from the stored Content-Encoding on a presigned PUT.
func PresignedAuth_creds_invalid_terminal ¶ added in v1.0.19
func PresignedAuth_missing_signature_query_param ¶ added in v1.0.19
func PresignedAuth_security_token_with_permanent_credentials ¶ added in v1.8.0
func PresignedAuth_sigv2_not_supported ¶ added in v1.5.0
func PresignedAuth_unsigned_non_required_header ¶ added in v1.5.0
func PresignedAuth_unsigned_required_header ¶ added in v1.5.0
func PublicBucket_default_private_bucket ¶ added in v1.0.18
func PublicBucket_incorrect_sha256_hash ¶ added in v1.0.19
func PublicBucket_object_version_actions ¶ added in v1.9.0
PublicBucket_object_version_actions covers anonymous requests naming an object version, each authorized as the version's own action: s3:GetObjectVersion for GetObject and HeadObject, the version tagging actions for the tagging APIs and s3:DeleteObjectVersion for DeleteObject. A policy granting the plain actions allows only the requests naming no version, and one granting the version actions only those that do.
func PublicBucket_object_version_actions_public_acl ¶ added in v1.9.0
PublicBucket_object_version_actions_public_acl covers anonymous requests naming an object version on a bucket whose ACL is public-read-write. The ACL's READ grant covers s3:GetObjectVersion as it does s3:GetObject, so versioned reads are allowed, but its WRITE grant never gives an anonymous requester s3:DeleteObjectVersion: a versioned delete is denied, while a plain one, which only adds a delete marker, is allowed.
func PublicBucket_policy_deny_overrides_public_acl ¶ added in v1.5.0
func PublicBucket_post_object_lock ¶ added in v1.9.0
PublicBucket_post_object_lock covers the Object Lock fields of an anonymous POST upload. Unlike an anonymous PutObject, it may lock the object it writes, once the bucket grants each lock action publicly as it does s3:PutObject. Invalid fields are rejected before any permission is checked.
func PublicBucket_post_object_policy ¶ added in v1.9.0
PublicBucket_post_object_policy covers anonymous POST uploads to a bucket whose policy grants public s3:PutObject on a key prefix. The POST is addressed to the bucket, but it is authorized against the ARN of the object its key field names, as PutObject is: a key under uploads/ is allowed and any other denied.
func PublicBucket_post_object_policy_deny_overrides_public_acl ¶ added in v1.9.0
PublicBucket_post_object_policy_deny_overrides_public_acl covers a public Deny scoped to a key prefix on a bucket whose ACL is public-read-write: an anonymous POST to a key under private/ matches the Deny on its object ARN and is refused, rather than falling through to the ACL's public write grant, which still allows a POST to any other key.
func PublicBucket_post_object_tagging ¶ added in v1.9.0
PublicBucket_post_object_tagging covers anonymous POST uploads that tag the object they create. The public grant has to cover s3:PutObjectTagging too: under a policy granting public s3:PutObject alone, a tagged upload is denied while one with an empty tag set, which tags nothing, is not, and the tagged upload succeeds once the policy grants both actions.
func PublicBucket_public_acl ¶ added in v1.0.15
func PublicBucket_public_bucket_policy ¶ added in v1.0.15
func PublicBucket_public_object_policy ¶ added in v1.0.15
func PublicBucket_put_object_default_retention ¶ added in v1.9.0
PublicBucket_put_object_default_retention covers anonymous uploads to a bucket with a default retention rule, which gives every object written to it Object Lock parameters. Only a signed PutObject may lock the object it writes, so even a plain anonymous one is refused, and before any authorization: the bucket grants no public access yet.
func PublicBucket_put_object_lock ¶ added in v1.9.0
PublicBucket_put_object_lock covers anonymous PutObject uploads carrying Object Lock parameters, which only a signed upload may set. The bucket publicly grants the upload and its lock actions alike, and still a legal hold of either status or a retention is refused: as an invalid argument when the upload carries an integrity check of its body, and for the missing integrity check when it doesn't.
func PublicBucket_put_object_lock_missing_bucket_lock ¶ added in v1.9.0
PublicBucket_put_object_lock_missing_bucket_lock covers anonymous PutObject uploads carrying Object Lock parameters to a bucket without Object Lock, which rejects the parameters themselves, as it does for a signed upload.
func PublicBucket_put_object_tagging ¶ added in v1.9.0
PublicBucket_put_object_tagging covers anonymous PutObject uploads that tag the object they create. Tagging it takes s3:PutObjectTagging on top of s3:PutObject: a policy granting public s3:PutObject alone denies the tagged upload but not an untagged one, granting both allows it, and an explicit public Deny of s3:PutObjectTagging denies it again.
func PublicBucket_put_object_tagging_public_acl ¶ added in v1.9.0
PublicBucket_put_object_tagging_public_acl covers anonymous tagged PutObject uploads to a bucket whose ACL is public-read-write. The ACL's write grant covers s3:PutObject alone, so a tagged upload is denied until the bucket policy publicly grants s3:PutObjectTagging, and allowed once it does: each action is granted on its own, by the policy or the ACL.
func PublicBucket_signed_streaming_payload ¶ added in v1.0.19
func PublicBucket_upload_part_object_lock ¶ added in v1.9.0
PublicBucket_upload_part_object_lock covers anonymous parts of a multipart upload created with a legal hold. Unlike an anonymous PutObject, an anonymous part may go into an upload with Object Lock parameters, but it needs an integrity check of its body like any other part of one.
func PutBucketAccelerateConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketAcl_disabled ¶ added in v1.0.3
func PutBucketAcl_empty_grantee_ID_in_body ¶ added in v1.0.10
func PutBucketAcl_invalid_canned_acl ¶ added in v1.0.19
func PutBucketAcl_invalid_empty_owner_id_in_body ¶ added in v1.0.10
func PutBucketAcl_invalid_grantee_type_in_body ¶ added in v1.0.10
func PutBucketAcl_invalid_permission_in_body ¶ added in v1.0.10
func PutBucketAcl_none_of_the_options_specified ¶ added in v1.0.6
func PutBucketAnalyticsConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketCors_empty_cors_rules ¶ added in v1.0.17
func PutBucketCors_invalid_allowed_origins ¶ added in v1.3.0
func PutBucketCors_invalid_header ¶ added in v1.0.17
func PutBucketCors_invalid_method ¶ added in v1.0.17
func PutBucketCors_md5 ¶ added in v1.0.19
func PutBucketCors_non_existing_bucket ¶ added in v1.0.17
func PutBucketCors_success ¶ added in v1.0.17
func PutBucketEncryption_not_implemented ¶ added in v1.0.17
func PutBucketIntelligentTieringConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketInventoryConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketLifecycleConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketLogging_not_implemented ¶ added in v1.0.17
func PutBucketMetricsConfiguration_not_implemented ¶ added in v1.0.17
func PutBucketNotificationConfiguratio_not_implemented ¶ added in v1.0.17
func PutBucketOwnershipControls_empty_rules ¶ added in v1.5.0
func PutBucketOwnershipControls_invalid_ownership ¶ added in v1.0.3
func PutBucketOwnershipControls_multiple_rules ¶ added in v1.0.3
func PutBucketOwnershipControls_non_existing_bucket ¶ added in v1.0.3
func PutBucketOwnershipControls_success ¶ added in v1.0.3
func PutBucketPolicy_action_resource_mismatch ¶ added in v1.0.18
func PutBucketPolicy_any_char_match ¶ added in v1.0.11
func PutBucketPolicy_condition_action_mismatch ¶ added in v1.8.0
func PutBucketPolicy_condition_conditional_write_keys ¶ added in v1.9.0
func PutBucketPolicy_condition_invalid_ip ¶ added in v1.8.0
func PutBucketPolicy_condition_invalid_key ¶ added in v1.8.0
func PutBucketPolicy_condition_invalid_operator ¶ added in v1.8.0
func PutBucketPolicy_empty_statement ¶ added in v1.0.2
func PutBucketPolicy_explicit_deny ¶ added in v1.0.11
func PutBucketPolicy_invalid_json ¶ added in v1.0.13
func PutBucketPolicy_multi_wildcard_resource ¶ added in v1.0.11
func PutBucketPolicy_statement_not_provided ¶ added in v1.0.13
func PutBucketPolicy_status ¶ added in v1.1.0
func PutBucketPolicy_success ¶
func PutBucketPolicy_version ¶ added in v1.0.19
func PutBucketReplication_not_implemented ¶ added in v1.0.17
func PutBucketRequestPayment_not_implemented ¶ added in v1.0.17
func PutBucketTagging_duplicate_keys ¶ added in v1.0.13
func PutBucketTagging_invalid_tag_error_fields ¶ added in v1.9.0
func PutBucketTagging_invalid_tags ¶ added in v1.0.19
func PutBucketTagging_multibyte_tags ¶ added in v1.9.0
func PutBucketTagging_success_status ¶ added in v1.0.9
func PutBucketTagging_tag_count_limit ¶ added in v1.0.13
func PutBucketVersioning_invalid_status ¶ added in v1.0.8
func PutBucketVersioning_non_existing_bucket ¶ added in v1.0.8
func PutBucketVersioning_success_enabled ¶ added in v1.0.8
func PutBucketVersioning_success_suspended ¶ added in v1.0.8
func PutBucketWebsite_empty_configuration ¶ added in v1.9.0
func PutBucketWebsite_empty_error_document_key ¶ added in v1.6.0
func PutBucketWebsite_empty_routing_rule_condition ¶ added in v1.6.0
func PutBucketWebsite_empty_routing_rule_redirect ¶ added in v1.6.0
func PutBucketWebsite_empty_suffix ¶ added in v1.6.0
func PutBucketWebsite_invalid_http_error_code ¶ added in v1.6.0
func PutBucketWebsite_invalid_http_redirect_code ¶ added in v1.6.0
func PutBucketWebsite_invalid_redirect_protocol ¶ added in v1.6.0
func PutBucketWebsite_invalid_routing_rule_protocol ¶ added in v1.6.0
func PutBucketWebsite_non_existing_bucket ¶ added in v1.6.0
func PutBucketWebsite_redirectAll_index_error_routingRules ¶ added in v1.6.0
func PutBucketWebsite_request_too_large ¶ added in v1.6.0
func PutBucketWebsite_routing_rule_replace_key_and_prefix ¶ added in v1.6.0
func PutBucketWebsite_success ¶ added in v1.6.0
func PutBucketWebsite_success_redirect_all ¶ added in v1.6.0
func PutBucketWebsite_suffix_with_slash ¶ added in v1.6.0
func PutBucketWebsite_too_many_routing_rules ¶ added in v1.6.0
func PutObjectAcl_not_implemented ¶ added in v1.3.0
func PutObjectLegalHold_empty_version_id ¶ added in v1.9.0
func PutObjectLockConfiguration_default_retention_missing_period ¶ added in v1.9.0
PutObjectLockConfiguration_default_retention_missing_period covers a default retention rule with a mode but neither Days nor Years: it is rejected, and the bucket keeps the rule it had.
func PutObjectLockConfiguration_empty_request_body ¶ added in v1.0.19
func PutObjectLockConfiguration_malformed_body ¶ added in v1.0.19
func PutObjectLockConfiguration_rule_without_default_retention ¶ added in v1.9.0
PutObjectLockConfiguration_rule_without_default_retention covers a <Rule> element with no <DefaultRetention> in it.
func PutObjectRetention_empty_version_id ¶ added in v1.9.0
func PutObjectRetention_overwrite_compliance_with_compliance ¶ added in v1.0.19
func PutObjectRetention_overwrite_governance_with_governance ¶ added in v1.0.19
func PutObjectRetention_rewrite_same_date ¶ added in v1.8.0
func PutObjectRetention_shorten_compliance_denied ¶ added in v1.8.0
func PutObjectRetention_shorten_governance_with_bypass ¶ added in v1.8.0
func PutObjectRetention_shorten_governance_without_bypass ¶ added in v1.8.0
func PutObjectTagging_duplicate_keys ¶ added in v1.0.13
func PutObjectTagging_empty_version_id ¶ added in v1.9.0
func PutObjectTagging_invalid_tag_error_fields ¶ added in v1.9.0
func PutObjectTagging_invalid_tags ¶ added in v1.0.19
func PutObjectTagging_tag_count_limit ¶ added in v1.0.13
func PutObject_aborted_plain_body ¶ added in v1.9.0
PutObject_aborted_plain_body checks that a plain (non-aws-chunked) PUT whose body ends before Content-Length does not become a readable object.
Real S3 rejects the request and the key stays absent. The posix backend used to truncate the object to the bytes received and link it into place, so the aborted upload showed up as a complete - but shorter - object.
func PutObject_checksum_algorithm_and_header_mismatch ¶ added in v1.0.11
func PutObject_checksums_success ¶ added in v1.0.11
func PutObject_conditional_writes ¶ added in v1.0.18
func PutObject_data_integrity_etag ¶ added in v1.8.0
func PutObject_default_checksum ¶ added in v1.0.13
func PutObject_default_content_type ¶ added in v1.3.0
func PutObject_default_retention_checksum_required ¶ added in v1.9.0
PutObject_default_retention_checksum_required covers uploads to a bucket with a default retention rule, which gives every object written to it Object Lock parameters: even a plain upload, an empty one included, then needs an integrity check of its body.
func PutObject_dir_object_checksums_success ¶ added in v1.3.0
func PutObject_dir_object_data_integrity_etag ¶ added in v1.8.0
func PutObject_dir_object_default_checksum ¶ added in v1.3.0
func PutObject_dir_object_overwrite_resets_attributes ¶ added in v1.9.0
func PutObject_false_negative_object_names ¶ added in v1.0.15
func PutObject_incorrect_checksums ¶ added in v1.0.11
func PutObject_invalid_checksum_header ¶ added in v1.0.11
func PutObject_invalid_legal_hold ¶ added in v1.0.12
func PutObject_invalid_object_lock_mode ¶ added in v1.0.12
func PutObject_invalid_object_names ¶ added in v1.0.15
func PutObject_invalid_retain_until_date ¶ added in v1.1.0
func PutObject_invalid_website_redirect_location ¶ added in v1.6.0
func PutObject_long_metadata ¶ added in v1.4.0
func PutObject_md5 ¶ added in v1.6.0
func PutObject_missing_bucket_lock ¶ added in v1.1.0
func PutObject_multiple_checksum_headers ¶ added in v1.0.11
func PutObject_name_too_long ¶ added in v1.0.6
func PutObject_object_acl_not_supported ¶ added in v1.2.0
func PutObject_object_lock_checksum_required ¶ added in v1.9.0
PutObject_object_lock_checksum_required covers uploads carrying Object Lock parameters, which need an integrity check of their body: a legal hold of either status or a retention sent with neither Content-MD5 nor a checksum is rejected, and a legal hold sent with either is stored.
func PutObject_object_lock_headers_validation ¶ added in v1.9.0
PutObject_object_lock_headers_validation covers invalid Object Lock headers, checked in the order S3 checks them: the mode and the date set together, then the legal hold, the date and the mode values. A header sent empty is invalid.
func PutObject_overwrite_file_obj_with_nested_obj ¶ added in v1.0.8
func PutObject_overwrite_multipart_object ¶ added in v1.9.0
func PutObject_overwrite_resets_attributes ¶ added in v1.9.0
func PutObject_past_retain_until_date ¶ added in v1.1.0
func PutObject_plain_body_with_decoded_length ¶ added in v1.9.0
PutObject_plain_body_with_decoded_length checks that a COMPLETE plain upload still succeeds when it happens to carry X-Amz-Decoded-Content-Length.
AWS S3 ignores that header on a plain body and stores Content-Length bytes. The length check must therefore use Content-Length, not the decoded value - otherwise a complete upload is rejected with IncompleteBody.
func PutObject_plain_stores_aws_chunked_content_encoding ¶ added in v1.9.0
PutObject_plain_stores_aws_chunked_content_encoding checks that aws-chunked is stored as sent when the request wasn't framed in it.
The token is transport only where x-amz-content-sha256 names a streaming payload type. On a plain PUT it is a coding the client chose, and S3 keeps it like any other.
func PutObject_race_with_delete ¶ added in v1.4.0
PutObject_race_with_delete tests the race between PutObject and DeleteObject in the same subdirectory. One goroutine sequentially puts "race-dir/0.txt" … "race-dir/N-1.txt". A second goroutine loops for the same number of iterations: it lists all objects under "race-dir/" and bulk-deletes them. When the batch delete removes the last visible object in the directory, removeParents() rmdir's "race-dir/", which can race with the uploader's final link() step. The test asserts that no error is returned from either goroutine.
func PutObject_racey_success ¶ added in v1.0.8
func PutObject_should_combine_metadata ¶ added in v1.4.0
func PutObject_special_chars ¶
func PutObject_sse_c_invalid_headers ¶ added in v1.9.0
func PutObject_sse_c_not_implemented ¶ added in v1.9.0
func PutObject_sse_c_requires_tls ¶ added in v1.9.0
func PutObject_success ¶
func PutObject_tagging ¶ added in v1.0.14
func PutObject_tagging_invalid_argument_value ¶ added in v1.9.0
func PutObject_unsigned_payload_with_aws_chunked_content_encoding ¶ added in v1.9.0
func PutObject_unsupported_sse_not_implemented ¶ added in v1.9.0
func PutObject_windows_reserved_names ¶ added in v1.9.0
func PutObject_with_metadata ¶ added in v1.0.19
func PutObject_with_slashes ¶ added in v1.0.17
func PutPublicAccessBlock_not_implemented ¶ added in v1.0.17
func RouterCopySourceNotAllowed ¶ added in v1.0.19
func RouterGetUploadsWithKey ¶ added in v1.0.19
func RouterInvalidURLEscape ¶ added in v1.9.0
func RouterListVersionsWithKey ¶ added in v1.1.0
func RouterObjectAnnotationNotImplemented ¶ added in v1.9.0
func RouterObjectTorrentMethodNotAllowed ¶ added in v1.9.0
func RouterPUTObjectOnlyUploadId ¶ added in v1.0.17
func RouterPostObjectWithoutQuery ¶ added in v1.0.17
func RouterPostRoot ¶ added in v1.0.17
func RouterPutPartNumberWithoutUploadId ¶ added in v1.0.17
router tests
func RouterRenameObjectNotImplemented ¶ added in v1.9.0
func RouterUploadsWithUploadId ¶ added in v1.9.0
func S3IAMAccessControl_access_key_last_used_records_s3 ¶ added in v1.8.0
S3IAMAccessControl_access_key_last_used_records_s3 covers last-used tracking for the S3 data plane: an IAM user's S3 request is recorded against the access key that signed it, with the "s3" service name and the gateway's region — neither of which the IAM control plane can produce.
func S3IAMAccessControl_bucket_policy_allows_without_identity_policy ¶ added in v1.8.0
S3IAMAccessControl_bucket_policy_allows_without_identity_policy verifies the resource side is independently sufficient too: a bucket policy naming the user's ARN grants the request with no identity policy at all.
func S3IAMAccessControl_bucket_policy_explicit_deny ¶ added in v1.8.0
S3IAMAccessControl_bucket_policy_explicit_deny verifies a bucket-policy Deny denies on its own, and reports the resource-based-policy message.
func S3IAMAccessControl_compliance_mode_not_bypassable ¶ added in v1.8.0
S3IAMAccessControl_compliance_mode_not_bypassable verifies COMPLIANCE retention is absolute: no identity or bucket policy can grant a bypass of it, unlike GOVERNANCE.
func S3IAMAccessControl_condition_conditional_write_keys_cover_copies ¶ added in v1.9.0
S3IAMAccessControl_condition_conditional_write_keys_cover_copies is the "enforce conditional writes" pattern for a copy. A copy's If-None-Match is a conditional write on its destination, so it populates the key just like an upload's: a copy without it is denied, and one carrying it is authorized and then held to the precondition.
func S3IAMAccessControl_condition_conditional_write_keys_ignore_reads ¶ added in v1.9.0
S3IAMAccessControl_condition_conditional_write_keys_ignore_reads pins the keys to writes. GET and HEAD take If-Match/If-None-Match too, as ordinary HTTP cache preconditions, and neither may populate the condition context there — otherwise a browser revalidating its cache would decide whether a read is authorized.
func S3IAMAccessControl_condition_conditional_write_values ¶ added in v1.9.0
S3IAMAccessControl_condition_conditional_write_values covers both keys' values on an upload: s3:if-match carries the ETag with its surrounding quotes stripped, and s3:if-none-match carries the only value S3 accepts on a write, the literal "*".
func S3IAMAccessControl_condition_identity_keys ¶ added in v1.8.0
S3IAMAccessControl_condition_identity_keys verifies the identity-derived condition keys — which the IAM service fills in, since the gateway never learns who an access key belongs to — reach policy evaluation.
func S3IAMAccessControl_condition_if_match_bucket_level_write ¶ added in v1.9.0
S3IAMAccessControl_condition_if_match_bucket_level_write pins the last shape a bare PUT can take. A bucket sub-resource write carries none of the object sub-resources, so the request alone looks exactly like an upload; only the action it is authorized under separates the two. The gateway reads no If-Match there, so the key has to stay absent rather than satisfy a statement demanding a conditional write.
func S3IAMAccessControl_condition_if_match_delete_object ¶ added in v1.9.0
S3IAMAccessControl_condition_if_match_delete_object covers the half of s3:if-match that isn't an upload: S3's conditional delete.
func S3IAMAccessControl_condition_if_match_ignores_delete_objects ¶ added in v1.9.0
S3IAMAccessControl_condition_if_match_ignores_delete_objects covers the batch delete. DeleteObjects carries one request-level header for the whole batch and the gateway never applies it to any key, so letting it populate s3:if-match would authorize deleting every object in the batch against an ETag nothing checks.
func S3IAMAccessControl_condition_if_match_versioned_delete ¶ added in v1.9.0
S3IAMAccessControl_condition_if_match_versioned_delete checks that a delete naming a version and carrying If-Match is rejected before the identity policy is evaluated, whether the policy would deny or allow it.
func S3IAMAccessControl_condition_if_none_match_required ¶ added in v1.9.0
S3IAMAccessControl_condition_if_none_match_required is AWS's documented "enforce conditional writes" pattern expressed as an identity policy: an unconditional Allow paired with a Deny that fires whenever the key is absent.
func S3IAMAccessControl_condition_multiple_keys_anded ¶ added in v1.8.0
S3IAMAccessControl_condition_multiple_keys_anded verifies multiple keys within one Condition block must all hold, while multiple values for one key are ORed.
func S3IAMAccessControl_condition_negated_operator_needs_context ¶ added in v1.8.0
S3IAMAccessControl_condition_negated_operator_needs_context is a regression test for a fail-open bug: the gateway used to send no condition context at all for S3 requests, and iamapi/policy treats a negated operator over an absent key as vacuously true — so a Deny guarded by NotIpAddress silently never fired, and an Allow guarded by one fired for everybody. With the context populated, a NotIpAddress Deny naming the caller's own address must actually deny.
func S3IAMAccessControl_condition_on_deny_statement ¶ added in v1.8.0
S3IAMAccessControl_condition_on_deny_statement verifies a Condition attached to a Deny narrows that Deny — when the condition doesn't hold, the statement contributes nothing and an unconditional Allow still stands.
func S3IAMAccessControl_condition_principal_tag ¶ added in v1.8.0
S3IAMAccessControl_condition_principal_tag verifies aws:PrincipalTag/<key> is populated from the calling user's own IAM tags, and that a tag the user doesn't carry is treated as absent rather than as an empty match.
func S3IAMAccessControl_condition_request_keys ¶ added in v1.8.0
S3IAMAccessControl_condition_request_keys covers the remaining condition keys the gateway derives from the request itself.
func S3IAMAccessControl_condition_source_ip ¶ added in v1.8.0
S3IAMAccessControl_condition_source_ip verifies aws:SourceIp is populated from the real request, both as a grant that matches and as one that doesn't.
func S3IAMAccessControl_copy_object_requires_both_sides ¶ added in v1.8.0
S3IAMAccessControl_copy_object_requires_both_sides verifies a CopyObject is authorized against both its source (GetObject) and its destination (PutObject), so a policy granting only one of the two is not enough.
func S3IAMAccessControl_copy_object_tagging_split_sources ¶ added in v1.9.0
S3IAMAccessControl_copy_object_tagging_split_sources verifies a CopyObject replacing the tags decides the destination's s3:PutObject and s3:PutObjectTagging independently: a bucket policy granting s3:PutObject (and s3:GetObject for the source) and an identity policy granting only s3:PutObjectTagging together allow it, and the new tags are applied.
func S3IAMAccessControl_create_bucket ¶ added in v1.8.0
S3IAMAccessControl_create_bucket verifies s3:CreateBucket is gated by the identity policy alone — the bucket doesn't exist yet, so there is no bucket policy or ACL to consult — and that the grant is resource-scoped to the bucket name.
func S3IAMAccessControl_create_multipart_upload_tagging_split_sources ¶ added in v1.9.0
S3IAMAccessControl_create_multipart_upload_tagging_split_sources verifies a tagged CreateMultipartUpload decides s3:PutObject and s3:PutObjectTagging independently: a bucket policy granting only s3:PutObject and an identity policy granting only s3:PutObjectTagging together allow it, and the completed object carries the tags.
func S3IAMAccessControl_delete_objects_authorizes_each_key ¶ added in v1.8.0
S3IAMAccessControl_delete_objects_authorizes_each_key verifies the batch DeleteObjects path authorizes s3:DeleteObject against each object's own ARN, the way real AWS does — a policy naming only "bucket/*" is sufficient — and that it supports partial success: a key outside the granted prefix denies only that key, reported in the response's Errors list, while every other key in the same batch is still deleted and reported in Deleted. Both lists preserve the order the keys were requested in.
func S3IAMAccessControl_delete_objects_bucket_policy_deny_per_key ¶ added in v1.8.0
S3IAMAccessControl_delete_objects_bucket_policy_deny_per_key verifies a bucket-policy Deny settles only the key it names. DeleteObjects is a partial-success API, so every key is authorized on its own: a Deny on one key is reported against that key and leaves every other key to be evaluated on its own merits — an explicitly denied key never lets the keys after it through unauthorized.
func S3IAMAccessControl_delete_objects_deny_across_versioned_split ¶ added in v1.8.0
S3IAMAccessControl_delete_objects_deny_across_versioned_split verifies a denial in one half of a batch doesn't authorize the other half. A batch is split by action — keyed entries are authorized against s3:DeleteObject, entries naming a VersionId against s3:DeleteObjectVersion — and each half is evaluated separately, so a denial has to settle its own key in its own half and nothing else: not the keys after it, and not the keys in the other half.
func S3IAMAccessControl_delete_objects_version_needs_separate_permission ¶ added in v1.8.0
S3IAMAccessControl_delete_objects_version_needs_separate_permission verifies that naming a VersionId in a DeleteObjects entry is authorized against s3:DeleteObjectVersion, a distinct permission from the s3:DeleteObject a keyed (unversioned) delete needs - a policy granting only s3:DeleteObject denies the versioned deletes in a batch while its keyed deletes in the same batch still succeed, each independently, matching the single-object DELETE path's existing behavior for the same distinction.
func S3IAMAccessControl_governance_bypass_delete_objects ¶ added in v1.8.0
S3IAMAccessControl_governance_bypass_delete_objects verifies the batch DeleteObjects path enforces the bypass permission per object, the same way the single-object delete does.
func S3IAMAccessControl_governance_bypass_put_object_retention ¶ added in v1.8.0
S3IAMAccessControl_governance_bypass_put_object_retention verifies the bypass permission gates weakening a GOVERNANCE retention through PutObjectRetention — here by switching its mode to COMPLIANCE, which the gateway only permits with the bypass header.
func S3IAMAccessControl_governance_bypass_sources ¶ added in v1.8.0
S3IAMAccessControl_governance_bypass_sources verifies s3:BypassGovernance Retention follows the same precedence as any other action: an Allow from either the identity policy or the bucket policy is enough on its own, and an explicit Deny from either wins over the other's Allow.
func S3IAMAccessControl_governance_without_bypass_header ¶ added in v1.8.0
S3IAMAccessControl_governance_without_bypass_header verifies the bypass permission is irrelevant when the request doesn't ask to bypass: the object stays protected, and the error is the generic object-lock one.
func S3IAMAccessControl_identity_policy_action_wildcards ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_action_wildcards verifies "s3:*" and prefix wildcards ("s3:Get*") match the way an exact action name does.
func S3IAMAccessControl_identity_policy_allows_without_bucket_policy ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_allows_without_bucket_policy is the core same-account behavior: an identity-policy Allow grants the request on its own, with no bucket policy and no ACL grant involved at all.
func S3IAMAccessControl_identity_policy_bucket_vs_object_arn ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_bucket_vs_object_arn verifies a bucket-level action evaluates against the bucket ARN, so an object-ARN grant ("bucket/*") does not cover it and vice versa.
func S3IAMAccessControl_identity_policy_explicit_deny_wins ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_explicit_deny_wins verifies an explicit Deny beats a matching Allow regardless of statement order or of whether the two live in the same inline policy document.
func S3IAMAccessControl_identity_policy_not_action_and_not_resource ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_not_action_and_not_resource verifies NotAction and NotResource grant everything *except* what they name.
func S3IAMAccessControl_identity_policy_resource_scoping ¶ added in v1.8.0
S3IAMAccessControl_identity_policy_resource_scoping verifies a Resource pattern scopes a grant to matching keys only.
func S3IAMAccessControl_inactive_and_deleted_credentials ¶ added in v1.8.0
S3IAMAccessControl_inactive_and_deleted_credentials verifies the gateway stops accepting an access key as soon as the IAM service stops vouching for it — whether it was deactivated, deleted, or its user was removed.
func S3IAMAccessControl_list_buckets ¶ added in v1.8.0
S3IAMAccessControl_list_buckets verifies ListBuckets is gated by s3:ListAllMyBuckets under the standalone IAM service: root always lists, an ordinary user needs an identity-policy Allow for the action.
func S3IAMAccessControl_multiple_inline_policies_combine ¶ added in v1.8.0
S3IAMAccessControl_multiple_inline_policies_combine verifies separate inline policy documents are unioned, so an action allowed by either one is allowed overall.
func S3IAMAccessControl_no_policy_denies ¶ added in v1.8.0
S3IAMAccessControl_no_policy_denies verifies a caller with no identity policy and no bucket policy is denied by default — there is no implicit grant anywhere for an ordinary IAM user.
func S3IAMAccessControl_policy_combinations ¶ added in v1.8.0
S3IAMAccessControl_policy_combinations walks the full precedence matrix between the identity policy and the bucket policy for one action, checking the exact outcome and message for each of the nine combinations that matter.
func S3IAMAccessControl_post_object_identity_policy_resource_scoping ¶ added in v1.9.0
S3IAMAccessControl_post_object_identity_policy_resource_scoping verifies a POST upload evaluates against the ARN of the object its key field names, as PutObject does, not the bucket ARN the request is addressed to: an s3:PutObject grant on "bucket/allowed/*" allows a POST to a key under allowed/ and denies any other.
func S3IAMAccessControl_post_object_lock_identity_policy ¶ added in v1.9.0
S3IAMAccessControl_post_object_lock_identity_policy verifies the Object Lock fields of a POST upload need the lock actions on the object: s3:PutObjectRetention for a retention and s3:PutObjectLegalHold for a legal hold of either status. A POST upload denied several actions is denied the retention first, then the legal hold, the tagging and s3:PutObject.
func S3IAMAccessControl_post_object_tagging_identity_policy ¶ added in v1.9.0
S3IAMAccessControl_post_object_tagging_identity_policy verifies a POST upload that tags its object needs s3:PutObjectTagging on the object in addition to s3:PutObject, as PutObject does. With only s3:PutObject granted, the tagged upload is denied naming s3:PutObjectTagging, and an explicit Deny on s3:PutObjectTagging refuses it even under s3:*. The untagged upload succeeds in both cases.
func S3IAMAccessControl_post_object_tagging_split_sources ¶ added in v1.9.0
S3IAMAccessControl_post_object_tagging_split_sources verifies a tagged POST upload decides s3:PutObject and s3:PutObjectTagging independently, each allowed by either policy: a bucket policy granting only s3:PutObject and an identity policy granting only s3:PutObjectTagging together allow it.
func S3IAMAccessControl_put_object_lock_split_sources ¶ added in v1.9.0
S3IAMAccessControl_put_object_lock_split_sources verifies a PutObject setting a legal hold or a retention decides s3:PutObject and the object-lock action independently: a bucket policy granting only s3:PutObject and an identity policy granting only the object-lock actions together allow it, and the lock is applied.
func S3IAMAccessControl_put_object_tagging_split_sources ¶ added in v1.9.0
S3IAMAccessControl_put_object_tagging_split_sources verifies a tagged PutObject decides s3:PutObject and s3:PutObjectTagging independently, each allowed by either policy: the bucket policy can grant one and the identity policy the other, in either direction, and the tags are applied.
func S3IAMAccessControl_retention_extension_needs_no_bypass ¶ added in v1.8.0
S3IAMAccessControl_retention_extension_needs_no_bypass verifies the direction of the change is what decides whether a bypass is needed: pushing a retention date further out only strengthens the lock, so it needs nothing beyond s3:PutObjectRetention — in either mode. Shortening is the case that needs a bypass, covered by the test below.
func S3IAMAccessControl_retention_shortening_needs_bypass ¶ added in v1.8.0
S3IAMAccessControl_retention_shortening_needs_bypass verifies that moving a retention date earlier — weakening the lock without changing its mode — needs both the bypass header and s3:BypassGovernanceRetention for GOVERNANCE, and is refused outright for COMPLIANCE however the caller asks.
Extending is the control: it only ever strengthens the lock, so it needs neither, in either mode.
func S3IAMAccessControl_root_bypasses_policies ¶ added in v1.8.0
S3IAMAccessControl_root_bypasses_policies verifies the gateway's root credential is authorized regardless of any policy, including a bucket policy that explicitly denies everyone.
func S3IAMPrincipal_accepted_forms ¶ added in v1.8.0
S3IAMPrincipal_accepted_forms covers every Principal form PutBucketPolicy accepts: the wildcard in both its shapes, an existing user's ARN, an existing role's ARN, an assumed-role ARN naming a session of an existing role, the account root ARN, the bare account id, and a list mixing them.
func S3IAMPrincipal_account_delegates_but_does_not_grant ¶ added in v1.8.0
S3IAMPrincipal_account_delegates_but_does_not_grant is the asymmetry the account-level principal forms carry: naming the account in an Allow delegates to the account's own IAM rather than granting anything, so a user with no identity policy is still denied and the same user with one is allowed. Naming it in a Deny delegates nothing and denies outright.
func S3IAMPrincipal_deleted_user_arn_rejected ¶ added in v1.8.0
S3IAMPrincipal_deleted_user_arn_rejected verifies the write-time check tracks the IAM service rather than a snapshot of it: an ARN that resolved when a policy naming it was written no longer resolves once the user is gone, so the same document can no longer be stored.
func S3IAMPrincipal_empty_forms ¶ added in v1.8.0
S3IAMPrincipal_empty_forms covers the Principal shapes that carry no principal at all. They are rejected the same way they were before principals were ARNs — the check is on the element's shape, not on what it names — so this pins that the ARN change left them alone.
func S3IAMPrincipal_pathed_user_arn ¶ added in v1.8.0
S3IAMPrincipal_pathed_user_arn verifies a user's IAM path is part of the ARN naming it: only the full-path form resolves at all, and it matches the user it names.
func S3IAMPrincipal_rejected_forms ¶ added in v1.8.0
S3IAMPrincipal_rejected_forms covers what PutBucketPolicy refuses to store, all of it with the same MalformedPolicy error real S3 reports. The two that matter most are an access key id — what every other IAM backend names principals by, and what this one no longer accepts — and any wildcard inside an ARN: only a whole Principal of "*" is a wildcard, so there is no pattern form of a principal at all.
func S3IAMPrincipal_role_arn_does_not_match_a_user ¶ added in v1.8.0
S3IAMPrincipal_role_arn_does_not_match_a_user verifies a role ARN names sessions of that role and nothing else: a long-term user is not covered by it, however the role is otherwise configured. The session side — that a role ARN does match every session of the role — needs a real OIDC token and lives in the s3-iam-session group.
func S3IAMPrincipal_user_arn_names_only_that_user ¶ added in v1.8.0
S3IAMPrincipal_user_arn_names_only_that_user verifies a user ARN grants the user it names and nobody else — neither another user, nor a caller named by the access key that used to be the principal form.
func S3IAMPrincipal_wildcard_grants_everyone ¶ added in v1.8.0
S3IAMPrincipal_wildcard_grants_everyone verifies "*" still names every caller, the one principal form that does not have to resolve to anything.
func S3IAMSession_AssumeRoleWithWebIdentity_github_oidc_live ¶ added in v1.8.0
S3IAMSession_AssumeRoleWithWebIdentity_github_oidc_live exercises AssumeRoleWithWebIdentity against a REAL external OIDC identity provider — GitHub Actions' own OIDC issuer — end-to-end: discovery-document fetch, JWKS fetch, real RS256 signature verification, claims mapping, and session credential issuance. It's the only web-identity test that does this; every other one in this package uses a fake token that never reaches real signature verification.
func S3IAMSession_GetRole_role_last_used_recorded ¶ added in v1.8.0
S3IAMSession_GetRole_role_last_used_recorded exercises role last-used tracking end-to-end: a role assumed with a real GitHub Actions OIDC token, then used — a request authenticated with the session credentials that assume issued — records that use as GetRole's RoleLastUsed.
Like every other session test, it needs a genuine ID token, so it runs only inside the workflow that can mint one and skips itself everywhere else.
func S3IAMSession_bucket_policy_account_delegates ¶ added in v1.8.0
S3IAMSession_bucket_policy_account_delegates verifies the account-level principal forms delegate rather than grant for a session too: naming the account allows nothing without a role policy, and denies everything under a Deny.
func S3IAMSession_bucket_policy_allows_without_role_policy ¶ added in v1.8.0
S3IAMSession_bucket_policy_allows_without_role_policy verifies the bucket policy is independently sufficient for a session too, exactly as it is for a long-term user.
The policy names the session's role ARN, which is how a bucket policy names every session of a role: no wildcard is allowed inside a principal ARN, so the role ARN is the only form that covers sessions the policy was written before. Naming one specific session is S3IAMSession_bucket_policy_names_one_session.
func S3IAMSession_bucket_policy_deny_overrides_role_allow ¶ added in v1.8.0
S3IAMSession_bucket_policy_deny_overrides_role_allow verifies a bucket-policy Deny beats the role's Allow for a session, and reports the resource-based-policy message.
func S3IAMSession_bucket_policy_names_one_session ¶ added in v1.8.0
S3IAMSession_bucket_policy_names_one_session verifies the other half: a Principal naming one assumed-role session covers that session and no other session of the same role.
func S3IAMSession_bucket_policy_role_arn_covers_every_session ¶ added in v1.8.0
S3IAMSession_bucket_policy_role_arn_covers_every_session verifies a Principal naming a role covers sessions of it that did not exist when the policy was written. That is the only way to express "any session of this role": no wildcard is allowed inside a principal ARN.
func S3IAMSession_bucket_policy_session_principal_forms ¶ added in v1.8.0
S3IAMSession_bucket_policy_session_principal_forms covers what PutBucketPolicy makes of the session-shaped principal forms: an assumed-role ARN resolves as long as its role does, whatever session name it carries, and the forms that name no role do not resolve at all.
func S3IAMSession_condition_identity_keys ¶ added in v1.8.0
S3IAMSession_condition_identity_keys verifies the identity-derived condition keys for a session. They do not all describe the same thing: aws:userid carries the role id and the session name, and so pins one session, while aws:PrincipalArn is the assumed *role's* ARN and therefore covers every session of it — a Condition on it can never single one out. A denial message names the session by its assumed-role ARN, which is a different thing from aws:PrincipalArn and deliberately so.
func S3IAMSession_create_bucket_via_role_policy ¶ added in v1.8.0
S3IAMSession_create_bucket_via_role_policy verifies s3:CreateBucket is grantable to a session by its role policy, and denied without it.
func S3IAMSession_delete_objects_authorizes_each_key ¶ added in v1.8.0
S3IAMSession_delete_objects_authorizes_each_key verifies the per-key authorization of a batch delete applies to a session's role policy too.
func S3IAMSession_deleted_role_denies ¶ added in v1.8.0
S3IAMSession_deleted_role_denies verifies a session outlives its role's deletion as a credential — it still authenticates — but loses every permission the role gave it.
func S3IAMSession_get_caller_identity_matches_s3_principal ¶ added in v1.8.0
S3IAMSession_get_caller_identity_matches_s3_principal verifies STS and the S3 data plane agree on who the session is: the ARN GetCallerIdentity reports is the one an S3 denial names.
func S3IAMSession_governance_bypass_via_role_policy ¶ added in v1.8.0
S3IAMSession_governance_bypass_via_role_policy verifies a session can be granted s3:BypassGovernanceRetention through its role, and that a session policy withholding it takes it away again.
func S3IAMSession_missing_and_wrong_security_token ¶ added in v1.8.0
S3IAMSession_missing_and_wrong_security_token verifies the two ways a session credential can be presented wrongly, each with the error real S3 returns for it.
func S3IAMSession_presigned_url_with_session_credentials ¶ added in v1.8.0
S3IAMSession_presigned_url_with_session_credentials verifies a presigned URL signed with temporary credentials works: the security token rides in the query string, where it is part of the signed canonical request.
func S3IAMSession_role_last_used_records_s3 ¶ added in v1.8.0
S3IAMSession_role_last_used_records_s3 is the same for an assumed-role session: the role's RoleLastUsed reports the S3 request its temporary credentials made, which — unlike an access key — is the only place that use is visible at all.
func S3IAMSession_role_policy_allows ¶ added in v1.8.0
S3IAMSession_role_policy_allows verifies a session inherits the assumed role's inline policies, and that they are sufficient on their own with no bucket policy in play.
func S3IAMSession_role_policy_deny_overrides_session_allow ¶ added in v1.8.0
S3IAMSession_role_policy_deny_overrides_session_allow verifies the reverse direction: an explicit Deny in the role's policy is not escapable by a permissive session policy.
func S3IAMSession_role_policy_explicit_deny_wins ¶ added in v1.8.0
S3IAMSession_role_policy_explicit_deny_wins verifies an explicit Deny in the role's own policy overrides its Allow, exactly as for a long-term user.
func S3IAMSession_role_policy_resource_scoped ¶ added in v1.8.0
S3IAMSession_role_policy_resource_scoped verifies a role policy's Resource pattern scopes what the session may touch.
func S3IAMSession_role_without_policy_denied ¶ added in v1.8.0
S3IAMSession_role_without_policy_denied verifies a session with no role policy and no bucket policy is denied, and that the denial names the assumed-role session ARN rather than the temporary access key.
func S3IAMSession_session_policy_cannot_widen_role ¶ added in v1.8.0
S3IAMSession_session_policy_cannot_widen_role verifies a session policy can only ever subtract: granting more than the role has does not add anything.
func S3IAMSession_session_policy_explicit_deny_overrides_role ¶ added in v1.8.0
S3IAMSession_session_policy_explicit_deny_overrides_role verifies an explicit Deny in the session policy beats the role's Allow.
func S3IAMSession_session_policy_filters_bucket_policy_grant ¶ added in v1.8.0
S3IAMSession_session_policy_filters_bucket_policy_grant is the property that distinguishes a session policy from an ordinary identity policy: it filters *everything* the session can do, including permissions that came from the bucket policy rather than from the role.
Verified against real AWS with a role carrying no identity policy at all, a bucket policy granting it both s3:GetObject and s3:PutObject, and a session policy allowing only s3:GetObject — the Get succeeds and the Put is denied.
func S3IAMSession_session_policy_narrows_role ¶ added in v1.8.0
S3IAMSession_session_policy_narrows_role verifies a session policy restricts what the role would otherwise permit — the primary reason to pass one.
func S3IAMSession_session_policy_without_role_policy_denied ¶ added in v1.8.0
S3IAMSession_session_policy_without_role_policy_denied verifies a session policy alone grants nothing: with the role carrying no policy and no bucket policy in play, there is nothing for it to narrow.
func Server_large_http_header ¶ added in v1.4.0
func SignedStreamingPayloadTrailer_bad_digest ¶ added in v1.1.0
func SignedStreamingPayloadTrailer_incomplete_body ¶ added in v1.1.0
func SignedStreamingPayloadTrailer_invalid_checksum ¶ added in v1.1.0
func SignedStreamingPayloadTrailer_malformed_trailer ¶ added in v1.1.0
func SignedStreamingPayloadTrailer_missing_x_amz_trailer_header ¶ added in v1.1.0
func SignedStreamingPayloadTrailer_success ¶ added in v1.1.0
func SignedStreamingPayload_decoded_content_length_mismatch ¶ added in v1.1.0
func SignedStreamingPayload_invalid_chunk_size ¶ added in v1.1.0
func SignedStreamingPayload_invalid_encoding ¶ added in v1.1.0
func TestAbortMultipartUpload ¶
func TestAbortMultipartUpload(ts *TestState)
func TestAccessControl ¶
func TestAccessControl(ts *TestState)
func TestAuthentication ¶
func TestAuthentication(ts *TestState)
func TestCORSMiddleware ¶ added in v1.0.17
func TestCORSMiddleware(ts *TestState)
func TestCompleteMultipartUpload ¶
func TestCompleteMultipartUpload(ts *TestState)
func TestCopyObject ¶
func TestCopyObject(ts *TestState)
func TestCreateBucket ¶
func TestCreateBucket(ts *TestState)
func TestCreateMultipartUpload ¶
func TestCreateMultipartUpload(ts *TestState)
func TestDataIntegrityETag ¶ added in v1.8.0
func TestDataIntegrityETag(ts *TestState)
func TestDeleteBucket ¶
func TestDeleteBucket(ts *TestState)
func TestDeleteBucketCors ¶ added in v1.0.17
func TestDeleteBucketCors(ts *TestState)
func TestDeleteBucketOwnershipControls ¶ added in v1.0.3
func TestDeleteBucketOwnershipControls(ts *TestState)
func TestDeleteBucketPolicy ¶
func TestDeleteBucketPolicy(ts *TestState)
func TestDeleteBucketTagging ¶
func TestDeleteBucketTagging(ts *TestState)
func TestDeleteBucketWebsite ¶ added in v1.6.0
func TestDeleteBucketWebsite(ts *TestState)
func TestDeleteObject ¶
func TestDeleteObject(ts *TestState)
func TestDeleteObjectTagging ¶
func TestDeleteObjectTagging(ts *TestState)
func TestDeleteObjects ¶
func TestDeleteObjects(ts *TestState)
func TestDownload ¶
func TestFullFlow ¶
func TestFullFlow(ts *TestState)
func TestGatewayIAM ¶ added in v1.8.0
func TestGatewayIAM(ts *TestState)
func TestGetBucketAcl ¶
func TestGetBucketAcl(ts *TestState)
func TestGetBucketCors ¶ added in v1.0.17
func TestGetBucketCors(ts *TestState)
func TestGetBucketLocation ¶ added in v1.0.18
func TestGetBucketLocation(ts *TestState)
func TestGetBucketOwnershipControls ¶ added in v1.0.3
func TestGetBucketOwnershipControls(ts *TestState)
func TestGetBucketPolicy ¶
func TestGetBucketPolicy(ts *TestState)
func TestGetBucketPolicyStatus ¶ added in v1.0.17
func TestGetBucketPolicyStatus(ts *TestState)
func TestGetBucketTagging ¶
func TestGetBucketTagging(ts *TestState)
func TestGetBucketWebsite ¶ added in v1.6.0
func TestGetBucketWebsite(ts *TestState)
func TestGetObject ¶
func TestGetObject(ts *TestState)
func TestGetObjectAttributes ¶
func TestGetObjectAttributes(ts *TestState)
func TestGetObjectLegalHold ¶
func TestGetObjectLegalHold(ts *TestState)
func TestGetObjectLockConfiguration ¶
func TestGetObjectLockConfiguration(ts *TestState)
func TestGetObjectRetention ¶
func TestGetObjectRetention(ts *TestState)
func TestGetObjectTagging ¶
func TestGetObjectTagging(ts *TestState)
func TestHeadBucket ¶
func TestHeadBucket(ts *TestState)
func TestHeadObject ¶
func TestHeadObject(ts *TestState)
func TestIAMAccessControl ¶ added in v1.8.0
func TestIAMAccessControl(ts *TestState)
func TestIAMAddClientIDToOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMAddClientIDToOpenIDConnectProvider(ts *TestState)
func TestIAMAssumeRoleWithWebIdentity ¶ added in v1.8.0
func TestIAMAssumeRoleWithWebIdentity(ts *TestState)
func TestIAMAuth ¶ added in v1.8.0
func TestIAMAuth(ts *TestState)
func TestIAMCreateAccessKey ¶ added in v1.8.0
func TestIAMCreateAccessKey(ts *TestState)
func TestIAMCreateOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMCreateOpenIDConnectProvider(ts *TestState)
func TestIAMCreateRole ¶ added in v1.8.0
func TestIAMCreateRole(ts *TestState)
func TestIAMCreateUser ¶ added in v1.8.0
func TestIAMCreateUser(ts *TestState)
func TestIAMDeleteAccessKey ¶ added in v1.8.0
func TestIAMDeleteAccessKey(ts *TestState)
func TestIAMDeleteOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMDeleteOpenIDConnectProvider(ts *TestState)
func TestIAMDeleteRole ¶ added in v1.8.0
func TestIAMDeleteRole(ts *TestState)
func TestIAMDeleteRolePolicy ¶ added in v1.8.0
func TestIAMDeleteRolePolicy(ts *TestState)
func TestIAMDeleteUser ¶ added in v1.8.0
func TestIAMDeleteUser(ts *TestState)
func TestIAMDeleteUserPolicy ¶ added in v1.8.0
func TestIAMDeleteUserPolicy(ts *TestState)
func TestIAMGetAccessKeyLastUsed ¶ added in v1.8.0
func TestIAMGetAccessKeyLastUsed(ts *TestState)
func TestIAMGetCallerIdentity ¶ added in v1.8.0
func TestIAMGetCallerIdentity(ts *TestState)
func TestIAMGetOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMGetOpenIDConnectProvider(ts *TestState)
func TestIAMGetRole ¶ added in v1.8.0
func TestIAMGetRole(ts *TestState)
func TestIAMGetRolePolicy ¶ added in v1.8.0
func TestIAMGetRolePolicy(ts *TestState)
func TestIAMGetUser ¶ added in v1.8.0
func TestIAMGetUser(ts *TestState)
func TestIAMGetUserPolicy ¶ added in v1.8.0
func TestIAMGetUserPolicy(ts *TestState)
func TestIAMListAccessKeys ¶ added in v1.8.0
func TestIAMListAccessKeys(ts *TestState)
func TestIAMListOpenIDConnectProviderTags ¶ added in v1.8.0
func TestIAMListOpenIDConnectProviderTags(ts *TestState)
func TestIAMListOpenIDConnectProviders ¶ added in v1.8.0
func TestIAMListOpenIDConnectProviders(ts *TestState)
func TestIAMListRolePolicies ¶ added in v1.8.0
func TestIAMListRolePolicies(ts *TestState)
func TestIAMListRoleTags ¶ added in v1.8.0
func TestIAMListRoleTags(ts *TestState)
func TestIAMListRoles ¶ added in v1.8.0
func TestIAMListRoles(ts *TestState)
func TestIAMListUserPolicies ¶ added in v1.8.0
func TestIAMListUserPolicies(ts *TestState)
func TestIAMListUserTags ¶ added in v1.8.0
func TestIAMListUserTags(ts *TestState)
func TestIAMListUsers ¶ added in v1.8.0
func TestIAMListUsers(ts *TestState)
func TestIAMPutRolePolicy ¶ added in v1.8.0
func TestIAMPutRolePolicy(ts *TestState)
func TestIAMPutUserPolicy ¶ added in v1.8.0
func TestIAMPutUserPolicy(ts *TestState)
func TestIAMQueryAuth ¶ added in v1.8.0
func TestIAMQueryAuth(ts *TestState)
func TestIAMRemoveClientIDFromOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMRemoveClientIDFromOpenIDConnectProvider(ts *TestState)
func TestIAMTagOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMTagOpenIDConnectProvider(ts *TestState)
func TestIAMTagRole ¶ added in v1.8.0
func TestIAMTagRole(ts *TestState)
func TestIAMTagUser ¶ added in v1.8.0
func TestIAMTagUser(ts *TestState)
func TestIAMUntagOpenIDConnectProvider ¶ added in v1.8.0
func TestIAMUntagOpenIDConnectProvider(ts *TestState)
func TestIAMUntagRole ¶ added in v1.8.0
func TestIAMUntagRole(ts *TestState)
func TestIAMUntagUser ¶ added in v1.8.0
func TestIAMUntagUser(ts *TestState)
func TestIAMUpdateAccessKey ¶ added in v1.8.0
func TestIAMUpdateAccessKey(ts *TestState)
func TestIAMUpdateAssumeRolePolicy ¶ added in v1.8.0
func TestIAMUpdateAssumeRolePolicy(ts *TestState)
func TestIAMUpdateOpenIDConnectProviderThumbprint ¶ added in v1.8.0
func TestIAMUpdateOpenIDConnectProviderThumbprint(ts *TestState)
func TestIAMUpdateUser ¶ added in v1.8.0
func TestIAMUpdateUser(ts *TestState)
func TestListBuckets ¶
func TestListBuckets(ts *TestState)
func TestListMultipartUploads ¶
func TestListMultipartUploads(ts *TestState)
func TestListObjectVersions_VD ¶ added in v1.0.8
func TestListObjectVersions_VD(ts *TestState)
VD stands for Versioning Disabled
func TestListObjects ¶
func TestListObjects(ts *TestState)
func TestListObjectsV2 ¶
func TestListObjectsV2(ts *TestState)
func TestListParts ¶
func TestListParts(ts *TestState)
func TestNoAclMode ¶ added in v1.3.0
func TestNoAclMode(ts *TestState)
func TestNotImplementedActions ¶ added in v1.0.17
func TestNotImplementedActions(ts *TestState)
func TestPostObject ¶ added in v1.4.0
func TestPostObject(ts *TestState)
func TestPreflightOPTIONSEndpoint ¶ added in v1.0.17
func TestPreflightOPTIONSEndpoint(ts *TestState)
func TestPresignedAuthentication ¶
func TestPresignedAuthentication(ts *TestState)
func TestPublicBuckets ¶ added in v1.0.15
func TestPublicBuckets(ts *TestState)
func TestPutBucketAcl ¶
func TestPutBucketAcl(ts *TestState)
func TestPutBucketCors ¶ added in v1.0.17
func TestPutBucketCors(ts *TestState)
func TestPutBucketOwnershipControls ¶ added in v1.0.3
func TestPutBucketOwnershipControls(ts *TestState)
func TestPutBucketPolicy ¶
func TestPutBucketPolicy(ts *TestState)
func TestPutBucketTagging ¶
func TestPutBucketTagging(ts *TestState)
func TestPutBucketWebsite ¶ added in v1.6.0
func TestPutBucketWebsite(ts *TestState)
func TestPutObject ¶
func TestPutObject(ts *TestState)
func TestPutObjectLegalHold ¶
func TestPutObjectLegalHold(ts *TestState)
func TestPutObjectLockConfiguration ¶
func TestPutObjectLockConfiguration(ts *TestState)
func TestPutObjectRetention ¶
func TestPutObjectRetention(ts *TestState)
func TestPutObjectTagging ¶
func TestPutObjectTagging(ts *TestState)
func TestRouter ¶ added in v1.0.17
func TestRouter(ts *TestState)
func TestS3IAMAccessControl ¶ added in v1.8.0
func TestS3IAMAccessControl(ts *TestState)
func TestS3IAMSessionAccessControl ¶ added in v1.8.0
func TestS3IAMSessionAccessControl(ts *TestState)
TestS3IAMSessionAccessControl is the one group the OIDC workflow runs, so it carries every test that needs a real, signed ID token — including the IAM/STS-endpoint ones below, which are not S3 access-control tests but have the same GitHub-OIDC prerequisite. Every test here skips itself outside a job that can mint a token.
func TestSSECNotImplemented ¶ added in v1.9.0
func TestSSECNotImplemented(ts *TestState)
TestSSECNotImplemented is for backends that reject SSE-C rather than forward it.
func TestSSECTransport ¶ added in v1.9.0
func TestSSECTransport(ts *TestState)
func TestScoutfs ¶ added in v1.0.14
func TestScoutfs(ts *TestState)
func TestServer ¶ added in v1.4.0
func TestServer(ts *TestState)
func TestSignedStreaminPayload ¶ added in v1.1.0
func TestSignedStreaminPayload(ts *TestState)
func TestSignedStreaminPayloadTrailer ¶ added in v1.1.0
func TestSignedStreaminPayloadTrailer(ts *TestState)
func TestUnsignedStreaminPayloadTrailer ¶ added in v1.0.20
func TestUnsignedStreaminPayloadTrailer(ts *TestState)
func TestUploadPart ¶
func TestUploadPart(ts *TestState)
func TestUploadPartCopy ¶
func TestUploadPartCopy(ts *TestState)
func TestVersioning ¶ added in v1.0.8
func TestVersioning(ts *TestState)
func TestVersioningDisabled ¶ added in v1.0.8
func TestVersioningDisabled(ts *TestState)
func TestWORMProtection ¶
func TestWORMProtection(ts *TestState)
func TestWebsiteHosting ¶ added in v1.6.0
func TestWebsiteHosting(ts *TestState)
func UnsignedStreaminPayloadTrailer_malformed_trailer ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_UploadPart_no_trailer_composite_checksum ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_UploadPart_no_trailer_full_object ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_UploadPart_success_with_trailer ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_UploadPart_trailer_and_mp_algo_mismatch ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_aborted_connection ¶ added in v1.9.0
UnsignedStreamingPayloadTrailer_aborted_connection checks that an aws-chunked upload whose connection dies in the middle of a chunk leaves no object.
UnsignedStreamingPayloadTrailer_incomplete_body already covers malformed and truncated framing, but every one of those is a COMPLETE request: the body is short, Content-Length agrees with it, and the chunk reader rejects what it parses. This one is the other shape - the framing is valid and the bytes simply stop arriving, which is what a client that dies or cancels looks like on the wire. That is the shape the plain path got wrong.
The chunk readers already handled it, so this is a regression guard: the Content-Length check added for plain bodies must not change this path.
NOTE: the request must really take the chunked path. The gateway decides that from x-amz-content-sha256 alone, so an UNSIGNED-PAYLOAD request with Content-Encoding: aws-chunked stays on the plain path - a test written that way silently duplicates the plain one instead of covering this.
func UnsignedStreamingPayloadTrailer_content_length_payload_size_mismatch ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_incomplete_body ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_incorrect_trailing_checksum ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_invalid_chunk_size ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_invalid_trailing_checksum ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_missing_invalid_dec_content_length ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_multiple_checksum_headers ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_no_payload_trailer_only_headers ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_no_trailer_should_calculate_crc64nvme ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_not_allowed ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_sdk_algo_and_trailer_mismatch ¶ added in v1.0.20
func UnsignedStreamingPayloadTrailer_strips_aws_chunked_content_encoding ¶ added in v1.9.0
UnsignedStreamingPayloadTrailer_strips_aws_chunked_content_encoding checks that the aws-chunked token is dropped from the stored Content-Encoding when the body really was framed in it, and that every other coding survives in order.
func UnsignedStreamingPayloadTrailer_success_both_sdk_algo_and_trailer ¶ added in v1.0.20
func UploadPartCopy_by_range_invalid_ranges ¶ added in v1.0.11
func UploadPartCopy_conditional_reads ¶ added in v1.0.18
func UploadPartCopy_data_integrity_etag ¶ added in v1.8.0
func UploadPartCopy_exceeding_copy_source_range ¶ added in v1.0.11
func UploadPartCopy_incorrect_source_bucket_expected_owner ¶ added in v1.4.0
func UploadPartCopy_should_calculate_the_checksum ¶ added in v1.0.11
func UploadPartCopy_should_copy_the_checksum ¶ added in v1.0.11
func UploadPartCopy_should_not_copy_the_checksum ¶ added in v1.0.11
func UploadPartCopy_sse_c_not_implemented ¶ added in v1.9.0
func UploadPartCopy_success ¶
func UploadPartCopy_upload_id_path_traversal ¶ added in v1.9.0
func UploadPart_checksum_algorithm_mistmatch_on_initialization ¶ added in v1.0.11
func UploadPart_checksum_algorithm_mistmatch_on_initialization_with_value ¶ added in v1.0.11
func UploadPart_checksum_header_and_algo_mismatch ¶ added in v1.0.19
func UploadPart_data_integrity_etag ¶ added in v1.8.0
func UploadPart_default_retention_checksum_required ¶ added in v1.9.0
UploadPart_default_retention_checksum_required covers parts of multipart uploads to a bucket with a default retention rule. Whether an upload carries Object Lock parameters is settled when it is created: the parts of one created under the rule need an integrity check of their body even after the rule is removed, and the parts of one created before the rule was set need none.
func UploadPart_etag_quoting_consistency ¶ added in v1.7.0
UploadPart_etag_quoting_consistency verifies that multipart part ETags are returned as quoted strings and stay consistent across the UploadPart response, ListParts, and CompleteMultipartUpload. This is the S3 contract (ETags are quoted) and matches the posix backend's GenerateEtag convention; it is the regression guard for the Azure backend, which previously returned raw, unquoted block ids.
func UploadPart_incorrect_checksums ¶ added in v1.0.11
func UploadPart_invalid_checksum_header ¶ added in v1.0.11
func UploadPart_multiple_checksum_headers ¶ added in v1.0.11
func UploadPart_no_checksum_with_composite_checksum_type ¶ added in v1.0.17
func UploadPart_no_checksum_with_full_object_checksum_type ¶ added in v1.0.17
func UploadPart_object_lock_checksum_required ¶ added in v1.9.0
UploadPart_object_lock_checksum_required covers parts of multipart uploads created with Object Lock parameters, a legal hold of either status or a retention: each part needs an integrity check of its body, so one with neither Content-MD5 nor a checksum is rejected and one with Content-MD5 is stored. A part of an upload created without them needs none.
func UploadPart_plain_body_with_decoded_length ¶ added in v1.9.0
UploadPart_plain_body_with_decoded_length checks that a complete plain part uses Content-Length rather than X-Amz-Decoded-Content-Length. The latter is only meaningful for aws-chunked uploads and must not preallocate a zero tail.
func UploadPart_sse_c_not_implemented ¶ added in v1.9.0
func UploadPart_success ¶
func UploadPart_upload_id_path_traversal ¶ added in v1.9.0
func UploadPart_with_checksums_success ¶ added in v1.0.11
func VersioningDisabled_GetBucketVersioning_no_such_bucket ¶ added in v1.8.0
func VersioningDisabled_GetBucketVersioning_not_configured ¶ added in v1.0.8
func VersioningDisabled_PutBucketVersioning_not_configured ¶ added in v1.0.8
func Versioning_AccessControl_DeleteObject_policy ¶ added in v1.0.19
func Versioning_AccessControl_GetObjectAttributes_policy ¶ added in v1.0.19
func Versioning_AccessControl_GetObjectVersion ¶ added in v1.0.17
func Versioning_AccessControl_HeadObjectVersion ¶ added in v1.0.17
func Versioning_AccessControl_object_tagging_policy ¶ added in v1.0.19
func Versioning_CopyObject_conditional_writes ¶ added in v1.9.0
A rejected conditional copy creates no version. A delete marker as the current version leaves the destination without an object: If-Match finds no key, while If-None-Match lets the copy through as a new version.
func Versioning_CopyObject_encoded_versionid_separator_invalid_versionId ¶ added in v1.7.0
func Versioning_CopyObject_from_a_delete_marker ¶ added in v1.9.0
A copy source that resolves to a delete marker is rejected: the key has no current version when the marker is the latest, and naming the marker by version id is an invalid request. Versions the marker hides stay copyable.
func Versioning_CopyObject_from_an_object_version ¶ added in v1.0.8
func Versioning_CopyObject_invalid_versionId ¶ added in v1.0.19
func Versioning_CopyObject_non_existing_version_id ¶ added in v1.0.8
func Versioning_CopyObject_special_chars ¶ added in v1.0.8
func Versioning_CopyObject_success ¶ added in v1.0.8
func Versioning_CopyObject_to_itself ¶ added in v1.9.0
A copy of an object onto itself in a versioned bucket is an ordinary write: it creates a new version and leaves the one it replaces untouched. Without a metadata directive there is nothing to replace, so it's rejected.
func Versioning_CopyObject_to_itself_from_the_current_version ¶ added in v1.9.0
Naming the current version in the copy source makes a copy onto the same key a regular copy, so it is accepted even without a metadata directive.
func Versioning_DeleteBucket_not_empty ¶ added in v1.0.8
func Versioning_DeleteObjectTagging_invalid_versionId ¶ added in v1.0.19
func Versioning_DeleteObjectTagging_non_existing_object_version ¶ added in v1.0.19
func Versioning_DeleteObject_conditional_delete_marker ¶ added in v1.9.0
Versioning_DeleteObject_conditional_delete_marker checks that a conditional delete of a key whose current version is a delete marker fails with NoSuchKey and creates no other marker, while If-Match "*" on a key with a current version creates one.
func Versioning_DeleteObject_delete_a_delete_marker ¶ added in v1.0.8
func Versioning_DeleteObject_delete_marker_last_modified ¶ added in v1.9.0
Versioning_DeleteObject_delete_marker_last_modified creates delete markers over an object version, over another delete marker and, while versioning is suspended, over the null version. A delete marker is last modified when it's created, not when the version it hides was.
func Versioning_DeleteObject_delete_object_version ¶ added in v1.0.8
func Versioning_DeleteObject_dir_object_latest_version ¶ added in v1.9.0
func Versioning_DeleteObject_dir_object_with_children ¶ added in v1.9.0
func Versioning_DeleteObject_implicit_dir ¶ added in v1.9.0
func Versioning_DeleteObject_invalid_versionId ¶ added in v1.0.19
func Versioning_DeleteObject_latest_version_null_version_order ¶ added in v1.9.0
func Versioning_DeleteObject_latest_version_with_null_version ¶ added in v1.9.0
Versioning_DeleteObject_latest_version_with_null_version deletes the current version of an object whose history also holds a null version, created while versioning was suspended. The version that becomes current has to be the one created right before the deleted version, not the older null version.
func Versioning_DeleteObject_nested_dir_object ¶ added in v1.0.11
func Versioning_DeleteObject_never_versioned_bucket ¶ added in v1.9.0
func Versioning_DeleteObject_non_existing_object ¶ added in v1.0.8
func Versioning_DeleteObject_non_existing_objects ¶ added in v1.2.0
func Versioning_DeleteObject_promoted_version_attributes ¶ added in v1.9.0
func Versioning_DeleteObject_promoted_version_last_modified ¶ added in v1.9.0
Versioning_DeleteObject_promoted_version_last_modified deletes the current version of objects, which makes an older version the current one: the version put before it, the version under a delete marker or the null version. The promoted version keeps its last modified time.
func Versioning_DeleteObject_suspended ¶ added in v1.0.8
func Versioning_DeleteObject_trailing_slash_counterpart ¶ added in v1.9.0
func Versioning_DeleteObjects_conditional ¶ added in v1.9.0
Versioning_DeleteObjects_conditional checks the ETag conditions of DeleteObjects in a versioned bucket. The checks don't depend on the order of the results.
func Versioning_DeleteObjects_delete_deleteMarkers ¶ added in v1.0.8
func Versioning_DeleteObjects_never_versioned_bucket ¶ added in v1.9.0
func Versioning_DeleteObjects_success ¶ added in v1.0.8
func Versioning_Delete_null_versionId_object ¶ added in v1.0.8
func Versioning_Enable_object_lock ¶ added in v1.0.8
func Versioning_GetObjectAttributes_delete_marker ¶ added in v1.0.9
func Versioning_GetObjectAttributes_invalid_versionId ¶ added in v1.0.19
func Versioning_GetObjectAttributes_object_version ¶ added in v1.0.9
func Versioning_GetObjectLegalHold_invalid_versionId ¶ added in v1.0.8
func Versioning_GetObjectLegalHold_non_existing_object_version ¶ added in v1.0.19
func Versioning_GetObjectRetention_invalid_versionId ¶ added in v1.0.8
func Versioning_GetObjectRetention_non_existing_object_version ¶ added in v1.0.19
func Versioning_GetObjectTagging_invalid_versionId ¶ added in v1.0.19
func Versioning_GetObjectTagging_non_existing_object_version ¶ added in v1.0.19
func Versioning_GetObject_delete_marker ¶ added in v1.0.8
func Versioning_GetObject_delete_marker_without_versionId ¶ added in v1.0.8
func Versioning_GetObject_invalid_versionId ¶ added in v1.0.8
func Versioning_GetObject_non_existing_object_version ¶ added in v1.0.19
func Versioning_GetObject_null_versionId_obj ¶ added in v1.0.8
func Versioning_GetObject_null_version_without_versionId ¶ added in v1.9.0
Versioning_GetObject_null_version_without_versionId reads an object put into a versioning-suspended bucket, without naming a version id. The object is the null version and the response has to report it as null rather than leave the version id out.
func Versioning_GetObject_success ¶ added in v1.0.8
func Versioning_HeadObject_delete_marker ¶ added in v1.0.8
func Versioning_HeadObject_dir_object_versions ¶ added in v1.9.0
func Versioning_HeadObject_invalid_parent ¶ added in v1.0.9
func Versioning_HeadObject_invalid_versionId ¶ added in v1.0.8
func Versioning_HeadObject_non_existing_object_version ¶ added in v1.0.19
func Versioning_HeadObject_null_versionId_obj ¶ added in v1.9.0
Versioning_HeadObject_null_version_without_versionId heads an object put into a versioning-suspended bucket, without naming a version id.
func Versioning_HeadObject_null_version_without_versionId ¶ added in v1.9.0
func Versioning_HeadObject_success ¶ added in v1.0.8
func Versioning_HeadObject_without_versionId ¶ added in v1.0.9
func Versioning_Multipart_Upload_already_completed ¶ added in v1.9.0
func Versioning_Multipart_Upload_conditional_writes_over_delete_marker ¶ added in v1.9.0
A delete marker as the current version leaves the key without an object: completing an upload with If-Match finds no key, while If-None-Match lets it through as a new version.
func Versioning_Multipart_Upload_overwrite_an_object ¶ added in v1.0.8
func Versioning_Multipart_Upload_overwrite_keeps_previous_version_metadata ¶ added in v1.9.0
func Versioning_Multipart_Upload_success ¶ added in v1.0.8
func Versioning_Multipart_Upload_suspended_overwrite_versioned_object ¶ added in v1.9.0
func Versioning_ObjectTagging_trailing_slash_counterpart ¶ added in v1.9.0
func Versioning_PutGetDeleteObjectTagging_delete_marker ¶ added in v1.2.0
func Versioning_PutGetDeleteObjectTagging_success ¶ added in v1.0.19
func Versioning_PutGetObjectLegalHold_delete_marker ¶ added in v1.2.0
func Versioning_PutObjectLegalHold_invalid_versionId ¶ added in v1.0.8
func Versioning_PutObjectLegalHold_non_existing_object_version ¶ added in v1.0.19
func Versioning_PutObjectRetention_invalid_versionId ¶ added in v1.0.8
func Versioning_PutObjectRetention_non_existing_object_version ¶ added in v1.0.19
func Versioning_PutObjectTagging_invalid_versionId ¶ added in v1.0.19
func Versioning_PutObjectTagging_non_existing_object_version ¶ added in v1.0.19
func Versioning_PutObject_conditional_writes_over_delete_marker ¶ added in v1.9.0
A delete marker as the current version leaves the key without an object, although the version it hides still has an ETag: If-Match finds no key, while If-None-Match lets the upload through as a new version.
func Versioning_PutObject_dir_object_new_version_resets_attributes ¶ added in v1.9.0
func Versioning_PutObject_new_version_resets_attributes ¶ added in v1.9.0
func Versioning_PutObject_null_versionId_obj ¶ added in v1.0.8
func Versioning_PutObject_over_delete_marker_resets_attributes ¶ added in v1.9.0
func Versioning_PutObject_overwrite_null_versionId_obj ¶ added in v1.0.8
func Versioning_PutObject_success ¶ added in v1.0.8
func Versioning_PutObject_suspended_null_versionId_obj ¶ added in v1.0.8
func Versioning_PutObject_suspended_null_version_resets_attributes ¶ added in v1.9.0
func Versioning_Put_GetObjectLegalHold_success ¶ added in v1.0.8
func Versioning_Put_GetObjectRetention_delete_marker ¶ added in v1.2.0
func Versioning_Put_GetObjectRetention_success ¶ added in v1.0.8
func Versioning_UploadPartCopy_encoded_versionid_separator_invalid_versionId ¶ added in v1.7.0
func Versioning_UploadPartCopy_from_a_delete_marker ¶ added in v1.9.0
A copy source that resolves to a delete marker is rejected: the key has no current version when the marker is the latest, and naming the marker by version id is an invalid request. Versions the marker hides stay copyable.
func Versioning_UploadPartCopy_from_an_object_version ¶ added in v1.0.8
func Versioning_UploadPartCopy_invalid_versionId ¶ added in v1.0.19
func Versioning_UploadPartCopy_non_existing_versionId ¶ added in v1.0.8
func Versioning_WORM_CompleteMultipartUpload_overwrite_locked_object ¶ added in v1.0.19
func Versioning_WORM_CopyObject_overwrite_locked_object ¶ added in v1.0.19
func Versioning_WORM_CopyObject_to_itself_locked_object ¶ added in v1.9.0
A copy of a locked object onto itself creates a new version, leaving the locked one and its legal hold in place.
func Versioning_WORM_DeleteObject_promoted_version_lock_settings ¶ added in v1.9.0
func Versioning_WORM_PutObject_new_version_lock_settings ¶ added in v1.9.0
func Versioning_WORM_PutObject_overwrite_locked_object ¶ added in v1.0.19
func Versioning_WORM_delete_marker_locked_object_compliance_retention ¶ added in v1.1.0
func Versioning_WORM_delete_marker_locked_object_governance_retention ¶ added in v1.1.0
func Versioning_WORM_delete_marker_locked_object_legal_hold ¶ added in v1.1.0
func Versioning_WORM_dir_object_lock_headers ¶ added in v1.9.0
func Versioning_WORM_null_version_locked_with_legal_hold ¶ added in v1.9.0
func Versioning_WORM_obj_version_locked_with_compliance_retention ¶ added in v1.0.8
func Versioning_WORM_obj_version_locked_with_governance_retention ¶ added in v1.0.8
func Versioning_WORM_obj_version_locked_with_legal_hold ¶ added in v1.0.8
func Versioning_WORM_remove_delete_marker_under_bucket_default_retention ¶ added in v1.2.0
func Versioning_WORM_trailing_slash_counterpart ¶ added in v1.9.0
func Versioning_concurrent_upload_object ¶ added in v1.0.8
func Versioning_object_lock_not_enabled_on_bucket_creation ¶ added in v1.0.19
func Versioning_status_switch_to_suspended_with_object_lock ¶ added in v1.0.8
func Versioning_unversioned_bucket_omits_versionId ¶ added in v1.9.0
Versioning_unversioned_bucket_omits_versionId reads an object in a bucket that never had versioning configured. Such a bucket has no versions at all, so neither GetObject nor HeadObject reports a version id, not even the null one, even though the gateway itself runs with versioning enabled.
func WORMProtection_default_retention_applies_to_new_objects ¶ added in v1.9.0
WORMProtection_default_retention_applies_to_new_objects covers each way of writing an object to a bucket with a default retention rule. The object gets a retention of its own: the rule's mode, until the rule's period from the write.
func WORMProtection_default_retention_explicit_lock_settings ¶ added in v1.9.0
WORMProtection_default_retention_explicit_lock_settings covers writes to a bucket with a default retention rule that set Object Lock parameters of their own. A requested retention replaces the rule's, and a legal hold, of either status, keeps the rule's retention off the object.
func WORMProtection_default_retention_set_at_create_multipart_upload ¶ added in v1.9.0
WORMProtection_default_retention_set_at_create_multipart_upload covers multipart uploads to a bucket whose default retention rule changes while they are in progress. The rule in force when the upload is created, if any, gives the object its retention, counted from the creation.
func WORMProtection_default_retention_survives_rule_change ¶ added in v1.9.0
WORMProtection_default_retention_survives_rule_change covers an object written under a default retention rule: changing or removing the rule leaves the object's retention, and its protection, as they are. Objects written after the removal get none.
func WORMProtection_delete_objects_locked_object_partial_success ¶ added in v1.8.0
func WORMProtection_legal_hold_outlives_expired_retention ¶ added in v1.9.0
WORMProtection_legal_hold_outlives_expired_retention covers an object with both a retention and a legal hold: once the retention expires, the legal hold still blocks its deletion, with the bypass header too.
func WORMProtection_object_lock_retention_governance_bypass_overwrite_copy ¶ added in v1.0.19
func WORMProtection_object_lock_retention_governance_bypass_overwrite_mp ¶ added in v1.0.19
func WORMProtection_object_lock_retention_governance_bypass_overwrite_post ¶ added in v1.9.0
func WORMProtection_object_lock_retention_governance_bypass_overwrite_put ¶ added in v1.0.19
func WORMProtection_root_bypass_governance_retention_delete_object ¶ added in v1.0.6
func WORMProtection_unable_to_overwrite_locked_object_copy ¶ added in v1.0.19
func WORMProtection_unable_to_overwrite_locked_object_mp ¶ added in v1.0.19
func WORMProtection_unable_to_overwrite_locked_object_post ¶ added in v1.9.0
func WORMProtection_unable_to_overwrite_locked_object_put ¶ added in v1.0.19
func WebsiteHosting_error_document_not_found ¶ added in v1.6.0
WebsiteHosting_error_document_not_found tests that a missing configured error document returns the complete website NoSuchKey error response.
func WebsiteHosting_error_document_served ¶ added in v1.6.0
WebsiteHosting_error_document_served tests that a missing website object serves the configured error document while preserving the original 404 status.
func WebsiteHosting_get_cors_headers ¶ added in v1.6.0
func WebsiteHosting_head_cors_headers ¶ added in v1.6.0
func WebsiteHosting_index_document ¶ added in v1.6.0
WebsiteHosting_index_document tests root and directory-style index document resolution through the website endpoint.
func WebsiteHosting_index_error_document_and_routing_rules ¶ added in v1.6.0
WebsiteHosting_index_error_document_and_routing_rules covers a combined website configuration with index, error document, pre-rule, and post-rule.
func WebsiteHosting_no_bucket_in_request_location ¶ added in v1.6.0
WebsiteHosting_no_bucket_in_request_location tests that website endpoint requests that cannot resolve a bucket still include a useful Location header.
func WebsiteHosting_no_error_document ¶ added in v1.6.0
WebsiteHosting_no_error_document tests that a website bucket without an error document returns the complete website NoSuchKey error response.
func WebsiteHosting_object_redirect_location ¶ added in v1.6.0
WebsiteHosting_object_redirect_location tests that an object-level website redirect emits a 301 with the stored Location after object fetch succeeds.
func WebsiteHosting_options_preflight_access_forbidden ¶ added in v1.6.0
func WebsiteHosting_options_preflight_access_granted ¶ added in v1.6.0
func WebsiteHosting_options_preflight_missing_origin ¶ added in v1.6.0
func WebsiteHosting_private_object_and_error_document ¶ added in v1.6.0
WebsiteHosting_private_object_and_error_document tests that website hosting does not serve either the requested object or the configured error document unless public object access has been granted.
func WebsiteHosting_redirect_all_requests ¶ added in v1.6.0
WebsiteHosting_redirect_all_requests tests RedirectAllRequestsTo, including path and query preservation, without requiring public object access.
func WebsiteHosting_routing_rule_no_match_serves_error_document ¶ added in v1.6.0
WebsiteHosting_routing_rule_no_match_serves_error_document tests that routing rules which do not match fall back to the configured error document.
func WebsiteHosting_routing_rule_post_request_redirect ¶ added in v1.6.0
WebsiteHosting_routing_rule_post_request_redirect tests that a post-request routing rule matching a 404 issues a redirect instead of serving an error.
func WebsiteHosting_routing_rule_pre_request_redirect ¶ added in v1.6.0
WebsiteHosting_routing_rule_pre_request_redirect tests that a key-prefix routing rule redirects before public access or object existence is checked.
func WebsiteHosting_routing_rule_prefix_and_error_redirect ¶ added in v1.6.0
WebsiteHosting_routing_rule_prefix_and_error_redirect tests a routing rule with both KeyPrefixEquals and HttpErrorCodeReturnedEquals conditions.
func WebsiteHosting_url_encoded_object_key ¶ added in v1.8.0
WebsiteHosting_url_encoded_object_key tests that object keys containing characters requiring percent-encoding are served, and that a key holding a literal percent sign is not decoded twice.
Types ¶
type APIErrorResponse ¶ added in v1.5.0
type APIErrorResponse struct {
XMLName xml.Name `xml:"Error"`
Code string
Message string
ArgumentName string `xml:"ArgumentName,omitempty"`
ArgumentValue string `xml:"ArgumentValue,omitempty"`
Method string `xml:"Method,omitempty"`
Resource string `xml:"Resource,omitempty"`
ResourceType s3err.ResourceType
CalculatedDigest string `xml:"CalculatedDigest,omitempty"`
ExpectedDigest string `xml:"ExpectedDigest,omitempty"`
BucketName string `xml:"BucketName,omitempty"`
ClientComputedContentSHA256 string `xml:"ClientComputedContentSHA256,omitempty"`
S3ComputedContentSHA256 string `xml:"S3ComputedContentSHA256,omitempty"`
ProposedSize int64 `xml:"ProposedSize,omitempty"`
MaxSizeAllowed int64 `xml:"MaxSizeAllowed,omitempty"`
MinSizeAllowed int64 `xml:"MinSizeAllowed,omitempty"`
ServerTime string `xml:"ServerTime,omitempty"`
XAmzExpires int `xml:"X-Amz-Expires,omitempty"`
Expires string `xml:"Expires,omitempty"`
AWSAccessKeyId string `xml:"AWSAccessKeyId,omitempty"`
Chunk int `xml:"Chunk,omitempty"`
BadChunkSize int64 `xml:"BadChunkSize,omitempty"`
ContentMD5 string `xml:"Content-MD5,omitempty"`
LocationConstraint string `xml:"LocationConstraint,omitempty"`
UploadId string `xml:"UploadId,omitempty"`
PartNumber int32 `xml:"PartNumber,omitempty"`
ETag string `xml:"ETag,omitempty"`
ActualPartCount int32 `xml:"ActualPartCount,omitempty"`
PartNumberRequested int32 `xml:"PartNumberRequested,omitempty"`
RangeRequested string `xml:"RangeRequested,omitempty"`
ActualObjectSize int64 `xml:"ActualObjectSize,omitempty"`
TagKey *string `xml:"TagKey,omitempty"`
TagValue string `xml:"TagValue,omitempty"`
Size int64 `xml:"Size,omitempty"`
Header string `xml:"Header,omitempty"`
AdditionalMessage s3err.NmpAdditionalMessage `xml:"additionalMessage,omitempty"`
Key string `xml:"Key,omitempty"`
VersionId string `xml:"VersionId,omitempty"`
Condition s3err.Condition `xml:"Condition,omitempty"`
RequestTime string `xml:"RequestTime,omitempty"`
MaxAllowedSkewMilliseconds int `xml:"MaxAllowedSkewMilliseconds,omitempty"`
Region string `xml:"Region,omitempty"`
StringToSign string `xml:"StringToSign,omitempty"`
SignatureProvided string `xml:"SignatureProvided,omitempty"`
StringToSignBytes string `xml:"StringToSignBytes,omitempty"`
CanonicalRequest string `xml:"CanonicalRequest,omitempty"`
CanonicalRequestBytes string `xml:"CanonicalRequestBytes,omitempty"`
HeadersNotSigned string `xml:"HeadersNotSigned,omitempty"`
RequestID string `xml:"RequestId,omitempty"`
HostID string `xml:"HostId,omitempty"`
}
type IAMErrorResponse ¶ added in v1.8.0
type ObjectMetaProps ¶ added in v1.0.12
type Option ¶
type Option func(*S3Conf)
func WithAccess ¶
func WithAzureMode ¶ added in v1.0.8
func WithAzureMode() Option
func WithConcurrency ¶
func WithDisableChecksum ¶
func WithDisableChecksum() Option
func WithEndpoint ¶
func WithHostStyle ¶ added in v1.0.14
func WithHostStyle() Option
func WithIAMEndpoint ¶ added in v1.8.0
WithIAMEndpoint points the IAM/STS clients at a standalone IAM service separate from the S3 endpoint, for the test groups that drive both processes at once
func WithPartSize ¶
func WithRegion ¶
func WithSecret ¶
func WithSidecarMode ¶ added in v1.5.0
func WithSidecarMode() Option
func WithTLSStatus ¶ added in v1.0.10
func WithVersioningEnabled ¶ added in v1.0.8
func WithVersioningEnabled() Option
func WithWebsiteDomain ¶ added in v1.6.0
func WithWebsitePort ¶ added in v1.6.0
func WithWebsiteScheme ¶ added in v1.6.0
func WithWindowsMode ¶ added in v1.6.0
func WithWindowsMode() Option
type PostRequestConfig ¶ added in v1.4.0
type PostRequestConfig struct {
// contains filtered or unexported fields
}
type PreflightResult ¶ added in v1.0.17
type PublicBucketTestCase ¶ added in v1.0.15
type RReader ¶
type RReader struct {
// contains filtered or unexported fields
}
func NewDataReader ¶
type S3Conf ¶
func (*S3Conf) Config ¶
Config builds the SDK configuration from the harness's own settings and nothing else. It does not go through config.LoadDefaultConfig: region, credentials, endpoint, and HTTP client all come from S3Conf, so the host's shared AWS configuration has nothing to contribute, and consulting it made the harness fail outright under an AWS_PROFILE the host does not define -- the SDK insists a named profile exist even when every setting it could supply is already given.
func (*S3Conf) DownloadData ¶
func (*S3Conf) GetAnonymousClient ¶ added in v1.0.15
func (*S3Conf) GetIAMClient ¶ added in v1.8.0
func (*S3Conf) GetPresignClient ¶ added in v1.0.17
func (c *S3Conf) GetPresignClient() *s3.PresignClient
func (*S3Conf) GetSTSClient ¶ added in v1.8.0
GetSTSClient returns an SDK client for STS actions
type TestState ¶ added in v1.0.19
type TestState struct {
// contains filtered or unexported fields
}
TestState manages the execution of integration tests with optional parallelism and synchronization control.
func NewTestState ¶ added in v1.0.19
NewTestState initializes a new TestState instance. If parallel execution is enabled, it starts a background goroutine to process queued tests.
func (*TestState) Run ¶ added in v1.0.19
Run executes a test function. In parallel mode, it enqueues the function for concurrent execution; otherwise, it runs the test immediately.
Source Files
¶
- AbortMultipartUpload.go
- Access_Control.go
- CompleteMultipartUpload.go
- CopyObject.go
- CreateBucket.go
- CreateMultipartUpload.go
- DeleteBucket.go
- DeleteBucketCors.go
- DeleteBucketOwnershipControls.go
- DeleteBucketPolicy.go
- DeleteBucketTagging.go
- DeleteBucketWebsite.go
- DeleteObject.go
- DeleteObjectTagging.go
- DeleteObjects.go
- GetBucketAcl.go
- GetBucketCors.go
- GetBucketLocation.go
- GetBucketLockConfiguration.go
- GetBucketOwnershipControls.go
- GetBucketPolicy.go
- GetBucketPolicyStatus.go
- GetBucketTagging.go
- GetBucketVersioning.go
- GetBucketWebsite.go
- GetObject.go
- GetObjectAttributes.go
- GetObjectLegalHold.go
- GetObjectRetention.go
- GetObjectTagging.go
- HeadBucket.go
- HeadObject.go
- ListBuckets.go
- ListMultipartUploads.go
- ListObjectVersions.go
- ListObjects.go
- ListObjectsV2.go
- ListParts.go
- NotImplemented_actions.go
- OPTIONS.go
- PostObject.go
- PutBucketAcl.go
- PutBucketCors.go
- PutBucketOwnershipControls.go
- PutBucketPolicy.go
- PutBucketTagging.go
- PutBucketVersioning.go
- PutBucketWebsite.go
- PutObject.go
- PutObjectLegalHold.go
- PutObjectLockConfiguration.go
- PutObjectRetention.go
- PutObjectTagging.go
- UploadPart.go
- UploadPartCopy.go
- WORM_protection.go
- WebsiteHosting.go
- bench.go
- concurrency.go
- data-io.go
- general.go
- group-tests.go
- iam.go
- iam_access_control.go
- iam_add_client_id_to_oidc_provider.go
- iam_assume_role_with_web_identity.go
- iam_auth.go
- iam_create_access_key.go
- iam_create_oidc_provider.go
- iam_create_role.go
- iam_create_user.go
- iam_delete_access_key.go
- iam_delete_oidc_provider.go
- iam_delete_role.go
- iam_delete_role_policy.go
- iam_delete_user.go
- iam_delete_user_policy.go
- iam_get_access_key_last_used.go
- iam_get_caller_identity.go
- iam_get_oidc_provider.go
- iam_get_role.go
- iam_get_role_policy.go
- iam_get_user.go
- iam_get_user_policy.go
- iam_list_access_keys.go
- iam_list_oidc_provider_tags.go
- iam_list_oidc_providers.go
- iam_list_role_policies.go
- iam_list_role_tags.go
- iam_list_roles.go
- iam_list_user_policies.go
- iam_list_user_tags.go
- iam_list_users.go
- iam_put_role_policy.go
- iam_put_user_policy.go
- iam_query_auth.go
- iam_remove_client_id_from_oidc_provider.go
- iam_tag_oidc_provider.go
- iam_tag_role.go
- iam_tag_user.go
- iam_untag_oidc_provider.go
- iam_untag_role.go
- iam_untag_user.go
- iam_update_access_key.go
- iam_update_assume_role_policy.go
- iam_update_oidc_provider_thumbprint.go
- iam_update_user.go
- no_acl.go
- output.go
- posix.go
- presigned_urls.go
- public_bucket.go
- s3_iam_access_control.go
- s3_iam_principals.go
- s3_iam_session_access_control.go
- s3_iam_utils.go
- s3conf.go
- server.go
- signed_streaming_payload.go
- signed_streaming_payload_trailer.go
- sigv4_auth.go
- sse_c.go
- unsigned_streaming_payload_trailer.go
- utils.go
- versioning.go