Data restrictions

The NASA Science Cloud supports FISMA Low by default. Some specifically designated accounts support FISMA Moderate.

Do not transfer, upload, store, process, or publish the following in the NASA Science Cloud:

These restrictions also apply to FISMA Moderate accounts. A Moderate designation does not authorize PII, ITAR-controlled data, or EAR-controlled data.


1. Overview

This page describes methods for transferring data into an existing NASA Science Cloud account from locations such as:

All destination accounts discussed on this page are assumed to be existing NASA Science Cloud accounts. Before starting a transfer, the user must confirm that the data is appropriate for the destination account’s security categorization.

This page focuses on:

This page does not cover:


2. Determine Whether the Data Is Eligible

Determine the applicable FISMA impact level and check for prohibited content before selecting a transfer method.

FIPS Publication 199 defines Low, Moderate, and High impact levels based on the potential effect of a loss of confidentiality, integrity, or availability.[1]

Supported data categories

Data categoryScience Cloud supportRequired action
FISMA LowSupported by defaultMay be transferred to a standard NASA Science Cloud account
FISMA ModerateSupported only by specifically designated accountsConfirm that the destination account supports Moderate before transferring
FISMA HighNot supported under this guidanceDo not transfer
ITAR-controlled dataNot permittedDo not transfer
EAR-controlled dataNot permittedDo not transfer
Data with an unknown categorizationNot ready for transferObtain a determination before transferring
Publicly releasable dataMay be transferred, subject to project requirementsDo not assume that upload constitutes approval for public release

FISMA Low does not mean public.

Data hosted in a FISMA Low environment may still require authentication, access restrictions, embargo controls, licensing restrictions, or other protections.

FISMA Moderate data

Before transferring FISMA Moderate data, confirm all of the following:

Do not temporarily stage Moderate data in a standard FISMA Low account.

Mixed datasets

Treat a dataset according to its highest applicable impact level or restriction.

For example, a scientific dataset containing a small amount of PII must not be uploaded, even if the remainder of the dataset is public or FISMA Low. Remove the prohibited content and complete any required review before transferring the dataset.

Do not upload data to a landing or quarantine location for the purpose of determining whether it contains prohibited information. Perform that review before transfer.


3. Pre-Transfer Eligibility Check

Complete this check before initiating a transfer.

QuestionRequired response
Has the data owner identified the applicable FISMA impact level?If no or unknown, stop and obtain a determination
Is the data FISMA Low?It may be transferred to a standard Science Cloud account
Is the data FISMA Moderate?Confirm that the destination is a specifically designated Moderate account
Does the dataset contain PII?If yes or unknown, do not transfer
Is the dataset controlled under ITAR?If yes or unknown, do not transfer
Is the dataset controlled under EAR?If yes or unknown, do not transfer
Is the destination appropriate for the data’s impact level?If no or unknown, do not transfer
Is the intended landing location identified?If no, obtain the destination before starting
Are access controls, encryption, and logging configured?If no or unknown, resolve the configuration before transfer
Are validation and acceptance criteria documented?If no, define them before the production transfer

4. Choose a Transfer Method

The appropriate method depends on:

AWS selection guide

RequirementRecommended starting point
Small, one-time uploadAWS Command Line Interface or AWS SDK
Application-generated uploadsAWS SDK or Amazon S3 API
Large NFS, SMB, HDFS, or compatible object-storage sourceAWS DataSync, where supported
Scheduled or recurring synchronizationAWS DataSync
External contributor requires SFTPAWS Transfer Family
Long-distance internet uploadAmazon S3 Transfer Acceleration, after testing
Existing application requires an NFS or SMB interfaceAWS Storage Gateway
Dataset cannot meet the deadline using available bandwidthAn approved offline-transfer option, subject to availability
Relational or other supported database migrationAWS Database Migration Service
Continuous ingestionApplication APIs, managed file transfer, or scheduled DataSync tasks

The transfer method does not change the data eligibility rules. No transfer service authorizes PII, ITAR-controlled data, EAR-controlled data, or data above the destination account’s supported impact level.


5. AWS Transfer Methods

5.1 AWS Command Line Interface or AWS SDK

The AWS Command Line Interface, AWS SDKs, and Amazon S3 APIs can upload files and objects directly to Amazon S3. AWS CLI high-level S3 commands manage multipart behavior for large objects.[2][3]

Recommended for

Best practices

The following shell example previews an Amazon S3 synchronization, performs the upload, and displays a basic destination summary.

# Use the profile established through the approved authentication process.
# Never insert a permanent access key or secret key into this script.
export AWS_PROFILE="<approved-profile>"

# Preview the proposed upload without changing the destination.
aws s3 sync "/source/dataset" \
  "s3://<approved-bucket>/landing/<dataset-name>/" \
  --dryrun \
  --profile "${AWS_PROFILE}"

# Upload the dataset after reviewing the dry-run result.
aws s3 sync "/source/dataset" \
  "s3://<approved-bucket>/landing/<dataset-name>/" \
  --only-show-errors \
  --profile "${AWS_PROFILE}"

# Display the destination object count and total size.
aws s3 ls \
  "s3://<approved-bucket>/landing/<dataset-name>/" \
  --recursive \
  --summarize \
  --profile "${AWS_PROFILE}"

For important datasets, supplement the summary with a source manifest and checksum validation.


5.2 AWS DataSync

AWS DataSync is a managed transfer service for moving data between supported source systems and AWS storage services. Depending on the current service capabilities, supported sources can include NFS, SMB, HDFS, and compatible object storage. Destinations can include Amazon S3, Amazon Elastic File System, and supported Amazon FSx services.[4]

Recommended for

Typical process

  1. Confirm the dataset’s eligibility and FISMA impact level.
  2. Confirm that the destination is appropriate for the data.
  3. Deploy or obtain access to a DataSync agent.
  4. Configure the source location.
  5. Configure the Science Cloud landing location.
  6. Configure filters, logging, verification, and bandwidth limits.
  7. Run a representative pilot.
  8. Review failed, skipped, or changed files.
  9. Run the full transfer.
  10. Run an incremental transfer if the source remains active.
  11. Validate the destination.
  12. Promote the data to its authoritative location.

Review current DataSync requirements and supported source and destination combinations before implementation.[4][5]


5.3 AWS Transfer Family

AWS Transfer Family provides managed file-transfer endpoints for supported protocols such as SFTP, FTPS, FTP, and AS2. Received files can be stored in Amazon S3 or Amazon EFS.[6]

Recommended for

Best practices


5.4 Amazon S3 Transfer Acceleration

Amazon S3 Transfer Acceleration can improve some long-distance uploads by using AWS edge locations and the AWS global network.[7]

Recommended for

Considerations

Transfer Acceleration is a performance feature. It does not change the destination’s FISMA designation or authorize prohibited data.


5.5 AWS Storage Gateway

Amazon S3 File Gateway presents an NFS or SMB file interface while storing files as objects in Amazon S3.[8]

Recommended for

Considerations

For a finite migration, AWS DataSync may be a more appropriate option.


5.6 Offline Transfer

An offline-transfer method may be appropriate when the dataset cannot meet its transfer deadline using available bandwidth.

AWS offline-transfer service availability, eligibility, and regional support can change. Contact the Science Cloud team and consult current AWS documentation before selecting this method.[9]

Required controls

Physical transfer must not be used to bypass FISMA or prohibited-data restrictions.


5.7 Database Transfers

Do not assume that copying database files is sufficient to migrate a database safely.

For supported database engines, consider AWS Database Migration Service or an engine-specific backup and restore process. These approaches can help preserve database consistency and may support ongoing replication during migration.[10]

Before migrating a database:


6. Recommended Inbound Transfer Pattern

Use the following general pattern:

External source → selected transfer method → landing area → validation → authoritative location → downstream processing

Suggested storage stages

StageExamplePurpose
Landings3://<bucket>/landing/<dataset>/Initial destination for inbound data
Quarantines3://<bucket>/quarantine/<dataset>/Eligible data awaiting format, security, or integrity review
Validateds3://<bucket>/validated/<dataset>/Data that passed validation and acceptance checks
Rejecteds3://<bucket>/rejected/<dataset>/Incomplete, corrupt, or otherwise unacceptable files
Archives3://<bucket>/archive/<dataset>/Approved source package or retained archival copy

A quarantine area is not an approved location for PII, ITAR-controlled data, or EAR-controlled data. Identify prohibited data before upload.

Where practical, prevent upload identities from modifying validated or authoritative data. Use separate permissions for transfer, validation, administration, and consumption.


7. Prepare the Dataset

7.1 Create an inventory

Record the following before transfer:

File count can be as important as total size. A dataset containing millions of small files may transfer more slowly and generate more storage requests than a similarly sized dataset containing fewer large files.

7.2 Clean the source

Before transfer:

7.3 Create a manifest

For significant scientific datasets, create a manifest containing:

FieldDescription
Relative pathPath relative to the source dataset root
File sizeLogical size in bytes
ChecksumPreferably SHA-256 when required
Dataset identifierProject-defined unique identifier
Dataset versionScientific or operational version
Source systemSystem from which the data originated
Modification timeSource modification time, if relevant
DestinationExpected cloud location
Transfer dateDate of the production transfer
Validation resultPass, fail, or pending

Protect the manifest from unauthorized modification.


8. Security Best Practices

8.1 Identity and access

8.2 Encryption

Amazon S3 encrypts new object uploads at rest by default. Projects must still use the destination account’s established key-management and access-control configuration.[12]

8.3 Logging and monitoring

Use the logging capabilities required by the destination environment, which may include:

CloudTrail S3 data events can generate substantial log volume and cost. Scope them according to the destination environment’s requirements.[13]


9. Data Integrity and Validation

A successful transfer command or task status does not prove that the dataset is complete, correct, or scientifically usable.

Minimum validation

Compare the source and destination using:

Checksum validation

Use checksums when end-to-end integrity verification is required. Amazon S3 supports checksum calculation and validation, but behavior varies by operation and client. Confirm that the selected transfer method uses the required checksum algorithm and validates the complete object.[14]

For multipart uploads, do not assume that an Amazon S3 ETag is always an MD5 checksum of the complete source file.

Scientific validation

Where applicable, also verify:

Do not delete or alter the source copy until:

  1. Integrity checks have passed.
  2. Scientific validation has passed.
  3. Access controls have been reviewed.
  4. The data owner has accepted the cloud copy.
  5. Source deletion has been separately authorized.

10. Performance Best Practices

Packaging many small files into larger containers can improve throughput, but do so only when compatible with:

Many scientific file formats are already compressed. Test compression before adding it to the transfer workflow.


11. Cost Best Practices

Potential charges include:

Before starting a large transfer:

Review the current AWS pricing pages because costs vary by service, Region, and usage pattern.[15]


12. Microsoft Azure Options

The same NASA Science Cloud restrictions apply to approved Azure environments:

Azure service selection

RequirementAzure option
Command-line file or object uploadAzCopy
Application uploadAzure Storage SDK or REST API
Managed on-premises file migrationAzure Storage Mover
Offline physical transferAzure Data Box
Scheduled data movement and orchestrationAzure Data Factory

12.1 AzCopy

AzCopy is a command-line utility for copying data to and from Azure Blob Storage and Azure Files.[16]

Recommended practices include:

12.2 Azure Storage Mover

Azure Storage Mover provides managed migration workflows for supported on-premises file sources and Azure Storage destinations.[17]

It may be appropriate for:

Verify current source, destination, metadata, and regional support before selecting the service.

12.3 Azure Data Box

Azure Data Box provides physical devices for transferring large datasets into Azure.[18]

Use of a physical device requires:

12.4 Azure Data Factory

Azure Data Factory can copy data between supported data stores and orchestrate recurring ingestion workflows.[19]

It may be appropriate for:

Confirm that the complete workflow and every intermediate location are appropriate for the data’s FISMA impact level.


13. Inbound Transfer Checklist

Before transfer

During transfer

After transfer


14. References

[1] National Institute of Standards and Technology, “FIPS PUB 199: Standards for Security Categorization of Federal Information and Information Systems,” https://csrc.nist.gov/pubs/fips/199/final

[2] AWS, “Using high-level S3 commands with the AWS CLI,” https://docs.aws.amazon.com/cli/latest/userguide/cli-services-s3-commands.html

[3] AWS, “Uploading and copying objects using multipart upload,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html

[4] AWS, “What is AWS DataSync?” https://docs.aws.amazon.com/datasync/latest/userguide/what-is-datasync.html

[5] AWS, “AWS DataSync requirements,” https://docs.aws.amazon.com/datasync/latest/userguide/datasync-requirements.html

[6] AWS, “What is AWS Transfer Family?” https://docs.aws.amazon.com/transfer/latest/userguide/what-is-aws-transfer-family.html

[7] AWS, “Configuring fast, secure file transfers using Amazon S3 Transfer Acceleration,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/transfer-acceleration.html

[8] AWS, “What is Amazon S3 File Gateway?” https://docs.aws.amazon.com/filegateway/latest/files3/what-is-file-s3.html

[9] AWS, “Cloud data migration services,” https://aws.amazon.com/cloud-data-migration/

[10] AWS, “What is AWS Database Migration Service?” https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html

[11] AWS, “Blocking public access to Amazon S3 storage,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html

[12] AWS, “Protecting data with server-side encryption,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html

[13] AWS, “Logging Amazon S3 API calls using AWS CloudTrail,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/cloudtrail-logging.html

[14] AWS, “Checking object integrity in Amazon S3,” https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html

[15] AWS, “AWS data transfer charges,” https://aws.amazon.com/ec2/pricing/on-demand/#Data_Transfer

[16] Microsoft, “Get started with AzCopy,” https://learn.microsoft.com/azure/storage/common/storage-use-azcopy-v10

[17] Microsoft, “What is Azure Storage Mover?” https://learn.microsoft.com/azure/storage-mover/service-overview

[18] Microsoft, “What is Azure Data Box?” https://learn.microsoft.com/azure/databox/data-box-overview

[19] Microsoft, “Introduction to Azure Data Factory,” https://learn.microsoft.com/azure/data-factory/introduction