AWS Cloudformation dynamodb 表名末尾有字符

AWS Cloudformation dynamodb tablename has characters at the end

我正在通过无服务器 SAM 创建一个 Dynamodb table,这就是我所拥有的

  MyTable:
    Type: AWS::DynamoDB::Table
    Properties: 
      AttributeDefinitions: 
        - AttributeName: Id
          AttributeType: S        
      KeySchema: 
        - AttributeName: Id
          KeyType: HASH   
      ProvisionedThroughput: 
        ReadCapacityUnits: 5
        WriteCapacityUnits: 5             
      StreamSpecification:
        StreamViewType: KEYS_ONLY

问题是当创建 table 时它的末尾有一组随机字符,因此例如我的 table 在 DynamoDB 中创建后将如下所示

stackname-Stores-10H9IHDFESTE0

为什么最后会添加这些随机字符,我该如何去除它们?另外,我的代码需要从这个 table 中读取,如果这些字符被添加到末尾,每次我部署一些东西时,我该如何解决这个问题?部署的 lambda 函数也是如此,它在末尾添加了这个奇怪的字符,例如部署后我的 Lambda 函数看起来像这样

stakcname-StoresFunction-1D1J4W48RVDUR

我认为您在 SAM 中遗漏了 table 的名称和 Lambda 函数的名称 - 在相应资源的 Properties 键下:

TableName: String

FunctionName : String