CfnAPIKeyPropsMixin

class aws_cdk.mixins_preview.aws_location.mixins.CfnAPIKeyPropsMixin(props, *, strategy=None)

Bases: Mixin

The API key resource in your AWS account, which lets you grant actions for Amazon Location resources to the API key bearer.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html

CloudformationResource:

AWS::Location::APIKey

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview import mixins
from aws_cdk.mixins_preview.aws_location import mixins as location_mixins

cfn_aPIKey_props_mixin = location_mixins.CfnAPIKeyPropsMixin(location_mixins.CfnAPIKeyMixinProps(
    description="description",
    expire_time="expireTime",
    force_delete=False,
    force_update=False,
    key_name="keyName",
    no_expiry=False,
    restrictions=location_mixins.CfnAPIKeyPropsMixin.ApiKeyRestrictionsProperty(
        allow_actions=["allowActions"],
        allow_android_apps=[location_mixins.CfnAPIKeyPropsMixin.AndroidAppProperty(
            certificate_fingerprint="certificateFingerprint",
            package="package"
        )],
        allow_apple_apps=[location_mixins.CfnAPIKeyPropsMixin.AppleAppProperty(
            bundle_id="bundleId"
        )],
        allow_referers=["allowReferers"],
        allow_resources=["allowResources"]
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )]
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::Location::APIKey.

Parameters:
  • props (Union[CfnAPIKeyMixinProps, Dict[str, Any]]) – L1 properties to apply.

  • strategy (Optional[PropertyMergeStrategy]) – (experimental) Strategy for merging nested properties. Default: - PropertyMergeStrategy.MERGE

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['description', 'expireTime', 'forceDelete', 'forceUpdate', 'keyName', 'noExpiry', 'restrictions', 'tags']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

AndroidAppProperty

class CfnAPIKeyPropsMixin.AndroidAppProperty(*, certificate_fingerprint=None, package=None)

Bases: object

Parameters:
  • certificate_fingerprint (Optional[str])

  • package (Optional[str])

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-androidapp.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_location import mixins as location_mixins

android_app_property = location_mixins.CfnAPIKeyPropsMixin.AndroidAppProperty(
    certificate_fingerprint="certificateFingerprint",
    package="package"
)

Attributes

certificate_fingerprint

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-androidapp.html#cfn-location-apikey-androidapp-certificatefingerprint

Type:

see

package

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-androidapp.html#cfn-location-apikey-androidapp-package

Type:

see

ApiKeyRestrictionsProperty

class CfnAPIKeyPropsMixin.ApiKeyRestrictionsProperty(*, allow_actions=None, allow_android_apps=None, allow_apple_apps=None, allow_referers=None, allow_resources=None)

Bases: object

API Restrictions on the allowed actions, resources, and referers for an API key resource.

Parameters:
  • allow_actions (Optional[Sequence[str]]) – A list of allowed actions that an API key resource grants permissions to perform. You must have at least one action for each type of resource. For example, if you have a place resource, you must include at least one place action. The following are valid values for the actions. - Map actions - geo:GetMap* - Allows all actions needed for map rendering. - Enhanced Maps actions - geo-maps:GetTile - Allows getting map tiles for rendering. - geo-maps:GetStaticMap - Allows getting static map images. - Place actions - geo:SearchPlaceIndexForText - Allows finding geo coordinates of a known place. - geo:SearchPlaceIndexForPosition - Allows getting nearest address to geo coordinates. - geo:SearchPlaceIndexForSuggestions - Allows suggestions based on an incomplete or misspelled query. - geo:GetPlace - Allows getting details of a place. - Enhanced Places actions - geo-places:Autcomplete - Allows auto-completion of search text. - geo-places:Geocode - Allows finding geo coordinates of a known place. - geo-places:GetPlace - Allows getting details of a place. - geo-places:ReverseGeocode - Allows getting nearest address to geo coordinates. - geo-places:SearchNearby - Allows category based places search around geo coordinates. - geo-places:SearchText - Allows place or address search based on free-form text. - geo-places:Suggest - Allows suggestions based on an incomplete or misspelled query. - Route actions - geo:CalculateRoute - Allows point to point routing. - geo:CalculateRouteMatrix - Allows matrix routing. - Enhanced Routes actions - geo-routes:CalculateIsolines - Allows isoline calculation. - geo-routes:CalculateRoutes - Allows point to point routing. - geo-routes:CalculateRouteMatrix - Allows matrix routing. - geo-routes:OptimizeWaypoints - Allows computing the best sequence of waypoints. - geo-routes:SnapToRoads - Allows snapping GPS points to a likely route. .. epigraph:: You must use these strings exactly. For example, to provide access to map rendering, the only valid action is geo:GetMap* as an input to the list. ["geo:GetMap*"] is valid but ["geo:GetTile"] is not. Similarly, you cannot use ["geo:SearchPlaceIndexFor*"] - you must list each of the Place actions separately.

  • allow_android_apps (Union[IResolvable, Sequence[Union[IResolvable, AndroidAppProperty, Dict[str, Any]]], None])

  • allow_apple_apps (Union[IResolvable, Sequence[Union[IResolvable, AppleAppProperty, Dict[str, Any]]], None])

  • allow_referers (Optional[Sequence[str]]) – An optional list of allowed HTTP referers for which requests must originate from. Requests using this API key from other domains will not be allowed. Requirements: - Contain only alphanumeric characters (A–Z, a–z, 0–9) or any symbols in this list $\-._+!*``(),;/?:@=&` - May contain a percent (%) if followed by 2 hexadecimal digits (A-F, a-f, 0-9); this is used for URL encoding purposes. - May contain wildcard characters question mark (?) and asterisk (*). Question mark (?) will replace any single character (including hexadecimal digits). Asterisk (*) will replace any multiple characters (including multiple hexadecimal digits). - No spaces allowed. For example, ``https://example.com .

  • allow_resources (Optional[Sequence[str]]) – A list of allowed resource ARNs that a API key bearer can perform actions on. - The ARN must be the correct ARN for a map, place, or route ARN. You may include wildcards in the resource-id to match multiple resources of the same type. - The resources must be in the same partition , region , and account-id as the key that is being created. - Other than wildcards, you must include the full ARN, including the arn , partition , service , region , account-id and resource-id delimited by colons (:). - No spaces allowed, even with wildcards. For example, arn:aws:geo:region: *account-id* :map/ExampleMap* . For more information about ARN format, see Amazon Resource Names (ARNs) .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_location import mixins as location_mixins

api_key_restrictions_property = location_mixins.CfnAPIKeyPropsMixin.ApiKeyRestrictionsProperty(
    allow_actions=["allowActions"],
    allow_android_apps=[location_mixins.CfnAPIKeyPropsMixin.AndroidAppProperty(
        certificate_fingerprint="certificateFingerprint",
        package="package"
    )],
    allow_apple_apps=[location_mixins.CfnAPIKeyPropsMixin.AppleAppProperty(
        bundle_id="bundleId"
    )],
    allow_referers=["allowReferers"],
    allow_resources=["allowResources"]
)

Attributes

allow_actions

A list of allowed actions that an API key resource grants permissions to perform.

You must have at least one action for each type of resource. For example, if you have a place resource, you must include at least one place action.

The following are valid values for the actions.

  • Map actions

  • geo:GetMap* - Allows all actions needed for map rendering.

  • Enhanced Maps actions

  • geo-maps:GetTile - Allows getting map tiles for rendering.

  • geo-maps:GetStaticMap - Allows getting static map images.

  • Place actions

  • geo:SearchPlaceIndexForText - Allows finding geo coordinates of a known place.

  • geo:SearchPlaceIndexForPosition - Allows getting nearest address to geo coordinates.

  • geo:SearchPlaceIndexForSuggestions - Allows suggestions based on an incomplete or misspelled query.

  • geo:GetPlace - Allows getting details of a place.

  • Enhanced Places actions

  • geo-places:Autcomplete - Allows auto-completion of search text.

  • geo-places:Geocode - Allows finding geo coordinates of a known place.

  • geo-places:GetPlace - Allows getting details of a place.

  • geo-places:ReverseGeocode - Allows getting nearest address to geo coordinates.

  • geo-places:SearchNearby - Allows category based places search around geo coordinates.

  • geo-places:SearchText - Allows place or address search based on free-form text.

  • geo-places:Suggest - Allows suggestions based on an incomplete or misspelled query.

  • Route actions

  • geo:CalculateRoute - Allows point to point routing.

  • geo:CalculateRouteMatrix - Allows matrix routing.

  • Enhanced Routes actions

  • geo-routes:CalculateIsolines - Allows isoline calculation.

  • geo-routes:CalculateRoutes - Allows point to point routing.

  • geo-routes:CalculateRouteMatrix - Allows matrix routing.

  • geo-routes:OptimizeWaypoints - Allows computing the best sequence of waypoints.

  • geo-routes:SnapToRoads - Allows snapping GPS points to a likely route.

You must use these strings exactly. For example, to provide access to map rendering, the only valid action is geo:GetMap* as an input to the list. ["geo:GetMap*"] is valid but ["geo:GetTile"] is not. Similarly, you cannot use ["geo:SearchPlaceIndexFor*"] - you must list each of the Place actions separately.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowactions

allow_android_apps

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowandroidapps

Type:

see

allow_apple_apps

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowappleapps

Type:

see

allow_referers

An optional list of allowed HTTP referers for which requests must originate from.

Requests using this API key from other domains will not be allowed.

Requirements:

  • Contain only alphanumeric characters (A–Z, a–z, 0–9) or any symbols in this list ``$-._+!*``(),;/?:@=&`

  • May contain a percent (%) if followed by 2 hexadecimal digits (A-F, a-f, 0-9); this is used for URL encoding purposes.

  • May contain wildcard characters question mark (?) and asterisk (*).

Question mark (?) will replace any single character (including hexadecimal digits).

Asterisk (*) will replace any multiple characters (including multiple hexadecimal digits).

  • No spaces allowed. For example, https://example.com .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowreferers

allow_resources

A list of allowed resource ARNs that a API key bearer can perform actions on.

  • The ARN must be the correct ARN for a map, place, or route ARN. You may include wildcards in the resource-id to match multiple resources of the same type.

  • The resources must be in the same partition , region , and account-id as the key that is being created.

  • Other than wildcards, you must include the full ARN, including the arn , partition , service , region , account-id and resource-id delimited by colons (:).

  • No spaces allowed, even with wildcards. For example, arn:aws:geo:region: *account-id* :map/ExampleMap* .

For more information about ARN format, see Amazon Resource Names (ARNs) .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-apikeyrestrictions.html#cfn-location-apikey-apikeyrestrictions-allowresources

AppleAppProperty

class CfnAPIKeyPropsMixin.AppleAppProperty(*, bundle_id=None)

Bases: object

Parameters:

bundle_id (Optional[str])

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-appleapp.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_location import mixins as location_mixins

apple_app_property = location_mixins.CfnAPIKeyPropsMixin.AppleAppProperty(
    bundle_id="bundleId"
)

Attributes

bundle_id

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-location-apikey-appleapp.html#cfn-location-apikey-appleapp-bundleid

Type:

see