Skip to content

NASA Earthdata Readme

tsutterley edited this page Jan 4, 2021 · 3 revisions

The NASA Earth Science Data Information Systems Project funds and operates 12 Distributed Active Archive Centers (DAACs) throughout the United States. These centers are currently transitioning from ftp to https servers.

The https updates are designed to increase performance and improve security during data retrieval. NASA Earthdata uses OAuth2, an approach to authentication that protects your personal information.

Register with NASA Earthdata Login system:

https://urs.earthdata.nasa.gov/users/new

NASA Earthdata Registration

After registering, can login to the system to add applications:

https://urs.earthdata.nasa.gov/home

NASA Earthdata Login

https://wiki.earthdata.nasa.gov/display/EL/How+To+Pre-authorize+an+application

Documentation of new Single Sign-On system:

Data Access Examples:

Data Distribution Centers:

  • NSIDC DAAC provides data and information for snow and ice processes, particularly interactions among snow, ice, atmosphere, and ocean, in support of research in global change detection and model validation.
  • PO.DAAC provides data and related information pertaining to the physical processes and conditions of the global oceans, including measurements of ocean winds, temperature, topography, salinity, circulation and currents, and sea ice.
  • GES DISC provides access to a wide range of global climate data, concentrated primarily in the areas of atmospheric composition, atmospheric dynamics, global precipitation, and solar irradiance.

WebDAV:

PO.DAAC uses passwords generated using the Web Distributed Authoring and Versioning (WebDAV) API. This password is created at the PO.DAAC Drive website. Use this password rather than your Earthdata password when retrieving data from PO.DAAC. More information.

PO.DAAC WebDAV

HTTPS Opener Settings for NASA Distributed Active Archive Centers (DAACs)

  • Alaska Satellite Facility Distributed Active Archive Center (ASF DAAC)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(),
    password_manager=True, get_ca_certs=False, redirect=False,
    authorization_header=True, urs='https://urs.earthdata.nasa.gov')
  • Crustal Dynamics Data Information System (CDDIS)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(ssl.PROTOCOL_TLS),
    password_manager=True, get_ca_certs=True, redirect=True,
    authorization_header=False, urs='https://urs.earthdata.nasa.gov')
  • Goddard Earth Sciences Data and Information Services Center (GES DISC)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(),
    password_manager=True,  get_ca_certs=False, redirect=False,
    authorization_header=False, urs='https://urs.earthdata.nasa.gov')
  • Land Processes DAAC (LP DAAC)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(),
    password_manager=True, get_ca_certs=False, redirect=True,
    authorization_header=False, urs='https://urs.earthdata.nasa.gov')
  • National Snow and Ice Data Center (NSIDC)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(),
    password_manager=True, get_ca_certs=False, redirect=False,
    authorization_header=True, urs='https://urs.earthdata.nasa.gov')
  • Ocean Biology DAAC (OB.DAAC)
gravity_toolkit.utilities.build_opener(username, password, context=ssl.SSLContext(),
    password_manager=True, get_ca_certs=False, redirect=False,
    authorization_header=True, urs='https://urs.earthdata.nasa.gov')
  • Physical Oceanography DAAC (PO.DAAC)
gravity_toolkit.utilities.build_opener(username, webdav, context=ssl.SSLContext(),
    password_manager=False, get_ca_certs=False, redirect=False,
    authorization_header=True, urs=None)

Some Applications for Research:

  • NSIDC_DATAPOOL_OPS
  • nsidc-daacdata
  • NSIDC V0 OPeNDAP
  • Operation IceBridge Data Portal
  • PO.DAAC Drive OPS
  • NASA GESDISC DATA ARCHIVE

If Any Problems:

Example Python Script:

import sys
import os
import ssl
import shutil
import base64
import getpass
import posixpath
import gravity_toolkit.utilities

#-- NASA Earthdata credentials used to authenticate access to data
#-- Register with NASA Earthdata Login system: https://urs.earthdata.nasa.gov
#-- enter your Earthdata login username
USER = getpass.getuser()
#-- for PO.DAAC: use WebDAV password generated at PO.DAAC Drive site
#-- enter your PO.DAAC WebDAV login password and not your Earthdata password
PASSWORD = getpass.getpass()

#-- build opener for PO.DAAC Drive
gravity_toolkit.utilities.build_opener(USER, PASSWORD, context=ssl.SSLContext(),
    password_manager=False, get_ca_certs=False, redirect=False,
    authorization_header=True, urs=None)

#-- PO.DAAC Drive https server
HOST = 'https://podaac-tools.jpl.nasa.gov/drive/files'
#-- remote and local versions of example file
remote_file = [HOST,'allData','grace','docs','TN-07_C20_SLR.txt']
gravity_toolkit.utilities.from_drive(remote_file,username=USER,password=PASSWORD,
    build=False,timeout=None,local=remote_file[-1],hash='',chunk=16384,
    verbose=True,mode=0o775)
local_file = 'TN-07_C20_SLR.txt'