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

891 lines
38 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"
"github.com/Azure/go-autorest/autorest/to"
"net/http"
)
// ActionType enumerates the values for action type.
type ActionType string
const (
// AutoRenew specifies the auto renew state for action type.
AutoRenew ActionType = "AutoRenew"
// EmailContacts specifies the email contacts state for action type.
EmailContacts ActionType = "EmailContacts"
)
// DeletionRecoveryLevel enumerates the values for deletion recovery level.
type DeletionRecoveryLevel string
const (
// Purgeable specifies the purgeable state for deletion recovery level.
Purgeable DeletionRecoveryLevel = "Purgeable"
// Recoverable specifies the recoverable state for deletion recovery level.
Recoverable DeletionRecoveryLevel = "Recoverable"
// RecoverableProtectedSubscription specifies the recoverable protected subscription state for deletion recovery level.
RecoverableProtectedSubscription DeletionRecoveryLevel = "Recoverable+ProtectedSubscription"
// RecoverablePurgeable specifies the recoverable purgeable state for deletion recovery level.
RecoverablePurgeable DeletionRecoveryLevel = "Recoverable+Purgeable"
)
// JSONWebKeyEncryptionAlgorithm enumerates the values for json web key encryption algorithm.
2017-08-05 18:30:20 +00:00
type JSONWebKeyEncryptionAlgorithm string
const (
// RSA15 specifies the rsa15 state for json web key encryption algorithm.
RSA15 JSONWebKeyEncryptionAlgorithm = "RSA1_5"
// RSAOAEP specifies the rsaoaep state for json web key encryption algorithm.
2017-08-05 18:30:20 +00:00
RSAOAEP JSONWebKeyEncryptionAlgorithm = "RSA-OAEP"
// RSAOAEP256 specifies the rsaoaep256 state for json web key encryption algorithm.
RSAOAEP256 JSONWebKeyEncryptionAlgorithm = "RSA-OAEP-256"
2017-08-05 18:30:20 +00:00
)
// JSONWebKeyOperation enumerates the values for json web key operation.
type JSONWebKeyOperation string
const (
// Decrypt specifies the decrypt state for json web key operation.
Decrypt JSONWebKeyOperation = "decrypt"
// Encrypt specifies the encrypt state for json web key operation.
Encrypt JSONWebKeyOperation = "encrypt"
// Sign specifies the sign state for json web key operation.
Sign JSONWebKeyOperation = "sign"
// UnwrapKey specifies the unwrap key state for json web key operation.
UnwrapKey JSONWebKeyOperation = "unwrapKey"
// Verify specifies the verify state for json web key operation.
Verify JSONWebKeyOperation = "verify"
// WrapKey specifies the wrap key state for json web key operation.
WrapKey JSONWebKeyOperation = "wrapKey"
)
// JSONWebKeySignatureAlgorithm enumerates the values for json web key signature algorithm.
2017-08-05 18:30:20 +00:00
type JSONWebKeySignatureAlgorithm string
const (
// PS256 specifies the ps256 state for json web key signature algorithm.
PS256 JSONWebKeySignatureAlgorithm = "PS256"
// PS384 specifies the ps384 state for json web key signature algorithm.
PS384 JSONWebKeySignatureAlgorithm = "PS384"
// PS512 specifies the ps512 state for json web key signature algorithm.
PS512 JSONWebKeySignatureAlgorithm = "PS512"
2017-08-05 18:30:20 +00:00
// RS256 specifies the rs256 state for json web key signature algorithm.
RS256 JSONWebKeySignatureAlgorithm = "RS256"
// RS384 specifies the rs384 state for json web key signature algorithm.
RS384 JSONWebKeySignatureAlgorithm = "RS384"
// RS512 specifies the rs512 state for json web key signature algorithm.
RS512 JSONWebKeySignatureAlgorithm = "RS512"
// RSNULL specifies the rsnull state for json web key signature algorithm.
RSNULL JSONWebKeySignatureAlgorithm = "RSNULL"
)
// JSONWebKeyType enumerates the values for json web key type.
type JSONWebKeyType string
const (
// EC specifies the ec state for json web key type.
EC JSONWebKeyType = "EC"
// Oct specifies the oct state for json web key type.
Oct JSONWebKeyType = "oct"
// RSA specifies the rsa state for json web key type.
RSA JSONWebKeyType = "RSA"
// RSAHSM specifies the rsahsm state for json web key type.
RSAHSM JSONWebKeyType = "RSA-HSM"
)
// KeyUsageType enumerates the values for key usage type.
type KeyUsageType string
const (
// CRLSign specifies the crl sign state for key usage type.
CRLSign KeyUsageType = "cRLSign"
// DataEncipherment specifies the data encipherment state for key usage type.
2017-08-05 18:30:20 +00:00
DataEncipherment KeyUsageType = "dataEncipherment"
// DecipherOnly specifies the decipher only state for key usage type.
DecipherOnly KeyUsageType = "decipherOnly"
// DigitalSignature specifies the digital signature state for key usage type.
2017-08-05 18:30:20 +00:00
DigitalSignature KeyUsageType = "digitalSignature"
// EncipherOnly specifies the encipher only state for key usage type.
EncipherOnly KeyUsageType = "encipherOnly"
// KeyAgreement specifies the key agreement state for key usage type.
KeyAgreement KeyUsageType = "keyAgreement"
// KeyCertSign specifies the key cert sign state for key usage type.
KeyCertSign KeyUsageType = "keyCertSign"
// KeyEncipherment specifies the key encipherment state for key usage type.
KeyEncipherment KeyUsageType = "keyEncipherment"
// NonRepudiation specifies the non repudiation state for key usage type.
NonRepudiation KeyUsageType = "nonRepudiation"
)
// Action is the action that will be executed.
type Action struct {
ActionType ActionType `json:"action_type,omitempty"`
}
// AdministratorDetails is details of the organization administrator of the certificate issuer.
2017-08-05 18:30:20 +00:00
type AdministratorDetails struct {
FirstName *string `json:"first_name,omitempty"`
LastName *string `json:"last_name,omitempty"`
EmailAddress *string `json:"email,omitempty"`
Phone *string `json:"phone,omitempty"`
}
// Attributes is the object attributes managed by the KeyVault service.
type Attributes struct {
Enabled *bool `json:"enabled,omitempty"`
NotBefore *date.UnixTime `json:"nbf,omitempty"`
Expires *date.UnixTime `json:"exp,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
}
// BackupKeyResult is the backup key result, containing the backup blob.
type BackupKeyResult struct {
autorest.Response `json:"-"`
Value *string `json:"value,omitempty"`
}
// BackupSecretResult is the backup secret result, containing the backup blob.
type BackupSecretResult struct {
autorest.Response `json:"-"`
Value *string `json:"value,omitempty"`
}
2017-08-05 18:30:20 +00:00
// CertificateAttributes is the certificate management attributes.
type CertificateAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
NotBefore *date.UnixTime `json:"nbf,omitempty"`
Expires *date.UnixTime `json:"exp,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
RecoveryLevel DeletionRecoveryLevel `json:"recoveryLevel,omitempty"`
2017-08-05 18:30:20 +00:00
}
// CertificateBundle is a certificate bundle consists of a certificate (X509) plus its attributes.
2017-08-05 18:30:20 +00:00
type CertificateBundle struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Kid *string `json:"kid,omitempty"`
Sid *string `json:"sid,omitempty"`
X509Thumbprint *string `json:"x5t,omitempty"`
Policy *CertificatePolicy `json:"policy,omitempty"`
Cer *[]byte `json:"cer,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Attributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// CertificateCreateParameters is the certificate create parameters.
type CertificateCreateParameters struct {
CertificatePolicy *CertificatePolicy `json:"policy,omitempty"`
CertificateAttributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// CertificateImportParameters is the certificate import parameters.
type CertificateImportParameters struct {
Base64EncodedCertificate *string `json:"value,omitempty"`
Password *string `json:"pwd,omitempty"`
CertificatePolicy *CertificatePolicy `json:"policy,omitempty"`
CertificateAttributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// CertificateIssuerItem is the certificate issuer item containing certificate issuer metadata.
2017-08-05 18:30:20 +00:00
type CertificateIssuerItem struct {
ID *string `json:"id,omitempty"`
Provider *string `json:"provider,omitempty"`
}
// CertificateIssuerListResult is the certificate issuer list result.
type CertificateIssuerListResult struct {
autorest.Response `json:"-"`
Value *[]CertificateIssuerItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// CertificateIssuerListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client CertificateIssuerListResult) CertificateIssuerListResultPreparer() (*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)))
}
// CertificateIssuerSetParameters is the certificate issuer set parameters.
type CertificateIssuerSetParameters struct {
Provider *string `json:"provider,omitempty"`
Credentials *IssuerCredentials `json:"credentials,omitempty"`
OrganizationDetails *OrganizationDetails `json:"org_details,omitempty"`
Attributes *IssuerAttributes `json:"attributes,omitempty"`
}
// CertificateIssuerUpdateParameters is the certificate issuer update parameters.
2017-08-05 18:30:20 +00:00
type CertificateIssuerUpdateParameters struct {
Provider *string `json:"provider,omitempty"`
Credentials *IssuerCredentials `json:"credentials,omitempty"`
OrganizationDetails *OrganizationDetails `json:"org_details,omitempty"`
Attributes *IssuerAttributes `json:"attributes,omitempty"`
}
// CertificateItem is the certificate item containing certificate metadata.
type CertificateItem struct {
ID *string `json:"id,omitempty"`
Attributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
X509Thumbprint *string `json:"x5t,omitempty"`
}
// CertificateListResult is the certificate list result.
type CertificateListResult struct {
autorest.Response `json:"-"`
Value *[]CertificateItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// CertificateListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client CertificateListResult) CertificateListResultPreparer() (*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)))
}
// CertificateMergeParameters is the certificate merge parameters
type CertificateMergeParameters struct {
X509Certificates *[][]byte `json:"x5c,omitempty"`
CertificateAttributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// CertificateOperation is a certificate operation is returned in case of asynchronous requests.
2017-08-05 18:30:20 +00:00
type CertificateOperation struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
IssuerParameters *IssuerParameters `json:"issuer,omitempty"`
Csr *[]byte `json:"csr,omitempty"`
CancellationRequested *bool `json:"cancellation_requested,omitempty"`
Status *string `json:"status,omitempty"`
StatusDetails *string `json:"status_details,omitempty"`
Error *Error `json:"error,omitempty"`
Target *string `json:"target,omitempty"`
RequestID *string `json:"request_id,omitempty"`
}
// CertificateOperationUpdateParameter is the certificate operation update parameters.
2017-08-05 18:30:20 +00:00
type CertificateOperationUpdateParameter struct {
CancellationRequested *bool `json:"cancellation_requested,omitempty"`
}
// CertificatePolicy is management policy for a certificate.
type CertificatePolicy struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
KeyProperties *KeyProperties `json:"key_props,omitempty"`
SecretProperties *SecretProperties `json:"secret_props,omitempty"`
X509CertificateProperties *X509CertificateProperties `json:"x509_props,omitempty"`
LifetimeActions *[]LifetimeAction `json:"lifetime_actions,omitempty"`
IssuerParameters *IssuerParameters `json:"issuer,omitempty"`
Attributes *CertificateAttributes `json:"attributes,omitempty"`
}
// CertificateUpdateParameters is the certificate update parameters.
type CertificateUpdateParameters struct {
CertificatePolicy *CertificatePolicy `json:"policy,omitempty"`
CertificateAttributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// Contact is the contact information for the vault certificates.
type Contact struct {
EmailAddress *string `json:"email,omitempty"`
Name *string `json:"name,omitempty"`
Phone *string `json:"phone,omitempty"`
}
// Contacts is the contacts for the vault certificates.
type Contacts struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
ContactList *[]Contact `json:"contacts,omitempty"`
}
// DeletedCertificateBundle is a Deleted Certificate consisting of its previous id, attributes and its tags, as well as
// information on when it will be purged.
type DeletedCertificateBundle struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Kid *string `json:"kid,omitempty"`
Sid *string `json:"sid,omitempty"`
X509Thumbprint *string `json:"x5t,omitempty"`
Policy *CertificatePolicy `json:"policy,omitempty"`
Cer *[]byte `json:"cer,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Attributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedCertificateItem is the deleted certificate item containing metadata about the deleted certificate.
type DeletedCertificateItem struct {
ID *string `json:"id,omitempty"`
Attributes *CertificateAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
X509Thumbprint *string `json:"x5t,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedCertificateListResult is a list of certificates that have been deleted in this vault.
type DeletedCertificateListResult struct {
autorest.Response `json:"-"`
Value *[]DeletedCertificateItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DeletedCertificateListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DeletedCertificateListResult) DeletedCertificateListResultPreparer() (*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)))
}
// DeletedKeyBundle is a DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion info
type DeletedKeyBundle struct {
autorest.Response `json:"-"`
Key *JSONWebKey `json:"key,omitempty"`
Attributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Managed *bool `json:"managed,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedKeyItem is the deleted key item containing the deleted key metadata and information about deletion.
type DeletedKeyItem struct {
Kid *string `json:"kid,omitempty"`
Attributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Managed *bool `json:"managed,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedKeyListResult is a list of keys that have been deleted in this vault.
type DeletedKeyListResult struct {
autorest.Response `json:"-"`
Value *[]DeletedKeyItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DeletedKeyListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DeletedKeyListResult) DeletedKeyListResultPreparer() (*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)))
}
// DeletedSecretBundle is a Deleted Secret consisting of its previous id, attributes and its tags, as well as
// information on when it will be purged.
type DeletedSecretBundle struct {
autorest.Response `json:"-"`
Value *string `json:"value,omitempty"`
ID *string `json:"id,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Attributes *SecretAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Kid *string `json:"kid,omitempty"`
Managed *bool `json:"managed,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedSecretItem is the deleted secret item containing metadata about the deleted secret.
type DeletedSecretItem struct {
ID *string `json:"id,omitempty"`
Attributes *SecretAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Managed *bool `json:"managed,omitempty"`
RecoveryID *string `json:"recoveryId,omitempty"`
ScheduledPurgeDate *date.UnixTime `json:"scheduledPurgeDate,omitempty"`
DeletedDate *date.UnixTime `json:"deletedDate,omitempty"`
}
// DeletedSecretListResult is the deleted secret list result
type DeletedSecretListResult struct {
autorest.Response `json:"-"`
Value *[]DeletedSecretItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DeletedSecretListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DeletedSecretListResult) DeletedSecretListResultPreparer() (*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)))
}
2017-08-05 18:30:20 +00:00
// Error is the key vault server error.
type Error struct {
Code *string `json:"code,omitempty"`
Message *string `json:"message,omitempty"`
InnerError *Error `json:"innererror,omitempty"`
}
// ErrorType is the key vault error exception.
type ErrorType struct {
Error *Error `json:"error,omitempty"`
}
// IssuerAttributes is the attributes of an issuer managed by the Key Vault service.
2017-08-05 18:30:20 +00:00
type IssuerAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
}
// IssuerBundle is the issuer for Key Vault certificate.
type IssuerBundle struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Provider *string `json:"provider,omitempty"`
Credentials *IssuerCredentials `json:"credentials,omitempty"`
OrganizationDetails *OrganizationDetails `json:"org_details,omitempty"`
Attributes *IssuerAttributes `json:"attributes,omitempty"`
}
// IssuerCredentials is the credentials to be used for the certificate issuer.
type IssuerCredentials struct {
AccountID *string `json:"account_id,omitempty"`
Password *string `json:"pwd,omitempty"`
}
// IssuerParameters is parameters for the issuer of the X509 component of a certificate.
2017-08-05 18:30:20 +00:00
type IssuerParameters struct {
Name *string `json:"name,omitempty"`
CertificateType *string `json:"cty,omitempty"`
}
// JSONWebKey is as of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18
2017-08-05 18:30:20 +00:00
type JSONWebKey struct {
Kid *string `json:"kid,omitempty"`
Kty JSONWebKeyType `json:"kty,omitempty"`
KeyOps *[]string `json:"key_ops,omitempty"`
N *string `json:"n,omitempty"`
E *string `json:"e,omitempty"`
D *string `json:"d,omitempty"`
DP *string `json:"dp,omitempty"`
DQ *string `json:"dq,omitempty"`
QI *string `json:"qi,omitempty"`
P *string `json:"p,omitempty"`
Q *string `json:"q,omitempty"`
K *string `json:"k,omitempty"`
T *string `json:"key_hsm,omitempty"`
}
// KeyAttributes is the attributes of a key managed by the key vault service.
type KeyAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
NotBefore *date.UnixTime `json:"nbf,omitempty"`
Expires *date.UnixTime `json:"exp,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
RecoveryLevel DeletionRecoveryLevel `json:"recoveryLevel,omitempty"`
2017-08-05 18:30:20 +00:00
}
// KeyBundle is a KeyBundle consisting of a WebKey plus its attributes.
type KeyBundle struct {
autorest.Response `json:"-"`
Key *JSONWebKey `json:"key,omitempty"`
Attributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Managed *bool `json:"managed,omitempty"`
}
// KeyCreateParameters is the key create parameters.
type KeyCreateParameters struct {
Kty JSONWebKeyType `json:"kty,omitempty"`
KeySize *int32 `json:"key_size,omitempty"`
KeyOps *[]JSONWebKeyOperation `json:"key_ops,omitempty"`
KeyAttributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// KeyImportParameters is the key import parameters.
type KeyImportParameters struct {
Hsm *bool `json:"Hsm,omitempty"`
Key *JSONWebKey `json:"key,omitempty"`
KeyAttributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// KeyItem is the key item containing key metadata.
type KeyItem struct {
Kid *string `json:"kid,omitempty"`
Attributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Managed *bool `json:"managed,omitempty"`
}
// KeyListResult is the key list result.
type KeyListResult struct {
autorest.Response `json:"-"`
Value *[]KeyItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// KeyListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client KeyListResult) KeyListResultPreparer() (*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)))
}
// KeyOperationResult is the key operation result.
type KeyOperationResult struct {
autorest.Response `json:"-"`
Kid *string `json:"kid,omitempty"`
Result *string `json:"value,omitempty"`
}
// KeyOperationsParameters is the key operations parameters.
type KeyOperationsParameters struct {
Algorithm JSONWebKeyEncryptionAlgorithm `json:"alg,omitempty"`
Value *string `json:"value,omitempty"`
}
// KeyProperties is properties of the key pair backing a certificate.
type KeyProperties struct {
Exportable *bool `json:"exportable,omitempty"`
KeyType *string `json:"kty,omitempty"`
KeySize *int32 `json:"key_size,omitempty"`
ReuseKey *bool `json:"reuse_key,omitempty"`
}
// KeyRestoreParameters is the key restore parameters.
type KeyRestoreParameters struct {
KeyBundleBackup *string `json:"value,omitempty"`
}
// KeySignParameters is the key operations parameters.
type KeySignParameters struct {
Algorithm JSONWebKeySignatureAlgorithm `json:"alg,omitempty"`
Value *string `json:"value,omitempty"`
}
// KeyUpdateParameters is the key update parameters.
type KeyUpdateParameters struct {
KeyOps *[]JSONWebKeyOperation `json:"key_ops,omitempty"`
KeyAttributes *KeyAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// KeyVerifyParameters is the key verify parameters.
type KeyVerifyParameters struct {
Algorithm JSONWebKeySignatureAlgorithm `json:"alg,omitempty"`
Digest *string `json:"digest,omitempty"`
Signature *string `json:"value,omitempty"`
}
// KeyVerifyResult is the key verify result.
type KeyVerifyResult struct {
autorest.Response `json:"-"`
Value *bool `json:"value,omitempty"`
}
// LifetimeAction is action and its trigger that will be performed by Key Vault over the lifetime of a certificate.
2017-08-05 18:30:20 +00:00
type LifetimeAction struct {
Trigger *Trigger `json:"trigger,omitempty"`
Action *Action `json:"action,omitempty"`
}
// OrganizationDetails is details of the organization of the certificate issuer.
2017-08-05 18:30:20 +00:00
type OrganizationDetails struct {
ID *string `json:"id,omitempty"`
AdminDetails *[]AdministratorDetails `json:"admin_details,omitempty"`
}
// PendingCertificateSigningRequestResult is the pending certificate signing request result.
2017-08-05 18:30:20 +00:00
type PendingCertificateSigningRequestResult struct {
Value *string `json:"value,omitempty"`
}
// SasDefinitionAttributes is the SAS definition management attributes.
type SasDefinitionAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
}
// SasDefinitionBundle is a SAS definition bundle consists of key vault SAS definition details plus its attributes.
type SasDefinitionBundle struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
SecretID *string `json:"sid,omitempty"`
Parameters *map[string]*string `json:"parameters,omitempty"`
Attributes *SasDefinitionAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// SasDefinitionCreateParameters is the SAS definition create parameters.
type SasDefinitionCreateParameters struct {
Parameters *map[string]*string `json:"parameters,omitempty"`
SasDefinitionAttributes *SasDefinitionAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// SasDefinitionItem is the SAS definition item containing storage SAS definition metadata.
type SasDefinitionItem struct {
ID *string `json:"id,omitempty"`
SecretID *string `json:"sid,omitempty"`
Attributes *SasDefinitionAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// SasDefinitionListResult is the storage account SAS definition list result.
type SasDefinitionListResult struct {
autorest.Response `json:"-"`
Value *[]SasDefinitionItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// SasDefinitionListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client SasDefinitionListResult) SasDefinitionListResultPreparer() (*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)))
}
// SasDefinitionUpdateParameters is the SAS definition update parameters.
type SasDefinitionUpdateParameters struct {
Parameters *map[string]*string `json:"parameters,omitempty"`
SasDefinitionAttributes *SasDefinitionAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
2017-08-05 18:30:20 +00:00
// SecretAttributes is the secret management attributes.
type SecretAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
NotBefore *date.UnixTime `json:"nbf,omitempty"`
Expires *date.UnixTime `json:"exp,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
RecoveryLevel DeletionRecoveryLevel `json:"recoveryLevel,omitempty"`
2017-08-05 18:30:20 +00:00
}
// SecretBundle is a secret consisting of a value, id and its attributes.
type SecretBundle struct {
autorest.Response `json:"-"`
Value *string `json:"value,omitempty"`
ID *string `json:"id,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Attributes *SecretAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
Kid *string `json:"kid,omitempty"`
Managed *bool `json:"managed,omitempty"`
}
// SecretItem is the secret item containing secret metadata.
type SecretItem struct {
ID *string `json:"id,omitempty"`
Attributes *SecretAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
ContentType *string `json:"contentType,omitempty"`
Managed *bool `json:"managed,omitempty"`
}
// SecretListResult is the secret list result.
type SecretListResult struct {
autorest.Response `json:"-"`
Value *[]SecretItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// SecretListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client SecretListResult) SecretListResultPreparer() (*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)))
}
// SecretProperties is properties of the key backing a certificate.
type SecretProperties struct {
ContentType *string `json:"contentType,omitempty"`
}
// SecretRestoreParameters is the secret restore parameters.
type SecretRestoreParameters struct {
SecretBundleBackup *string `json:"value,omitempty"`
}
2017-08-05 18:30:20 +00:00
// SecretSetParameters is the secret set parameters.
type SecretSetParameters struct {
Value *string `json:"value,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
ContentType *string `json:"contentType,omitempty"`
SecretAttributes *SecretAttributes `json:"attributes,omitempty"`
}
// SecretUpdateParameters is the secret update parameters.
type SecretUpdateParameters struct {
ContentType *string `json:"contentType,omitempty"`
SecretAttributes *SecretAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// StorageAccountAttributes is the storage account management attributes.
type StorageAccountAttributes struct {
Enabled *bool `json:"enabled,omitempty"`
Created *date.UnixTime `json:"created,omitempty"`
Updated *date.UnixTime `json:"updated,omitempty"`
}
// StorageAccountCreateParameters is the storage account create parameters.
type StorageAccountCreateParameters struct {
ResourceID *string `json:"resourceId,omitempty"`
ActiveKeyName *string `json:"activeKeyName,omitempty"`
AutoRegenerateKey *bool `json:"autoRegenerateKey,omitempty"`
RegenerationPeriod *string `json:"regenerationPeriod,omitempty"`
StorageAccountAttributes *StorageAccountAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// StorageAccountItem is the storage account item containing storage account metadata.
type StorageAccountItem struct {
ID *string `json:"id,omitempty"`
ResourceID *string `json:"resourceId,omitempty"`
Attributes *StorageAccountAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// StorageAccountRegenerteKeyParameters is the storage account key regenerate parameters.
type StorageAccountRegenerteKeyParameters struct {
KeyName *string `json:"keyName,omitempty"`
}
// StorageAccountUpdateParameters is the storage account update parameters.
type StorageAccountUpdateParameters struct {
ActiveKeyName *string `json:"activeKeyName,omitempty"`
AutoRegenerateKey *bool `json:"autoRegenerateKey,omitempty"`
RegenerationPeriod *string `json:"regenerationPeriod,omitempty"`
StorageAccountAttributes *StorageAccountAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// StorageBundle is a Storage account bundle consists of key vault storage account details plus its attributes.
type StorageBundle struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
ResourceID *string `json:"resourceId,omitempty"`
ActiveKeyName *string `json:"activeKeyName,omitempty"`
AutoRegenerateKey *bool `json:"autoRegenerateKey,omitempty"`
RegenerationPeriod *string `json:"regenerationPeriod,omitempty"`
Attributes *StorageAccountAttributes `json:"attributes,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// StorageListResult is the storage accounts list result.
type StorageListResult struct {
autorest.Response `json:"-"`
Value *[]StorageAccountItem `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// StorageListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client StorageListResult) StorageListResultPreparer() (*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)))
}
2017-08-05 18:30:20 +00:00
// SubjectAlternativeNames is the subject alternate names of a X509 object.
type SubjectAlternativeNames struct {
Emails *[]string `json:"emails,omitempty"`
DNSNames *[]string `json:"dns_names,omitempty"`
Upns *[]string `json:"upns,omitempty"`
}
// Trigger is a condition to be satisfied for an action to be executed.
type Trigger struct {
LifetimePercentage *int32 `json:"lifetime_percentage,omitempty"`
DaysBeforeExpiry *int32 `json:"days_before_expiry,omitempty"`
}
// X509CertificateProperties is properties of the X509 component of a certificate.
2017-08-05 18:30:20 +00:00
type X509CertificateProperties struct {
Subject *string `json:"subject,omitempty"`
Ekus *[]string `json:"ekus,omitempty"`
SubjectAlternativeNames *SubjectAlternativeNames `json:"sans,omitempty"`
KeyUsage *[]KeyUsageType `json:"key_usage,omitempty"`
ValidityInMonths *int32 `json:"validity_months,omitempty"`
}