疑難排解API連結原則存放區 - Amazon Verified Permissions

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

疑難排解API連結原則存放區

使用此處的資訊可協助您診斷和修正建立 Amazon 驗證許可API連結政策存放區時的常見問題。

我更新了我的政策,但授權決定沒有改變

根據預設,「已驗證的權限」會設定 Lambda 授權者快取授權決策 120 秒。請在兩分鐘後再試一次,或停用授權者的快取。如需詳細資訊,請參閱 Amazon API Gateway 開發人員指南中的啟用API快取以增強回應速度

我將 Lambda 授權者附加到我的,API但它沒有生成授權請求

若要開始處理請求,您必須部署附加授權者的API階段。如需詳細資訊,請參閱 Amazon API 閘道開發人員指南RESTAPI中的部署

我收到了意想不到的授權決定,想要檢閱授權邏輯

API連結的政策存放區程序會為您的授權者建立 Lambda 函數。驗證權限會自動將授權決策的邏輯構建到授權者函數中。您可以在建立原則存放區之後返回,以檢閱和更新函數中的邏輯。

若要從 AWS CloudFormation 主控台尋找 Lambda 函數,請選擇新政策存放區 [概觀] 頁面上的 [檢查部署] 按鈕。

您也可以在 AWS Lambda 控制台中找到您的功能。導覽至原則存放區中 AWS 區域 的主控台,然後搜尋前置字元為的函數名稱AVPAuthorizerLambda。如果您已建立多個API連結的原則存放區,請使用函數的上次修改時間,將它們與原則存放區建立關聯。

我想要從我的 Lambda 授權者尋找記錄

Lambda 函數會收集指標,並在 Amazon CloudWatch 中記錄其叫用結果。若要檢閱記錄,請在 Lambda 主控台中找到您的函數,然後選擇控索引標籤。選取 [檢視 CloudWatch 記錄檔] 並檢閱記錄群組中的項目。

如需 Lambda 函數日誌的詳細資訊,請參閱AWS Lambda 開發人員指南 AWS Lambda中的搭配使用 Amazon CloudWatch 日誌

我的 Lambda 授權者不存在

完成API連結政策存放區的設定後,您必須將 Lambda 授權器連接至您的. API 如果在 API Gateway 主控台中找不到授權者,則原則存放區的其他資源可能已失敗或尚未部署。API-連結的原則存放區將這些資源部署在 AWS CloudFormation 堆疊中。

「已驗證的權限」會在建立程序結束時顯示含有「檢查」部署標籤的連結。如果您已離開此畫面,請前往 CloudFormation 主控台並搜尋最近的堆疊,尋找前置詞為的名稱。AVPAuthorizer-<policy store ID> CloudFormation 在堆疊部署的輸出中提供寶貴的疑難排解資訊。

如需疑難排解 CloudFormation 堆疊的說明,請參閱AWS CloudFormation 使用指南 CloudFormation中的疑難排解

我API是私人的VPC,無法調用授權者

已驗證的權限不支援透過VPC端點存取 Lambda 授權者。您必須開啟做為授權者API的 Lambda 函數之間的網路路徑。

我想在我的授權模型中處理其他用戶屬性

API-link 策略存儲過程從用戶令牌中的組聲明中導出「已驗證的權限」策略。若要更新授權模型以考量其他使用者屬性,請將這些屬性整合到您的策略中。

您可以將來自 Amazon Cognito 使用者集區的 ID 和存取權杖中的許多宣告對應至已驗證的許可政策陳述式。例如,大多數用戶在其 ID 令牌中都有email聲明。如需將宣告從身分來源新增至政策的詳細資訊,請參閱將身份提供者令牌映射到模式

我想要新增動作、動作前後關聯屬性或資源屬性

API連結的政策存放區及其所建立的 Lambda 授權者都是資源。 point-in-time它們反映了您API在創建時的狀態。策略存放區結構描述不會將任何前後關聯屬性指派給動作,也不會將任何屬性或父項指派給預設Application資源。

當您將動作 (路徑和方法) 新增至您的時候API,您必須更新原則存放區以瞭解新動作。您還必須更新 Lambda 授權者,以處理新動作的授權請求。您可以從新的原則存放區重新開始,也可以更新現有的原則存放區。

若要更新現有的原則存放區,請找出您的功能。檢查自動產生函數中的邏輯,並加以更新,以處理新動作、屬性或前後關聯。然後編輯您的結構描述以包含新動作和屬性。