Update the auth spec scope grammar to reflect the fact that hostnames are optionally supported.
Signed-off-by: cyli <cyli@twistedmatrix.com>master
							parent
							
								
									e69f108924
								
							
						
					
					
						commit
						8854eed7ab
					
				|  | @ -56,7 +56,7 @@ it. | |||
| The resource name represent the name which identifies a resource for a resource | ||||
| provider. A resource is identified by this name and the provided resource type. | ||||
| An example of a resource name would be the name component of an image tag, such | ||||
| as "samalba/myapp". | ||||
| as "samalba/myapp" or "hostname/samalba/myapp". | ||||
| 
 | ||||
| ### Resource Actions | ||||
| 
 | ||||
|  | @ -83,16 +83,24 @@ scopes. | |||
| scope                   := resourcescope [ ' ' resourcescope ]* | ||||
| resourcescope           := resourcetype  ":" resourcename  ":" action [ ',' action ]* | ||||
| resourcetype            := /[a-z]*/ | ||||
| resourcename            := component [ '/' component ]* | ||||
| resourcename            := [ hostname '/' ] component [ '/' component ]* | ||||
| hostname                := hostcomponent ['.' hostcomponent]* [':' port-number] | ||||
| hostcomponent           := /([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])/ | ||||
| port-number             := /[0-9]+/ | ||||
| action                  := /[a-z]*/ | ||||
| component               := alpha-numeric [ separator alpha-numeric ]* | ||||
| alpha-numeric           := /[a-z0-9]+/ | ||||
| separator               := /[_.]|__|[-]*/ | ||||
| ``` | ||||
| Full reference grammar is defined | ||||
| (here)[https://godoc.org/github.com/docker/distribution/reference]. Currently | ||||
| the scope name grammar is a subset of the reference grammar without support | ||||
| for hostnames. | ||||
| [here](https://godoc.org/github.com/docker/distribution/reference). Currently | ||||
| the scope name grammar is a subset of the reference grammar. | ||||
| 
 | ||||
| > **NOTE:** that the `resourcename` may contain one `:` due to a possible port | ||||
| > number in the hostname component of the `resourcename`, so a naive | ||||
| > implementation that interprets the first three `:`-delimited tokens of a | ||||
| > `scope` to be the `resourcetype`, `resourcename`, and a list of `action` | ||||
| > would be insufficient. | ||||
| 
 | ||||
| ## Resource Provider Use | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue