def METHOD_NAME(id: Optional[str] = None,
                     name: Optional[str] = None,
                     opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetCachePolicyResult:
    """
    Use this data source to retrieve information about a CloudFront cache policy.
    ## Example Usage
    ### Basic Usage
    ```python
    import pulumi
    import pulumi_aws as aws
    example = aws.cloudfront.get_cache_policy(name="example-policy")
    ```
    ### AWS-Managed Policies
    AWS managed cache policy names are prefixed with `Managed-`:
    ```python
    import pulumi
    import pulumi_aws as aws
    example = aws.cloudfront.get_cache_policy(name="Managed-CachingOptimized")
    ```
    :param str id: Identifier for the cache policy.
    :param str name: Unique name to identify the cache policy.
    """
    __args__ = dict()
    __args__['id'] = id
    __args__['name'] = name
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('aws:cloudfront/getCachePolicy:getCachePolicy', __args__, opts=opts, typ=GetCachePolicyResult).value
    return AwaitableGetCachePolicyResult(
        comment=pulumi.get(__ret__, 'comment'),
        default_ttl=pulumi.get(__ret__, 'default_ttl'),
        etag=pulumi.get(__ret__, 'etag'),
        id=pulumi.get(__ret__, 'id'),
        max_ttl=pulumi.get(__ret__, 'max_ttl'),
        min_ttl=pulumi.get(__ret__, 'min_ttl'),
        name=pulumi.get(__ret__, 'name'),
        parameters_in_cache_key_and_forwarded_to_origins=pulumi.get(__ret__, 'parameters_in_cache_key_and_forwarded_to_origins'))