Removing the 'Message' field

This commit is contained in:
vishalnayak
2016-03-04 08:40:13 -05:00
parent 5b9ef4ec2e
commit a7cfc9cc7a
4 changed files with 7 additions and 17 deletions

View File

@@ -44,6 +44,5 @@ func (c *Sys) Capabilities(token, path string) (*CapabilitiesResponse, error) {
} }
type CapabilitiesResponse struct { type CapabilitiesResponse struct {
Message string `json:"message"`
Capabilities []string `json:"capabilities"` Capabilities []string `json:"capabilities"`
} }

View File

@@ -60,9 +60,6 @@ func (c *CapabilitiesCommand) Run(args []string) int {
} }
c.Ui.Output(fmt.Sprintf("Capabilities: %s", resp.Capabilities)) c.Ui.Output(fmt.Sprintf("Capabilities: %s", resp.Capabilities))
if resp.Message != "" {
c.Ui.Output(fmt.Sprintf("Message: %s", resp.Message))
}
return 0 return 0
} }

View File

@@ -39,7 +39,6 @@ func handleSysCapabilities(core *vault.Core) http.Handler {
} }
if resp == nil { if resp == nil {
respondOk(w, &capabilitiesResponse{ respondOk(w, &capabilitiesResponse{
Message: "Token has no capabilities on the path",
Capabilities: nil, Capabilities: nil,
}) })
return return
@@ -48,14 +47,8 @@ func handleSysCapabilities(core *vault.Core) http.Handler {
var result capabilitiesResponse var result capabilitiesResponse
switch resp.Root { switch resp.Root {
case true: case true:
result.Message = "This is a 'root' token. It has all the capabilities on all the 'valid' paths."
result.Capabilities = nil result.Capabilities = nil
case false: case false:
if len(resp.Capabilities) == 0 {
result.Message = "Token has no capabilities on the path"
} else {
result.Message = ""
}
result.Capabilities = resp.Capabilities result.Capabilities = resp.Capabilities
} }
@@ -65,7 +58,6 @@ func handleSysCapabilities(core *vault.Core) http.Handler {
} }
type capabilitiesResponse struct { type capabilitiesResponse struct {
Message string `json:"message"`
Capabilities []string `json:"capabilities"` Capabilities []string `json:"capabilities"`
} }

View File

@@ -38,7 +38,9 @@ func (c *Core) Capabilities(token, path string) (*CapabilitiesResponse, error) {
capabilities := make(map[string]bool) capabilities := make(map[string]bool)
for _, tePolicy := range te.Policies { for _, tePolicy := range te.Policies {
if tePolicy == "root" { if tePolicy == "root" {
result.Root = true capabilities = map[string]bool{
"root": true,
}
break break
} }
policy, err := c.policyStore.GetPolicy(tePolicy) policy, err := c.policyStore.GetPolicy(tePolicy)
@@ -49,8 +51,8 @@ func (c *Core) Capabilities(token, path string) (*CapabilitiesResponse, error) {
continue continue
} }
for _, pathCapability := range policy.Paths { for _, pathCapability := range policy.Paths {
switch pathCapability.Glob { switch {
case true: case pathCapability.Glob:
if strings.HasPrefix(path, pathCapability.Prefix) { if strings.HasPrefix(path, pathCapability.Prefix) {
for _, capability := range pathCapability.Capabilities { for _, capability := range pathCapability.Capabilities {
if _, ok := capabilities[capability]; !ok { if _, ok := capabilities[capability]; !ok {
@@ -58,7 +60,7 @@ func (c *Core) Capabilities(token, path string) (*CapabilitiesResponse, error) {
} }
} }
} }
case false: default:
if path == pathCapability.Prefix { if path == pathCapability.Prefix {
for _, capability := range pathCapability.Capabilities { for _, capability := range pathCapability.Capabilities {
if _, ok := capabilities[capability]; !ok { if _, ok := capabilities[capability]; !ok {
@@ -71,7 +73,7 @@ func (c *Core) Capabilities(token, path string) (*CapabilitiesResponse, error) {
} }
if len(capabilities) == 0 { if len(capabilities) == 0 {
result.Capabilities = nil result.Capabilities = []string{"deny"}
return &result, nil return &result, nil
} }