restic/vendor/github.com/Azure/azure-sdk-for-go/arm/keyvault/models.go

305 lines
14 KiB
Go
Raw Normal View History

2017-08-05 18:30:20 +00:00
package keyvault
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
2017-08-05 18:30:20 +00:00
import (
"github.com/Azure/go-autorest/autorest"
"github.com/Azure/go-autorest/autorest/date"
2017-08-05 18:30:20 +00:00
"github.com/Azure/go-autorest/autorest/to"
uuid "github.com/satori/go.uuid"
2017-08-05 18:30:20 +00:00
"net/http"
)
// CertificatePermissions enumerates the values for certificate permissions.
type CertificatePermissions string
const (
// Create specifies the create state for certificate permissions.
Create CertificatePermissions = "create"
// Delete specifies the delete state for certificate permissions.
Delete CertificatePermissions = "delete"
// Deleteissuers specifies the deleteissuers state for certificate permissions.
2017-08-05 18:30:20 +00:00
Deleteissuers CertificatePermissions = "deleteissuers"
// Get specifies the get state for certificate permissions.
Get CertificatePermissions = "get"
// Getissuers specifies the getissuers state for certificate permissions.
Getissuers CertificatePermissions = "getissuers"
// Import specifies the import state for certificate permissions.
Import CertificatePermissions = "import"
// List specifies the list state for certificate permissions.
List CertificatePermissions = "list"
// Listissuers specifies the listissuers state for certificate permissions.
Listissuers CertificatePermissions = "listissuers"
// Managecontacts specifies the managecontacts state for certificate permissions.
2017-08-05 18:30:20 +00:00
Managecontacts CertificatePermissions = "managecontacts"
// Manageissuers specifies the manageissuers state for certificate permissions.
2017-08-05 18:30:20 +00:00
Manageissuers CertificatePermissions = "manageissuers"
// Purge specifies the purge state for certificate permissions.
Purge CertificatePermissions = "purge"
// Recover specifies the recover state for certificate permissions.
Recover CertificatePermissions = "recover"
2017-08-05 18:30:20 +00:00
// Setissuers specifies the setissuers state for certificate permissions.
Setissuers CertificatePermissions = "setissuers"
// Update specifies the update state for certificate permissions.
Update CertificatePermissions = "update"
)
// CreateMode enumerates the values for create mode.
type CreateMode string
const (
// CreateModeDefault specifies the create mode default state for create mode.
CreateModeDefault CreateMode = "default"
// CreateModeRecover specifies the create mode recover state for create mode.
CreateModeRecover CreateMode = "recover"
)
2017-08-05 18:30:20 +00:00
// KeyPermissions enumerates the values for key permissions.
type KeyPermissions string
const (
// KeyPermissionsBackup specifies the key permissions backup state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsBackup KeyPermissions = "backup"
// KeyPermissionsCreate specifies the key permissions create state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsCreate KeyPermissions = "create"
// KeyPermissionsDecrypt specifies the key permissions decrypt state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsDecrypt KeyPermissions = "decrypt"
// KeyPermissionsDelete specifies the key permissions delete state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsDelete KeyPermissions = "delete"
// KeyPermissionsEncrypt specifies the key permissions encrypt state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsEncrypt KeyPermissions = "encrypt"
// KeyPermissionsGet specifies the key permissions get state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsGet KeyPermissions = "get"
// KeyPermissionsImport specifies the key permissions import state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsImport KeyPermissions = "import"
// KeyPermissionsList specifies the key permissions list state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsList KeyPermissions = "list"
// KeyPermissionsPurge specifies the key permissions purge state for key permissions.
KeyPermissionsPurge KeyPermissions = "purge"
// KeyPermissionsRecover specifies the key permissions recover state for key permissions.
KeyPermissionsRecover KeyPermissions = "recover"
// KeyPermissionsRestore specifies the key permissions restore state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsRestore KeyPermissions = "restore"
// KeyPermissionsSign specifies the key permissions sign state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsSign KeyPermissions = "sign"
// KeyPermissionsUnwrapKey specifies the key permissions unwrap key state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsUnwrapKey KeyPermissions = "unwrapKey"
// KeyPermissionsUpdate specifies the key permissions update state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsUpdate KeyPermissions = "update"
// KeyPermissionsVerify specifies the key permissions verify state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsVerify KeyPermissions = "verify"
// KeyPermissionsWrapKey specifies the key permissions wrap key state for key permissions.
2017-08-05 18:30:20 +00:00
KeyPermissionsWrapKey KeyPermissions = "wrapKey"
)
// SecretPermissions enumerates the values for secret permissions.
type SecretPermissions string
const (
// SecretPermissionsBackup specifies the secret permissions backup state for secret permissions.
SecretPermissionsBackup SecretPermissions = "backup"
// SecretPermissionsDelete specifies the secret permissions delete state for secret permissions.
2017-08-05 18:30:20 +00:00
SecretPermissionsDelete SecretPermissions = "delete"
// SecretPermissionsGet specifies the secret permissions get state for secret permissions.
2017-08-05 18:30:20 +00:00
SecretPermissionsGet SecretPermissions = "get"
// SecretPermissionsList specifies the secret permissions list state for secret permissions.
2017-08-05 18:30:20 +00:00
SecretPermissionsList SecretPermissions = "list"
// SecretPermissionsPurge specifies the secret permissions purge state for secret permissions.
SecretPermissionsPurge SecretPermissions = "purge"
// SecretPermissionsRecover specifies the secret permissions recover state for secret permissions.
SecretPermissionsRecover SecretPermissions = "recover"
// SecretPermissionsRestore specifies the secret permissions restore state for secret permissions.
SecretPermissionsRestore SecretPermissions = "restore"
// SecretPermissionsSet specifies the secret permissions set state for secret permissions.
2017-08-05 18:30:20 +00:00
SecretPermissionsSet SecretPermissions = "set"
)
// SkuName enumerates the values for sku name.
type SkuName string
const (
// Premium specifies the premium state for sku name.
Premium SkuName = "premium"
// Standard specifies the standard state for sku name.
Standard SkuName = "standard"
)
// StoragePermissions enumerates the values for storage permissions.
type StoragePermissions string
const (
// StoragePermissionsDelete specifies the storage permissions delete state for storage permissions.
StoragePermissionsDelete StoragePermissions = "delete"
// StoragePermissionsDeletesas specifies the storage permissions deletesas state for storage permissions.
StoragePermissionsDeletesas StoragePermissions = "deletesas"
// StoragePermissionsGet specifies the storage permissions get state for storage permissions.
StoragePermissionsGet StoragePermissions = "get"
// StoragePermissionsGetsas specifies the storage permissions getsas state for storage permissions.
StoragePermissionsGetsas StoragePermissions = "getsas"
// StoragePermissionsList specifies the storage permissions list state for storage permissions.
StoragePermissionsList StoragePermissions = "list"
// StoragePermissionsListsas specifies the storage permissions listsas state for storage permissions.
StoragePermissionsListsas StoragePermissions = "listsas"
// StoragePermissionsRegeneratekey specifies the storage permissions regeneratekey state for storage permissions.
StoragePermissionsRegeneratekey StoragePermissions = "regeneratekey"
// StoragePermissionsSet specifies the storage permissions set state for storage permissions.
StoragePermissionsSet StoragePermissions = "set"
// StoragePermissionsSetsas specifies the storage permissions setsas state for storage permissions.
StoragePermissionsSetsas StoragePermissions = "setsas"
// StoragePermissionsUpdate specifies the storage permissions update state for storage permissions.
StoragePermissionsUpdate StoragePermissions = "update"
)
// AccessPolicyEntry is an identity that have access to the key vault. All identities in the array must use the same
// tenant ID as the key vault's tenant ID.
2017-08-05 18:30:20 +00:00
type AccessPolicyEntry struct {
TenantID *uuid.UUID `json:"tenantId,omitempty"`
ObjectID *string `json:"objectId,omitempty"`
ApplicationID *uuid.UUID `json:"applicationId,omitempty"`
Permissions *Permissions `json:"permissions,omitempty"`
}
// DeletedVault is deleted vault information with extended details.
type DeletedVault struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Properties *DeletedVaultProperties `json:"properties,omitempty"`
}
// DeletedVaultListResult is list of vaults
type DeletedVaultListResult struct {
autorest.Response `json:"-"`
Value *[]DeletedVault `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DeletedVaultListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DeletedVaultListResult) DeletedVaultListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// DeletedVaultProperties is properties of the deleted vault.
type DeletedVaultProperties struct {
VaultID *string `json:"vaultId,omitempty"`
Location *string `json:"location,omitempty"`
DeletionDate *date.Time `json:"deletionDate,omitempty"`
ScheduledPurgeDate *date.Time `json:"scheduledPurgeDate,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// Permissions is permissions the identity has for keys, secrets, certificates and storage.
2017-08-05 18:30:20 +00:00
type Permissions struct {
Keys *[]KeyPermissions `json:"keys,omitempty"`
Secrets *[]SecretPermissions `json:"secrets,omitempty"`
Certificates *[]CertificatePermissions `json:"certificates,omitempty"`
Storage *[]StoragePermissions `json:"storage,omitempty"`
2017-08-05 18:30:20 +00:00
}
// Resource is key Vault resource
type Resource struct {
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// ResourceListResult is list of vault resources.
type ResourceListResult struct {
autorest.Response `json:"-"`
Value *[]Resource `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// ResourceListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client ResourceListResult) ResourceListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// Sku is SKU details
2017-08-05 18:30:20 +00:00
type Sku struct {
Family *string `json:"family,omitempty"`
Name SkuName `json:"name,omitempty"`
}
// Vault is resource information with extended details.
type Vault struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Properties *VaultProperties `json:"properties,omitempty"`
}
// VaultCreateOrUpdateParameters is parameters for creating or updating a vault
type VaultCreateOrUpdateParameters struct {
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Properties *VaultProperties `json:"properties,omitempty"`
}
// VaultListResult is list of vaults
type VaultListResult struct {
autorest.Response `json:"-"`
Value *[]Vault `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// VaultListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client VaultListResult) VaultListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// VaultProperties is properties of the vault
type VaultProperties struct {
TenantID *uuid.UUID `json:"tenantId,omitempty"`
Sku *Sku `json:"sku,omitempty"`
AccessPolicies *[]AccessPolicyEntry `json:"accessPolicies,omitempty"`
VaultURI *string `json:"vaultUri,omitempty"`
2017-08-05 18:30:20 +00:00
EnabledForDeployment *bool `json:"enabledForDeployment,omitempty"`
EnabledForDiskEncryption *bool `json:"enabledForDiskEncryption,omitempty"`
EnabledForTemplateDeployment *bool `json:"enabledForTemplateDeployment,omitempty"`
EnableSoftDelete *bool `json:"enableSoftDelete,omitempty"`
CreateMode CreateMode `json:"createMode,omitempty"`
2017-08-05 18:30:20 +00:00
}