1 of 24

Automating Access to Password Protected ERDDAP Datasets

Madison Richardson3

Dale Robinson2

Cara Wilson1

Sunny Hospital2

ERDDAP Showcase

January 2026

1Southwest Fisheries Science Center, NOAA

2UCSC Institute of Marine Sciences | Fisheries Collaborative Program | Cooperative Institute for Marine, Earth, and Atmospheric Systems

3Miami TSPi

2 of 24

2

What We’ll Cover

  • Why Access Control Matters in ERDDAP
  • The CoastWatch slide archive problem
  • Using ERDDAP for secure dataset workflows
  • Automating login and data access with Selenium WebDriver
  • From query to PowerPoint: the end-to-end workflow

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

3 of 24

3

Access Control in ERDDAP Workflows

Typical ERDDAP Usage

  • Publicly distributed datasets
  • Environmental and oceanographic data
  • Designed for open discovery and reuse
  • Anonymous access (no login required)

When Access Must Be Restricted

  • Some datasets contain:
    • Personally identifiable information (PII)
    • Proprietary data
  • These datasets require login via web interface

Manual login works for interactive use, but presents a problem for automated workflows.

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

4 of 24

4

What We Showcase in This Project

Searchable Database

Image Server

  1. Integrating Authentication into an Automated Workflow
  2. Incorporate ERDDAP login into an automated workflow
  3. Authentication handled once, securely with Selenium WebDriver

2. A Non-Traditional Use of ERDDAP:

  • As a searchable database
  • As an image server

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

5 of 24

5

CoastWatch Satellite Training Course Overview

  • CoastWatch offers satellite data training workshops each year
  • Participants submit a project summary slide
  • Slides capture satellite use and participant/project metadata
  • Slides contain PII → access is restricted
  • Goal: Allow authorized users to generate presentations from an automated workflow

Example Participant Project Slide

Over 250 slides have been collected since 2013 (and growing!)

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

6 of 24

6

The Participant & Slide Archive: Then vs. Now

Then

  • Slides scattered across folders and drives
  • Inconsistently named folders and files
  • Manual slide discovery (and what does Cara remember?) 

Now

  • All slides and metadata hosted in ERDDAP
  • Fully searchable by affiliation, product, topics, etc.
  • Information on participants found instantly

Before

After

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

7 of 24

7

Server-Side Configuration of Datasets for Secure Access

ERDDAP is configured to use Google-based authentication for user logins.

Inside setup.xml:

<authentication>google</authentication>

<googleClientID>

{token}.apps.googleusercontent.com

</googleClientID>

Results:

  • ERDDAP adds a “Log in” link to its web interface
  • Users authenticate using NOAA-authorized Google accounts

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

8 of 24

8

Who Can Access the Datasets?

Once authenticated, users are granted access to datasets based on assigned roles.

Inside datasets.xml:

<user username="john.doe@noaa.gov"

roles="coastSlideUser" />

<accessibleTo>coastSlideUser</accessibleTo>

Results:

  • Only users with this role can query metadata
  • Only authorized users can retrieve slide images

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

9 of 24

9

Where the ERDDAP Data Comes From

Participant metadata (CSV)

  • Table with satellite course participants’ information such as:
    • Course, Year, Affiliation, Products, SlideID, etc.

Participant Slide PNGs

  • Over 250 individual slide PNGs, each given an ID:
    • [Year][Course][Number].png

ID

First Name

Last Name

CourseID

Year

2006wcn1

John

Doe

2006wcn

2006

2006wcn2

Jane

Doe

2006wcn

2006

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

10 of 24

10

How the ERDDAP Dataset XMLs Were Set Up

Participant Metadata Dataset

Searchable table of participant metadata

  • ID: satellite_course_slides_metadata
  • Built with: EDDTableFromAsciiFiles
  • Source: Local CSV file
  • Columns: Name, Affiliation, Course ID, Products, Year, SlideID, etc.
  • Access: Limited to coastSlideUser

Slide Image Dataset

Linked archive of slide images

  • ID: course_slide_deck
  • Built with: EDDTableFromFileNames
  • Source: Folder of PNG slides
  • Auto-indexed fields: file name, URL, size, type, and modified date
  • Access: Limited to coastSlideUser

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

11 of 24

11

Secure Automated ERDDAP Workflow

Python or R Script

  • Query metadata
  • Match SlideIDs
  • Download Images

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata
  • Returns SlideIDs & metadata

PowerPoint Presentation

ERDDAP Dataset

(Image Server)

  • Stores slide PNGs
  • Accessed via URLs

Query dataset

Return metadata

Download URLS

Use SlideIDs to get URLS

Generate ppt

Authenticated via Selenium login

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

12 of 24

12

Example: NMFS Participants who used JPSS Data

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

13 of 24

13

Accessing Password Protected Datasets

Python or R Script

  • Query metadata

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata

Query dataset

Authenticated via Selenium login

  • Script initiates workflow
  • Establishes an authenticated ERDDAP session via Selenium login
  • Constructs an ERDDAP tabledap query URL
  • Applies user-defined search criteria
    • Ex: ID, Year, Affiliation, etc.

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

14 of 24

14

Selenium WebDriver: Automating Access to ERDDAP

  • Selenium WebDriver is an open-source software tool that automates browser actions

User Code

Selenium Browser Window

Logged In

Metadata Access

  • In the tutorials, it’s used to log into ERDDAP using your NOAA Google account and retrieve cookies for secure access to the password protected datasets

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

15 of 24

15

Double Login

1

2

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

16 of 24

16

Retrieving Participant Metadata

Python or R Script

  • Query metadata

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata
  • Returns Slide IDs & metadata

Query dataset

Return metadata

Authenticated via Selenium login

  • ERDDAP returns:
    • Returns a CSV with metadata that matches user-defined criteria
    • Slide IDs used in the next step of the workflow
  • Acts as the index for which slides to download

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

17 of 24

17

Query Participant Slide PNGs

Python or R Script

  • Query metadata
  • Match SlideIDs

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata
  • Returns SlideIDs & metadata

ERDDAP Dataset

(Image Server)

  • Stores slide PNGs
  • Accessed via URLs

Query dataset

Return metadata

Use SlideIDs to get URLS

Authenticated via Selenium login

  • Uses Slide IDs returned from the metadata query
  • Constructs ERDDAP file URLs for each matching slide

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

18 of 24

18

Download Participant Slide PNGs

Python or R Script

  • Query metadata
  • Match SlideIDs
  • Download Images

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata
  • Returns SlideIDs & metadata

ERDDAP Dataset

(Image Server)

  • Stores slide PNGs
  • Accessed via URLs

Query dataset

Return metadata

Download URLS

Use SlideIDs to get URLS

Authenticated via Selenium login

  • Accesses slide PNGs through the authenticated ERDDAP session
  • Downloads the PNGs to be included in PowerPoint

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

19 of 24

19

Generate Custom PowerPoint

Python or R Script

  • Query metadata
  • Match SlideIDs
  • Download Images

ERDDAP Dataset

(Metadata)

  • Searchable participant metadata
  • Returns SlideIDs & metadata

PowerPoint Presentation

ERDDAP Dataset

(Image Server)

  • Stores slide PNGs
  • Accessed via URLs

Query dataset

Return metadata

Download URLS

Use SlideIDs to get URLS

Generate ppt

Authenticated via Selenium login

  • Uses the downloaded slide PNGs and associated metadata
  • Automatically creates PowerPoint slides
  • Populates slide titles and annotations using metadata fields

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

20 of 24

20

End Product: From Query to Presentation

Each slide combines metadata and participant images into a ready-to-use presentation.

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

21 of 24

21

Strengths and Limitations of This ERDDAP Approach

Strengths

  • Leverages existing ERDDAP infrastructure
  • Secure: uses Selenium + NOAA Google login, no stored passwords
  • Demonstrates ERDDAP’s versatility

Limitations

  • Requires browser-based authentication with Selenium WebDriver due to PII-protected data
  • Login step still requires user interaction
  • Sensitive to ERDDAP structure changes or dataset renaming

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

22 of 24

22

Why This Matters

Improve Access and Efficiency

  • Replaces manual slide hunting with a fast, repeatable, secure workflow

Enhance Course Impact

  • Living archive of participant work
  • Real-world satellite applications over time

Promotes Secure Reproducible Practices

  • Uses external identity-based authentication (e.g., Google, ORCID), no credentials in code
  • Reusable pattern for other ERDDAP workflows

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

23 of 24

23

Acknowledgements

West Coast Node

& PolarWatch

  • Dale Robinson
  • Cara Wilson
  • Sunny Hospital

All instructors, participants, and hosts of the satellite course trainings!

CW Central

  • Veronica Lance
  • Michael Soracco

JPSS PGRR Program

Thank you for funding the slide collection project!

SWFSC

  • Roy Mendelssohn

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov

24 of 24

24

Questions?

Department of Commerce | National Oceanic and Atmospheric Administration| NOAA.gov