ip
This commit is contained in:
@@ -182,6 +182,28 @@ type CFTokenVerify struct {
|
||||
ExpiresOn string `json:"expires_on"`
|
||||
}
|
||||
|
||||
// CFTokenPolicy representa una política de permisos del token.
|
||||
type CFTokenPolicy struct {
|
||||
ID string `json:"id"`
|
||||
Effect string `json:"effect"`
|
||||
Resources map[string]string `json:"resources"`
|
||||
PermGroups []CFTokenPermGroup `json:"permission_groups"`
|
||||
}
|
||||
|
||||
// CFTokenPermGroup un grupo de permisos.
|
||||
type CFTokenPermGroup struct {
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// CFTokenDetail detalle completo de un token incluyendo sus políticas.
|
||||
type CFTokenDetail struct {
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Status string `json:"status"`
|
||||
Policies []CFTokenPolicy `json:"policies"`
|
||||
}
|
||||
|
||||
// VerifyToken verifica la validez del API token usando /user/tokens/verify.
|
||||
func (c *CloudflareClient) VerifyToken() (*CFTokenVerify, error) {
|
||||
var result CFTokenVerify
|
||||
@@ -191,6 +213,15 @@ func (c *CloudflareClient) VerifyToken() (*CFTokenVerify, error) {
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// GetTokenDetail obtiene el detalle completo de un token (permisos y recursos).
|
||||
func (c *CloudflareClient) GetTokenDetail(tokenID string) (*CFTokenDetail, error) {
|
||||
var detail CFTokenDetail
|
||||
if err := c.get("/user/tokens/"+tokenID, &detail); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &detail, nil
|
||||
}
|
||||
|
||||
// GetZones lista todas las zonas de la cuenta.
|
||||
func (c *CloudflareClient) GetZones() ([]CFZone, error) {
|
||||
var zones []CFZone
|
||||
|
||||
Reference in New Issue
Block a user