podman/libpod/image
Valentin Rothberg dc80267b59 compat handlers: add X-Registry-Auth header support
* Support the `X-Registry-Auth` http-request header.

 * The content of the header is a base64 encoded JSON payload which can
   either be a single auth config or a map of auth configs (user+pw or
   token) with the corresponding registries being the keys.  Vanilla
   Docker, projectatomic Docker and the bindings are transparantly
   supported.

 * Add a hidden `--registries-conf` flag.  Buildah exposes the same
   flag, mostly for testing purposes.

 * Do all credential parsing in the client (i.e., `cmd/podman`) pass
   the username and password in the backend instead of unparsed
   credentials.

 * Add a `pkg/auth` which handles most of the heavy lifting.

 * Go through the authentication-handling code of most commands, bindings
   and endpoints.  Migrate them to the new code and fix issues as seen.
   A final evaluation and more tests is still required *after* this
   change.

 * The manifest-push endpoint is missing certain parameters and should
   use the ABI function instead.  Adding auth-support isn't really
   possible without these parts working.

 * The container commands and endpoints (i.e., create and run) have not
   been changed yet.  The APIs don't yet account for the authfile.

 * Add authentication tests to `pkg/bindings`.

Fixes: #6384
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-05-29 15:39:37 +02:00
..
testdata Split refNamesFromImageReference from Runtime.getPullListFromRef 2018-08-01 18:22:58 +00:00
config.go honor pull policy in play kube 2020-01-28 13:36:10 -06:00
docker_registry_options.go compat handlers: add X-Registry-Auth header support 2020-05-29 15:39:37 +02:00
errors.go add podman container|image exists 2018-11-26 09:19:39 -06:00
filters.go Fix remote handling of podman images calls 2020-05-21 09:28:42 -04:00
image.go Fixes podman save fails when specifying an image using a digest #5234 2020-04-28 16:16:30 -04:00
image_test.go podmanv2 load 2020-04-01 14:10:57 -05:00
manifests.go manifest annotate 2020-05-05 15:01:32 -04:00
parts.go honor pull policy in play kube 2020-01-28 13:36:10 -06:00
parts_test.go Remove imageParts.{isTagged,registry,name,tag} 2019-01-14 04:07:24 +01:00
prune.go image prune skips images with child images. 2020-04-15 02:49:47 +00:00
pull.go Stop wrapping pull messages 2020-04-23 05:31:36 -04:00
pull_test.go bump containers/image to v5.0.0, buildah to v1.11.4 2019-10-29 13:35:18 -04:00
search.go bump containers/image to v5.0.0, buildah to v1.11.4 2019-10-29 13:35:18 -04:00
signing_options.go Stage3 Image Library 2018-03-14 20:21:31 +00:00
tree.go Refactor image tree for API usage 2020-02-17 11:12:35 +01:00
utils.go images: distinguish between tags and digests 2019-10-29 13:35:19 -04:00