

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 限制和问题排查
<a name="canvas-limits"></a>

以下部分概述了使用 Amazon C SageMaker anvas 时适用的疑难解答帮助和限制。您可以使用本主题来协助排除遇到的任何问题。

## 解决通过 SageMaker AI 控制台授予权限的问题
<a name="canvas-troubleshoot-trusted-services"></a>

如果您在向用户授予 Canvas 基本权限或 Ready-to-use模型权限时遇到问题，则您的用户可能具有与其他 AWS 服务的多个信任关系的 AWS IAM 执行角色。信任关系是附加到您的角色的策略，用于定义哪些主体（用户、角色、账户或服务）可以代入该角色。例如，如果用户的执行角色与 Amazon AI 和 Amazon Forecast 都存在信任关系，则向其授予其他 Canv SageMaker as 权限时可能会遇到问题。

您可以选择以下选项之一来解决这个问题。

### 1. 从角色中删除一项可信服务以外的所有服务。
<a name="canvas-troubleshoot-trusted-services-remove"></a>

此解决方案要求您编辑用户配置文件的 IAM 角色的信任关系，并移除除 A SageMaker I 之外的所有 AWS 服务。

要编辑 IAM 执行角色的信任关系，请执行以下操作：

1. 前往 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在 IAM 控制台的导航窗格中，选择**角色**。该控制台会显示您账户的角色。

1. 选择您要修改的角色的名称，然后在详细信息页面中选择**信任关系**选项卡。

1. 选择**编辑信任策略**。

1. 在**编辑信任策略编辑器**中，粘贴以下内容，然后选择**更新策略**。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "sagemaker.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

您还可以使用 IAM CLI 更新此策略文档。有关更多信息，请参阅《IAM 命令行参考》**中的 [update-trust](https://docs.aws.amazon.com/cli/latest/reference/ds/update-trust.html)。

现在，你可以重试向你的用户授予 Canvas 基本权限或 Ready-to-use模型权限。

### 2. 使用有一个或更少可信服务的不同角色。
<a name="canvas-troubleshoot-trusted-services-alternate"></a>

此解决方案要求您为用户配置文件指定不同的 IAM 角色。如果您已经有可以替代的 IAM 角色，请使用此选项。

要为用户指定不同的执行角色，请执行以下操作：

1. 打开 Amazon A SageMaker I 控制台，网址为[https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)。

1. 在左侧导航窗格中，选择**管理员配置**。

1. 在**管理员配置**下，选择**域**。

1. 从域列表中，选择要查看用户配置文件列表的域。

1. 在**域详细信息**页面上，选择**用户配置文件**选项卡。

1. 选择要编辑其权限的用户。在**用户详细信息**页面上，选择**编辑**。

1. 在**常规设置**页面上，选择**执行角色**下拉列表并选择要使用的角色。

1. 选择**提交**以保存对用户配置文件所做的更改。

现在，您的用户应该使用仅包含一项可信服务 (SageMaker AI) 的执行角色。

你可以重试向你的用户授予 Canvas 基本权限或 Ready-to-use模型权限。

### 3. 手动将 AWS 托管策略附加到执行角色，而不是使用 SageMaker AI 域设置中的切换按钮。
<a name="canvas-troubleshoot-trusted-services-manual"></a>

您可以手动附加授予用户正确权限的 AWS 托管式策略，而不是使用域或用户配置文件设置中的切换开关。

要向用户 Canvas 授予基本权限，请附加该[AmazonSageMakerCanvasFullAccess](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-canvas.html#security-iam-awsmanpol-AmazonSageMakerCanvasFullAccess)策略。要向用户 Ready-to-use模型授予权限，请附加[AmazonSageMakerCanvasAIServices访问](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-canvas.html#security-iam-awsmanpol-AmazonSageMakerCanvasAIServicesAccess)策略。

使用以下步骤将 AWS 托管策略附加到您的角色：

1. 前往 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 选择**角色**。

1. 在搜索框中，按名称搜索用户的 IAM 角色并将其选中。

1. 在用户角色页面的**权限**下，选择**添加权限**。

1. 从下拉菜单中选择**附加策略**。

1. 搜索并选择要附加到用户执行角色的一个或多个策略：

   1. 要授予 Canvas 基本权限，请搜索并选择[AmazonSageMakerCanvasFullAccess](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-canvas.html#security-iam-awsmanpol-AmazonSageMakerCanvasFullAccess)策略。

   1. 要授予 Ready-to-use模特权限，请搜索并选择[AmazonSageMakerCanvasAIServices访问](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol-canvas.html#security-iam-awsmanpol-AmazonSageMakerCanvasAIServicesAccess)策略。

1. 选择**添加权限**，将策略附加到角色。

通过 IAM 控制台将 AWS 托管策略附加到用户的角色后，您的用户现在应该拥有 Canvas 基本权限或 Ready-to-use模型权限。

## 解决因空间故障而无法创建 Canvas 应用程序的问题
<a name="canvas-troubleshoot-spaces"></a>

在创建新的 Canvas 应用程序时，如果您遇到错误说明`Unable to create app <app-arn> because space <space-arn> is not in InService state`，则表示底层 Amazon SageMaker Studio 空间创建失败。Studio *空间*是托管 Canvas 应用程序数据的底层存储空间。有关 Studio 空间的更多一般信息，请参阅 [亚马逊 SageMaker Studio 空间](studio-updated-spaces.md)。有关在 Canvas 中配置空间的更多信息，请参阅 [将 SageMaker Canvas 应用程序数据存储在你自己的 SageMaker AI 空间中](canvas-spaces-setup.md)。

要确定空间创建失败的根本原因，您可以使用 [DescribeSpace](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeSpace.html)API 检查该`FailureReason`字段。有关可能的空间状态及其含义的更多信息，请参阅 [亚马逊 SageMaker AI 域名实体和状态](sm-domain.md)。

要解决此问题，请在 SageMaker AI 控制台中找到您的域，然后删除您收到的错误消息中列出的故障空间。有关如何查找和删除空间的详细步骤，请参阅页面 [停止并删除 Studio 中正在运行的应用程序和空间](studio-updated-running-stop.md) 并按照说明**删除 Studio 空间**。删除空间还会删除与此空间关联的所有应用程序。删除空间后，您可以再次尝试创建 Canvas 应用程序。现在，此空间应该可以成功配置，允许 Canvas 启动。