Compartir a través de


Parámetros y tipos [SPFSDK][VMROLE]

 

Se aplica a: Windows Azure Pack

Los parámetros se usan en varias propiedades de objeto. Los parámetros se describen por un nombre, un tipo especificado y una descripción útil. Para usar un parámetro en una propiedad, use la sintaxis [param.parameter_name]. El valor del parámetro identificado se usa cuando se lee o ejecuta el objeto, que depende de su contexto.

Parámetro

Por lo general, hay tres partes en un parámetro. En primer lugar, el parámetro se declara en algún lugar, como en un objeto ResourceDefinition [SPFSDK][VMROLE] o un objeto ResourceExtension [SPFSDK][VMROLE]. En segundo lugar, los valores de un parámetro se proporcionan externamente a partir de la declaración, como ResourceConfiguration [SPFSDK][VMROLE]. Y, por último, otra propiedad de objeto usa un parámetro .

Declaración

Sintaxis

{
    "Name": "Name of the parameter",
    "Type": "Type of parameter ",
    "Description": "Description for the parameter"
}

Propiedades

Nombre

Tipo

Obligatorio

Valor predeterminado

Descripción

Nombre

String

None

El nombre del parámetro.

Tipo

String

None

Tipo de parámetro. En la sección Tipos de parámetro se describen los tipos de parámetro disponibles.

Descripción

String

No

null

Nombre del publicador de esta extensión de recursos.

Uso

En el ejemplo de código siguiente se muestra cómo declarar un parámetro en un objeto ResourceExtension [SPFSDK][VMROLE] para contener el nombre de una instancia de Microsoft SQL Server.

{
    ... other properties ...

    "ResourceExtensionParameters": [
        {
            "Name": "SQLInstance",
            "Type": "string",
            "Description": "The name of the SQL Server instance."
        }
    ],

    ... other properties ...
}

A lo largo del modelo de objetos ResourceExtension [SPFSDK][VMROLE], se puede hacer referencia a un parámetro. Para hacer referencia a un parámetro, use una sintaxis de identificador especial: [param.parameter_name]. En el ejemplo siguiente se muestra cómo resourceExtension [SPFSDK][VMROLE]. ExtensionSettings [SPFSDK][VMROLE]. ApplicationProfile.WindowsApplicationProfile [SPFSDK][VMROLE]. SQLProfile [SPFSDK][VMROLE]. El objeto SQLDeployment usa el parámetro anterior.

{
    "SQLDeployments": [
        {
            "DeploymentName": "SQL Deployment 1",
            "InstanceName": "[Param.SQLInstance]",
            "InstanceID": "[Param.SQLInstance]",
            "EnableNamedPipes": false,
            "EnableTCP": true,
            "MediaSource": "c:\\SQLMediaPath\\sqlsetup.exe",
            "ProductKey": "abcdefghijklmnopqrstuvwxyz",
            "SQLAuthenticationType": "WindowsAuthentication",
            "SQLSysAdminMemberList": "domain\\user",
            "DeploymentTimeOutInSeconds": 3600,
            "SQLConfigurationPayloadId": "61A33949-46CE-4d0f-921F-A0059DA9AD1F",
            "SAPassword": "MySAPassword",

            "SQLDeploymentCredential": "domain\\user:password",
            "SQLAgentServiceCredential": "NT AUTHORITY\\System:",
            "SQLServiceCredential": "NT AUTHORITY\\NetworkService:",
            "SQLReportingServiceCredential": "domain\\user:password"
        }
    ]
}

Ahora que la extensión de recursos está configurada, puede proporcionar un valor para el parámetro a través de VirtualMachineRole.ResourceConfiguration [SPFSDK][VMROLE] propiedad ParameterValues del objeto.

{
    "Version" : "1.0.0.0",

    "ParameterValues" : "{    
                \"SQLInstance\" : \"HomeSQLServer\"
    }"
}

Tipos de parámetros

Las secciones siguientes representan los tipos de parámetros disponibles:

  • String

  • Int

  • Boolean

  • Credential:

  • SecureString

String

  • Valor
    Cualquier valor de cadena.

  • Ejemplo de declaración

    "ResourceParameters" : [ 
        {
            "Name" : "ComputerNamePattern",
            "Type" : "String",
            "Description" : "Computer Name Pattern"
        }
    ]
    
  • Ejemplo de configuración

    "ParameterValues" : "{
        \"ComputerNamePattern\" : \"web-###\"
    }"
    

Int

  • Valor
    Un valor entero.

  • Ejemplo de declaración

    "ResourceParameters" : [ 
        {
            "Name" : "DefaultInstanceCount",
            "Type" : "Int",
            "Description" : "Default number of instances"
        }
    ]
    
  • Ejemplo de configuración

    "ParameterValues" : "{
        \"DefaultInstanceCount\" : 5
    }"
    

Boolean

  • Valor
    true o false.

  • Ejemplo de declaración

    "ResourceParameters" : [ 
        {
            "Name" : "EnableTCP",
            "Type" : "Boolean",
            "Description" : "When True, enables TCP"
        }
    ]
    
  • Ejemplo de configuración

    "ParameterValues" : "{
        \"EnableTCP\" : false
    }"
    

Credential:

  • Valor
    Combinación de nombre de usuario y contraseña en el formato user:password .

  • Ejemplo de declaración

    "ResourceParameters" : [ 
        {
            "Name" : "JoinDomainCreds",
            "Type" : "Credential",
            "Description" : "The credentials to join the domain",
        }
    ]
    
  • Ejemplo de configuración

    ParameterValues Example
    "ParameterValues" : "{
        \"JoinDomainCreds\" : \"myuser:mypassword\"
    }"
    

SecureString

  • Valor
    Cualquier valor de cadena. Si es GET, devuelve el valor de cadena __**__.

  • Ejemplo de declaración

    "ResourceParameters" : [ 
        {
            "Name" : "CreditCard",
            "Type" : "SecureString",
            "Description" : "Credit card number",
        }
    ]
    
  • Ejemplo de configuración

    "ParameterValues" : "{
        \"CreditCard\" : \"0000-0000-0000-0000\"
    }"
    

Consulte también

Referencia JSON del rol de máquina virtual [SPFSDK][VMROLE]
ResourceDefinition [SPFSDK][VMROLE]
ResourceConfiguration [SPFSDK][VMROLE]