# customHeader authentication

**URL:** <https://support.openanalytics.eu/t/customheader-authentication/3181>\
**Category:** ShinyProxy\
**Created:** [August 27, 2025, 6:23am UTC](https://support.openanalytics.eu/t/customheader-authentication/3181 "2025-08-27T06:23:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![sp\_experiment](https://support.openanalytics.eu/letter_avatar_proxy/v4/letter/s/b38774/32.png) [@sp\_experiment](https://support.openanalytics.eu/u/sp_experiment)\
**Post date:** [August 27, 2025, 6:23am UTC](https://support.openanalytics.eu/t/customheader-authentication/3181/1 "2025-08-27T06:23:36Z")

</div>

Do you have a minimal example of deploying the new customHeader authentication in ShinyProxy 3.2?

I am unclear if the header is sufficient or if a webservice is needed and how that interacts with the header (and group)

---

<div class="post-metadata">

**Author:** ![tdekoninck](https://support.openanalytics.eu/user_avatar/support.openanalytics.eu/tdekoninck/32/1079_2.png) [@tdekoninck](https://support.openanalytics.eu/u/tdekoninck)\
**Post date:** [December 9, 2025, 4:08pm UTC](https://support.openanalytics.eu/t/customheader-authentication/3181/2 "2025-12-09T16:08:58Z")

</div>

Hi

It seems we missed this post before.

Indeed adding the headers is enough, there is no need to run or configure a webservice.

As a quick example, let’s say you have the following ShinyProxy config:

```yaml
proxy:
   title: My ShinyProxy
   authentication: customHeader

```

If you try to access ShinyProxy in a browser, you’ll be redirect to the “auth error” page.

To test the authentication, you can use curl and send the correct header:

```bash
$ curl -H "REMOTE_USER: jack" localhost:8080/api/proxyspec/
{"status":"success","data":[]}

```

With the header, you are now authenticated as the “jack” user.
