### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

DynamoDB does not correctly namespace resources based on region and account ID. 

For instance, using the same table name across accounts and regions throws an error.

### Expected Behavior

It must be possible to create resources with same name on different regions and/or different accounts.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)

```
  $ AWS_ACCESS_KEY_ID=445500880268 AWS_DEFAULT_REGION=eu-central-1 \
    awslocal dynamodb create-table --table-name CertificateTargets-local1 \
        --key-schema AttributeName=target_uuid,KeyType=HASH \
        --attribute-definitions AttributeName=target_uuid,AttributeType=S \
        --provisioned-throughput ReadCapacityUnits=1000,WriteCapacityUnits=1000

  $ AWS_ACCESS_KEY_ID=445500880268 AWS_DEFAULT_REGION=us-east-1 \
    awslocal dynamodb create-table --table-name CertificateTargets-local1 \
        --key-schema AttributeName=target_uuid,KeyType=HASH \
        --attribute-definitions AttributeName=target_uuid,AttributeType=S \
        --provisioned-throughput ReadCapacityUnits=1000,WriteCapacityUnits=1000

    # ResourceInUseException!

  $ AWS_ACCESS_KEY_ID=000000000000 \
    awslocal dynamodb create-table --table-name CertificateTargets-local1 \
        --key-schema AttributeName=target_uuid,KeyType=HASH \
        --attribute-definitions AttributeName=target_uuid,AttributeType=S \
        --provisioned-throughput ReadCapacityUnits=1000,WriteCapacityUnits=1000

    # ResourceInUseException!
```

### Environment

```markdown
OS: Ubuntu 22.04
LocalStack: latest
```


### Anything else?

_No response_
account_id = account_id or get_aws_account_id()
    region_name = region_name or get_region()
    result = f"arn:aws:lambda:{region_name}:{account_id}:{type}:{entity_name}"
    if version:
        result = f"{result}:{version}"
    return result
def lambda_function_name(name_or_arn):
    if ":" in name_or_arn:
        arn = parse_arn(name_or_arn)
        if arn["service"] != "lambda":
            raise ValueError("arn is not a lambda arn %s" % name_or_arn)
        return parse_arn(name_or_arn)["resource"].split(":")[1]
    else:
        return name_or_arn
def state_machine_arn(name, account_id=None, region_name=None):
    pattern = "arn:aws:states:%s:%s:stateMachine:%s"
    return _resource_arn(name, pattern, account_id=account_id, region_name=region_name)
def stepfunctions_activity_arn(name, account_id=None, region_name=None):
    pattern = "arn:aws:states:%s:%s:activity:%s"
    return _resource_arn(name, pattern, account_id=account_id, region_name=region_name)
def fix_arn(arn):
    """Function that attempts to "canonicalize" the given ARN. This includes converting
    resource names to ARNs, replacing incorrect regions, account IDs, etc."""
    if arn.startswith("arn:aws:lambda"):
        parts = arn.split(":")
        region = parts[3] if parts[3] in get_valid_regions() else get_region()
        return lambda_function_arn(lambda_function_name(arn), region_name=region)
    LOG.warning("Unable to fix/canonicalize ARN: %s", arn)
    return arn
def cognito_user_pool_arn(user_pool_id, account_id=None, region_name=None):