azure.rm.apimanagementservice_info (0.0.6) — module

Get ApiManagementService info.

| "added in version" 2.9 of azure.rm"

Authors: Zim Kalinowski (@zikalino)

preview | supported by community

Install collection

Install with ansible-galaxy collection install azure.rm:==0.0.6


Add to requirements.yml

  collections:
    - name: azure.rm
      version: 0.0.6

Description

Get info of ApiManagementService.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: ApiManagementListServiceBySubscription
  azure.rm.apimanagementservice_info:
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: ApiManagementListServiceBySubscriptionAndResourceGroup
  azure.rm.apimanagementservice_info:
    resource_group: myResourceGroup
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: ApiManagementServiceGetService
  azure.rm.apimanagementservice_info:
    resource_group: myResourceGroup
    name: myService

Inputs

    
id:
    description:
    - Resource ID.
    type: str

etag:
    description:
    - ETag of the resource.
    type: str

name:
    description:
    - Resource name.
    type: str

type:
    description:
    - Resource type for API Management resource is set to Microsoft.ApiManagement.
    type: str

secret:
    description:
    - Azure client secret. Use when authenticating with a Service Principal.
    type: str

tenant:
    description:
    - Azure tenant ID. Use when authenticating with a Service Principal.
    type: str

ad_user:
    description:
    - Active Directory username. Use when authenticating with an Active Directory user
      rather than service principal.
    type: str

profile:
    description:
    - Security profile found in ~/.azure/credentials file.
    type: str

scm_url:
    description:
    - SCM endpoint URL of the API Management service.
    type: str

identity:
    description:
    - Managed service identity of the Api Management service.
    suboptions:
      principal_id:
        description:
        - The principal id of the identity.
        type: unknown-primary[uuid]
      tenant_id:
        description:
        - The client tenant id of the identity.
        type: unknown-primary[uuid]
      type:
        description:
        - The identity type. Currently the only supported type is 'SystemAssigned'.
        required: true
        type: str
    type: dict

location:
    description:
    - Resource location.
    type: str

log_mode:
    description:
    - Parent argument.
    type: str

log_path:
    description:
    - Parent argument.
    type: str

password:
    description:
    - Active Directory user password. Use when authenticating with an Active Directory
      user rather than service principal.
    type: str

sku_name:
    description:
    - Name of the Sku.
    required: true
    type: str

client_id:
    description:
    - Azure client ID. Use when authenticating with a Service Principal.
    type: str

portal_url:
    description:
    - Publisher portal endpoint Url of the API Management service.
    type: str

api_profile:
    default: latest
    description:
    - Selects an API profile to use when communicating with Azure services. Default value
      of C(latest) is appropriate for public clouds; future values will allow use with
      Azure Stack.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

auth_source:
    choices:
    - auto
    - cli
    - credential_file
    - env
    - msi
    default: auto
    description:
    - Controls the source of the credentials to use for authentication.
    - Can also be set via the C(ANSIBLE_AZURE_AUTH_SOURCE) environment variable.
    - When set to C(auto) (the default) the precedence is module parameters -> C(env)
      -> C(credential_file) -> C(cli).
    - When set to C(env), the credentials will be read from the environment variables
    - When set to C(credential_file), it will read the profile from C(~/.azure/credentials).
    - When set to C(cli), the credentials will be sources from the Azure CLI profile.
      C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID) can be used
      to identify the subscription ID if more than one is present otherwise the default
      az cli subscription is used.
    - When set to C(msi), the host machine must be an azure resource with an enabled MSI
      extension. C(subscription_id) or the environment variable C(AZURE_SUBSCRIPTION_ID)
      can be used to identify the subscription ID if the resource is granted access to
      more than one subscription, otherwise the first subscription is chosen.
    - The C(msi) was added in Ansible 2.6.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

gateway_url:
    description:
    - Gateway URL of the API Management service.
    type: str

certificates:
    description:
    - List of Certificates that need to be installed in the API Management service. Max
      supported certificates that can be installed is 10.
    suboptions:
      certificate:
        description:
        - Certificate information.
        suboptions:
          expiry:
            description:
            - 'Expiration date of the certificate. The date conforms to the following
              format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.'
            required: true
            type: datetime
          subject:
            description:
            - Subject of the certificate.
            required: true
            type: str
          thumbprint:
            description:
            - Thumbprint of the certificate.
            required: true
            type: str
        type: dict
      certificate_password:
        description:
        - Certificate Password.
        type: str
      encoded_certificate:
        description:
        - Base64 Encoded certificate.
        type: str
      store_name:
        description:
        - The System.Security.Cryptography.x509certificates.StoreName certificate store
          location. Only Root and CertificateAuthority are valid locations.
        required: true
        type: str
    type: list

sku_capacity:
    description:
    - Capacity of the SKU (number of deployed units of the SKU).
    type: number

created_at_utc:
    description:
    - 'Creation UTC date of the API Management service.The date conforms to the following
      format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.'
    type: datetime

publisher_name:
    description:
    - Publisher name.
    required: true
    type: str

resource_group:
    description:
    - The name of the resource group.
    type: str

publisher_email:
    description:
    - Publisher email.
    required: true
    type: str

subscription_id:
    description:
    - Your Azure subscription Id.
    type: str

cloud_environment:
    default: AzureCloud
    description:
    - For cloud environments other than the US public cloud, the environment name (as
      defined by Azure Python SDK, eg, C(AzureChinaCloud), C(AzureUSGovernment)), or a
      metadata discovery endpoint URL (required for Azure Stack). Can also be set via
      credential file profile or the C(AZURE_CLOUD_ENVIRONMENT) environment variable.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

custom_properties:
    description:
    - 'Custom properties of the API Management service.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`
      will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting
      `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` can be used
      to disable just TLS 1.1.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`
      can be used to disable TLS 1.0 on an API Management service.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`
      can be used to disable just TLS 1.1 for communications with backends.</br>Setting
      `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`
      can be used to disable TLS 1.0 for communications with backends.</br>Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`
      can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying
      any of these properties on PATCH operation will reset omitted properties'' values
      to their defaults. For all the settings except Http2 the default value is `True`
      if the service was created on or before April 1st 2018 and `False` otherwise. Http2
      setting''s default value is `False`.</br></br>You can disable any of next ciphers
      by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`:
      TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
      TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256,
      TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA.
      For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:`false`.
      The default value is `true` for them.'
    type: str

adfs_authority_url:
    description:
    - Azure AD authority url. Use when authenticating with Username/password, and has
      your own ADFS authority.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

management_api_url:
    description:
    - Management API endpoint URL of the API Management service.
    type: str

provisioning_state:
    description:
    - 'The current provisioning state of the API Management service which can be one of
      the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted.'
    type: str

public_ip_addresses:
    description:
    - Public Static Load Balanced IP addresses of the API Management service in Primary
      region. Available only for Basic, Standard and Premium SKU.
    type: list

additional_locations:
    description:
    - Additional datacenter locations of the API Management service.
    suboptions:
      gateway_regional_url:
        description:
        - Gateway URL of the API Management service in the Region.
        type: str
      location:
        description:
        - The location name of the additional region among Azure Data center regions.
        required: true
        type: str
      private_ip_addresses:
        description:
        - Private Static Load Balanced IP addresses of the API Management service which
          is deployed in an Internal Virtual Network in a particular additional location.
          Available only for Basic, Standard and Premium SKU.
        type: list
      public_ip_addresses:
        description:
        - Public Static Load Balanced IP addresses of the API Management service in the
          additional location. Available only for Basic, Standard and Premium SKU.
        type: list
      sku:
        description:
        - SKU properties of the API Management service.
        required: true
        suboptions:
          capacity:
            description:
            - Capacity of the SKU (number of deployed units of the SKU).
            type: number
          name:
            description:
            - Name of the Sku.
            required: true
            type: str
        type: dict
      virtual_network_configuration:
        description:
        - Virtual network configuration for the location.
        suboptions:
          subnet_resource_id:
            description:
            - The full resource ID of a subnet in a virtual network to deploy the API
              Management service in.
            type: str
          subnetname:
            description:
            - The name of the subnet.
            type: str
          vnetid:
            description:
            - The virtual network ID. This is typically a GUID. Expect a null GUID by
              default.
            type: str
        type: dict
    type: list

cert_validation_mode:
    choices:
    - ignore
    - validate
    description:
    - Controls the certificate validation behavior for Azure endpoints. By default, all
      modules will validate the server certificate, but when an HTTPS proxy is in use,
      or against Azure Stack, it may be necessary to disable this behavior by passing
      C(ignore). Can also be set via credential file profile or the C(AZURE_CERT_VALIDATION)
      environment variable.
    type: str
    version_added: 0.0.1
    version_added_collection: azure.azcollection

gateway_regional_url:
    description:
    - Gateway URL of the API Management service in the Default Region.
    type: str

private_ip_addresses:
    description:
    - Private Static Load Balanced IP addresses of the API Management service in Primary
      region which is deployed in an Internal Virtual Network. Available only for Basic,
      Standard and Premium SKU.
    type: list

virtual_network_type:
    description:
    - The type of VPN in which API Management service needs to be configured in. None
      (Default Value) means the API Management service is not part of any Virtual Network,
      External means the API Management deployment is set up inside a Virtual Network
      having an Internet Facing Endpoint, and Internal means that API Management deployment
      is setup inside a Virtual Network having an Intranet Facing Endpoint only.
    type: str

hostname_configurations:
    description:
    - Custom hostname configuration of the API Management service.
    suboptions:
      certificate:
        description:
        - Certificate information.
        suboptions:
          expiry:
            description:
            - 'Expiration date of the certificate. The date conforms to the following
              format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.'
            required: true
            type: datetime
          subject:
            description:
            - Subject of the certificate.
            required: true
            type: str
          thumbprint:
            description:
            - Thumbprint of the certificate.
            required: true
            type: str
        type: dict
      certificate_password:
        description:
        - Certificate Password.
        type: str
      default_ssl_binding:
        description:
        - Specify true to setup the certificate associated with this Hostname as the Default
          SSL Certificate. If a client does not send the SNI header, then this will be
          the certificate that will be challenged. The property is useful if a service
          has multiple custom hostname enabled and it needs to decide on the default ssl
          certificate. The setting only applied to Proxy Hostname Type.
        type: boolean
      encoded_certificate:
        description:
        - Base64 Encoded certificate.
        type: str
      host_name:
        description:
        - Hostname to configure on the Api Management service.
        required: true
        type: str
      key_vault_id:
        description:
        - Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing
          version is provided, auto-update of ssl certificate will not work. This requires
          Api Management service to be configured with MSI. The secret should be of type
          *application/x-pkcs12*
        type: str
      negotiate_client_certificate:
        description:
        - Specify true to always negotiate client certificate on the hostname. Default
          Value is false.
        type: boolean
      type:
        description:
        - Hostname type.
        required: true
        type: str
    type: list

enable_client_certificate:
    description:
    - Property only meant to be used for Consumption SKU Service. This enforces a client
      certificate to be presented on each request to the gateway. This also enables the
      ability to authenticate the certificate in the policy on the gateway.
    type: boolean

notification_sender_email:
    description:
    - Email address from which the notification will be sent.
    type: str

target_provisioning_state:
    description:
    - The provisioning state of the API Management service, which is targeted by the long
      running operation started on the service.
    type: str

virtual_network_configuration:
    description:
    - Virtual network configuration of the API Management service.
    suboptions:
      subnet_resource_id:
        description:
        - The full resource ID of a subnet in a virtual network to deploy the API Management
          service in.
        type: str
      subnetname:
        description:
        - The name of the subnet.
        type: str
      vnetid:
        description:
        - The virtual network ID. This is typically a GUID. Expect a null GUID by default.
        type: str
    type: dict

Outputs

api_management_service:
  contains:
    apimanagementservice_name:
      contains:
        etag:
          description:
          - ETag of the resource.
          returned: always
          sample: null
          type: str
        id:
          description:
          - Resource ID.
          returned: always
          sample: null
          type: str
        identity:
          contains:
            principal_id:
              description:
              - The principal id of the identity.
              returned: always
              sample: null
              type: unknown-primary[uuid]
            tenant_id:
              description:
              - The client tenant id of the identity.
              returned: always
              sample: null
              type: unknown-primary[uuid]
            type:
              description:
              - The identity type. Currently the only supported type is 'SystemAssigned'.
              returned: always
              sample: null
              type: str
          description:
          - Managed service identity of the Api Management service.
          returned: always
          sample: null
          type: dict
        location:
          description:
          - Resource location.
          returned: always
          sample: null
          type: str
        name:
          description:
          - Resource name.
          returned: always
          sample: null
          type: str
        properties:
          description:
          - Properties of the API Management service.
          returned: always
          sample: null
          type: dict
        sku:
          description:
          - SKU properties of the API Management service.
          returned: always
          sample: null
          type: dict
        tags:
          description:
          - Resource tags.
          returned: always
          sample: null
          type: str
        type:
          description:
          - Resource type for API Management resource is set to Microsoft.ApiManagement.
          returned: always
          sample: null
          type: str
      description: The key is the name of the server that the values relate to.
      type: complex
  description: A list of dict results where the key is the name of the ApiManagementService
    and the values are the facts for that ApiManagementService.
  returned: always
  type: complex

See also