1# coding=utf-8
2# --------------------------------------------------------------------------
3# Copyright (c) Microsoft Corporation. All rights reserved.
4# Licensed under the MIT License. See License.txt in the project root for
5# license information.
6#
7# Code generated by Microsoft (R) AutoRest Code Generator.
8# Changes may cause incorrect behavior and will be lost if the code is
9# regenerated.
10# --------------------------------------------------------------------------
11
12from msrest.serialization import Model
13
14
15class SecretBundle(Model):
16    """A secret consisting of a value, id and its attributes.
17
18    Variables are only populated by the server, and will be ignored when
19    sending a request.
20
21    :param value: The secret value.
22    :type value: str
23    :param id: The secret id.
24    :type id: str
25    :param content_type: The content type of the secret.
26    :type content_type: str
27    :param attributes: The secret management attributes.
28    :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes
29    :param tags: Application specific metadata in the form of key-value pairs.
30    :type tags: dict[str, str]
31    :ivar kid: If this is a secret backing a KV certificate, then this field
32     specifies the corresponding key backing the KV certificate.
33    :vartype kid: str
34    :ivar managed: True if the secret's lifetime is managed by key vault. If
35     this is a secret backing a certificate, then managed will be true.
36    :vartype managed: bool
37    """
38
39    _validation = {
40        'kid': {'readonly': True},
41        'managed': {'readonly': True},
42    }
43
44    _attribute_map = {
45        'value': {'key': 'value', 'type': 'str'},
46        'id': {'key': 'id', 'type': 'str'},
47        'content_type': {'key': 'contentType', 'type': 'str'},
48        'attributes': {'key': 'attributes', 'type': 'SecretAttributes'},
49        'tags': {'key': 'tags', 'type': '{str}'},
50        'kid': {'key': 'kid', 'type': 'str'},
51        'managed': {'key': 'managed', 'type': 'bool'},
52    }
53
54    def __init__(self, **kwargs):
55        super(SecretBundle, self).__init__(**kwargs)
56        self.value = kwargs.get('value', None)
57        self.id = kwargs.get('id', None)
58        self.content_type = kwargs.get('content_type', None)
59        self.attributes = kwargs.get('attributes', None)
60        self.tags = kwargs.get('tags', None)
61        self.kid = None
62        self.managed = None
63