本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
對連線進行疑難排解
下列資訊可協助您疑難排解 AWS CodeBuild、 AWS CodeDeploy和中資源連線的常見問題 AWS CodePipeline。
主題
- 我無法建立連線
- 嘗試建立或完成連線時收到許可錯誤
- 嘗試使用連線時收到許可錯誤
- 連線並非處於可用狀態或已脫離待定狀態
- 新增連線 GitClone 權限
- 主機並非處於可用狀態
- 針對發生連線錯誤的主機進行疑難排解
- 我無法為主機建立連線
- 針對主機的 VPC 組態進行疑難排解
- 疑難排解 GitHub 企業伺服器連線的 Webhook VPC 人雲端端點 (PrivateLink)
- 針對 2020 年 11 月 24 日之前建立的主機進行疑難排解
- 無法建立儲 GitHub 存庫的連線
- 編輯 GitHub 企業伺服器連線應用程式權限
- 連線時發生連線錯誤 GitHub:「發生問題,請確定您的瀏覽器已啟用 Cookie」或「組織擁有者必須安裝 GitHub 應用程式」
- 資源中的連線服務前置詞可能需要更新 IAM 政策
- 由於使用控制台創建的資源中的服務前綴導致權限錯誤
- 我想提高連線的限額
我無法建立連線
您可能沒有建立連線的許可。如需詳細資訊,請參閱 權限和範例 AWS CodeConnections。
嘗試建立或完成連線時收到許可錯誤
當您嘗試在 CodePipeline 主控台中建立或檢視連線時,可能會傳回下列錯誤訊息。
使用者:
使用者名稱
未獲授權在資源:連線 ARN
上執行許可
如果顯示這則訊息,請確定您有足夠的許可。
在 AWS Command Line Interface (AWS CLI) 或中建立和檢視連線的權限只 AWS Management Console 是您在主控台上建立和完成連線所需權限的一部分。單純檢視、編輯或建立連線,然後完成待定連線所需的許可,範圍應該限制為只需要執行特定任務的使用者。如需詳細資訊,請參閱 權限和範例 AWS CodeConnections。
嘗試使用連線時收到許可錯誤
如果您嘗試使用 CodePipeline 主控台中的連線,即使您具有列出、取得和建立權限的權限,也可能會傳回下列其中一個或兩個錯誤訊息。
無法驗證您的帳戶。
用戶:用戶
名
未被授權執行:代碼之星連接:在資源UseConnection 上:連接 ARN
如果出現此訊息,請確定您有足夠的許可。
請確定您擁有使用連線的許可,包括列出位於供應商位置的可用儲存庫。如需詳細資訊,請參閱 權限和範例 AWS CodeConnections。
連線並非處於可用狀態或已脫離待定狀態
如果主控台顯示連線並非處於可用狀態的訊息,請選擇 Complete connection (完成連線)。
如果您選擇完成連線,且出現連線不處於待定狀態的訊息,您可以取消請求,因為連線已處於可用狀態。
新增連線 GitClone 權限
當您在來源動作和動作中使用 AWS CodeStar 連線時,有兩種方式可將輸入加工品傳遞至組建: CodeBuild
-
預設值:來源動作會產生一個 zip 檔案,其中包含可 CodeBuild下載的程式碼。
-
Git 複製:來源程式碼可以直接下載到建置環境。
Git 複製模式可讓您將原始程式碼當成工作中 Git 儲存庫來互動。若要使用此模式,您必須授與 CodeBuild 環境使用連線的權限。
若要將權限新增至 CodeBuild 服務角色原則,請建立附加至 CodeBuild 服務角色的客戶管理政策。下列步驟建立政策,其中,action
欄位中指定 UseConnection
許可,而 Resource
欄位中指定連線的 Amazon Resource Name (ARN)。
使用主控台新增 UseConnection 權限
-
若要尋找管道的連線 ARN,請開啟管道,然後選擇來源動作上的 (i) 圖示。[組態] 窗格隨即開啟,連線 ARN 會出現在旁ConnectionArn邊。您可以將連線 ARN 新增至您的 CodeBuild 服務角色原則。
-
若要尋找您的 CodeBuild 服務角色,請開啟管線中使用的建置專案,然後瀏覽至 [建置詳細資料] 索引標籤。
-
在「Environment (環境)」區段中,選擇 Service role (服務角色) 連結。這會開啟 AWS Identity and Access Management (IAM) 主控台,您可以在其中新增授與連線存取權的新政策。
-
在 IAM 主控台,選擇 Attach policies (連接政策),然後選擇 Create policy (建立政策)。
使用下列政策範本範例。在
Resource
欄位中新增連線 ARN,如下列範例所示。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codestar-connections:UseConnection", "Resource": "
insert connection ARN here
" } ] }在 JSON 索引標籤上,貼上您的政策。
-
選擇檢閱政策。輸入政策的名稱 (例如
connection-permissions
),然後選擇 Create policy (建立政策)。 -
返回服務角色的 Attach Permissions (連接許可) 頁面,重新整理政策清單,然後選取您剛建立的政策。選擇連接政策。
主機並非處於可用狀態
如果主控台顯示訊息,指出主機並非處於 Available
狀態,請選擇 Set up host (設定主機)。
建立主機的第一個步驟會導致建立的主機現在處於 Pending
狀態。若要讓主機變為 Available
狀態,您必須選擇在主控台中設定主機。如需詳細資訊,請參閱 設定待定主機。
注意
您無法使用 AWS CLI 來設定Pending
主機。
針對發生連線錯誤的主機進行疑難排解
如果基礎 GitHub 應用程式遭到刪除或修改,則連線和主機可能會進入錯誤狀態。處於錯誤狀態的主機和連線無法復原,且必須重新建立主機。
-
更改應用程式 pem 金鑰、更改應用程式名稱 (初始建立後) 等動作,會導致主機和所有相關聯的連線進入錯誤狀態。
如果主控台或 CLI 傳回處於 Error
狀態的主機或與主機相關的連線,您可能需要執行下列步驟:
-
刪除並重新建立主機資源,然後重新安裝主機註冊應用程式。如需詳細資訊,請參閱 建立主機。
我無法為主機建立連線
若要建立連線或主機,必須符合以下條件。
-
您的主機必須處於 AVAILABLE (可用) 狀態。如需詳細資訊,請參閱
-
必須在與主機相同的區域建立連線。
針對主機的 VPC 組態進行疑難排解
建立主機資源時,必須提供安裝 GitHub Enterprise Server 執行個體之基礎結構的網路連線或 VPC 資訊。若要對主機的 VPC 或子網路組態進行疑難排解,請使用此處顯示的範例 VPC 資訊做為參考。
注意
使用本節進行與 Amazon VPC 中 GitHub 企業伺服器主機組態相關的疑難排解。如需與設定為使用適用於 VPC (PrivateLink) 的 webhook 端點之連線相關的疑難排解,請參閱。疑難排解 GitHub 企業伺服器連線的 Webhook VPC 人雲端端點 (PrivateLink)
在此範例中,您可以使用下列程序來設定要安裝 GitHub 企業伺服器執行個體的 VPC 和伺服器:
-
建立 VPC。如需詳細資訊,請參閱 https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC。
-
在 VPC 中建立子網路。如需詳細資訊,請參閱 https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet。
-
將執行個體啟動至 VPC 中。如需詳細資訊,請參閱 https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#VPC_Launch_Instance。
注意
每個 VPC 一次只能與一台主機 (GitHub 企業伺服器執行個體) 產生關聯。
下圖顯示使用 GitHub 企業 AMI 啟動的 EC2 執行個體。
當您將 VPC 用於 GitHub 企業伺服器連線時,必須在設定主機時為基礎結構提供下列資訊:
-
VPC ID:安裝 GitHub企業伺服器執行個體的伺服器的 VPC,或可透過 VPN 或直 Connect 存取已安裝 GitHub企業伺服器執行個體的 VPC。
-
子網路 ID 或 ID:安裝 GitHub 企業伺服器執行個體的伺服器子網路,或可透過 VPN 或直 Connect 存取已安裝 GitHub 企業伺服器執行個體的子網路。
-
安全性群組或群組:安裝 GitHub Enterprise Server 執行個體之伺服器的安全性群組,或可透過 VPN 或「直 Connect」存取已安裝之 GitHub 企業伺服器執行個體的安全性群組。
-
端點:準備好您的伺服器端點,繼續執行下一個步驟。
如需使用 VPC 和子網路的詳細資訊,請參閱 Amazon VPC 使用者指南中的 IPv4 的 VPC 和子網路規模調整。
我無法讓主機進入待定狀態
如果您的主機進入了 VPC_CONFIG_FAILED_INITIALIZATION 狀態,可能是因為您為主機選取的 VPC、子網路或安全群組出現問題。
-
VPC、子網路和安全群組都必須屬於建立主機的帳戶。
-
子網路和安全群組必須屬於選取的 VPC。
-
提供的每個子網路都必須位於不同的可用區域中。
-
建立主機的使用者必須具有下列 IAM 權限:
ec2:CreateNetworkInterface ec2:CreateTags ec2:DescribeDhcpOptionsec2:DescribeNetworkInterfaces ec2:DescribeSubnets ec2:DeleteNetworkInterface ec2:DescribeVpcs ec2:CreateVpcEndpoint ec2:DeleteVpcEndpoints ec2:DescribeVpcEndpoints
我無法讓主機進入可用狀態
如果您無法完成主機的 CodeConnections 應用程式設定,可能是因為您的 VPC 組態或 GitHub 企業伺服器執行個體發生問題。
-
如果您未使用公用憑證授權單位,則需要向您的 GitHub 企業執行個體使用的主機提供 TLS 憑證。TLS 憑證值應該是憑證的公有金鑰。
-
您必須是 GitHub 企業伺服器執行個體的系統管理員,才能建立 GitHub 應用程式。
我的連線/主機本來正常運作,現在卻停止運作
如果連線/主機之前正在運作且目前無法運作,則可能是由於 VPC 中的組態變更或 GitHub 應用程式已修改。請檢查以下內容:
-
連接至您為連線建立之主機資源的安全性群組現在已變更,或無法再存取 GitHub 企業伺服器。 CodeConnections 需要與 GitHub 企業伺服器執行個體具有連線能力的安全群組。
-
DNS 伺服器 IP 最近有所變更。檢查連接至您為連線所建立主機資源中指定的 VPC 的 DHCP 選項,即可確認是否有變更。請注意,如果您最近從 AmazonProvided DNS 移至自訂 DNS 伺服器或開始使用新的自訂 DNS 伺服器,主機/連線將停止運作。若要解決這個問題,請刪除您現有的主機並重新建立,這麼做會將最新的 DNS 設定存放在我的資料庫中。
-
網路 ACL 設定已變更,不再允許 HTTP 連線至您 GitHub 企業伺服器基礎結構所在的子網路。
-
GitHub 企業伺服器上 CodeConnections 應用程式的任何設定都已變更。修改任何設定 (例如 URL 或應用程式密碼) 都可能會中斷已安裝的 GitHub Enterprise Server 執行個體和 CodeConnections.
我無法刪除網路介面
如果您無法偵測到您的網路介面,請檢查下列項目:
-
建立的網路介面只 CodeConnections 能透過刪除主機來刪除。使用者無法手動刪除這些網路介面。
-
您必須具備下列許可:
ec2:DescribeNetworkInterfaces ec2:DeleteNetworkInterface
疑難排解 GitHub 企業伺服器連線的 Webhook VPC 人雲端端點 (PrivateLink)
使用 VPC 組態建立主機時,系統會為您建立 Webhook VPC 端點。
注意
您可以使用本節進行與設定為使用適用於 VPC 的 webhook 端點的連線相關的疑難排解 () PrivateLink。如需與 Amazon VPC 中 GitHub 企業伺服器主機組態相關的疑難排解,請參閱針對主機的 VPC 組態進行疑難排解。
當您建立與已安裝的提供者類型的連線時,並指定已在 VPC 中設定伺服器,然後 AWS CodeConnections 建立主機,並為您建立 Webhook 的 VPC 端點 (PrivateLink)。這使主持人可以通過 Webhook 通過 Amazon 網絡將事件數據發送到您的集成 AWS 服務。如需詳細資訊,請參閱 AWS CodeConnections 和介面VPC端點 (AWS PrivateLink)。
我無法刪除 Webhook VPC 端點
AWS CodeConnections 管理您主機的 Webhook VPC 端點的生命週期。若要刪除端點,您必須刪除對應的主機資源。
-
建立的 Webhook VPC 端點 (PrivateLink) 只 CodeConnections 能透過刪除主機來刪除。這些端點無法手動刪除。
-
您必須具備下列許可:
ec2:DescribeNetworkInterfaces ec2:DeleteNetworkInterface
針對 2020 年 11 月 24 日之前建立的主機進行疑難排解
自 2020 年 11 月 24 日起,當您 AWS CodeConnections 設定主機時,系統會為您設定額外的 VPC 端點 (PrivateLink) 支援。對於在此更新之前建立的主機,請使用本節疑難排解內容。
如需詳細資訊,請參閱 AWS CodeConnections 和介面VPC端點 (AWS PrivateLink)。
我有一個在 2020 年 11 月 24 日之前創建的主機,我想將 VPC 端點(PrivateLink)用於網絡掛鉤
當您為 GitHub 企業伺服器設定主機時,會為您建立 webhook 端點。連線現在會使用 VPC PrivateLink 網路掛接端點。如果您在 2020 年 11 月 24 日之前建立了主機,並且想要使用 VPC PrivateLink Webhook 端點,則必須先刪除主機,然後再建立新主機。
我無法讓主機進入可用狀態 (VPC 錯誤)
如果您的主機是在 2020 年 11 月 24 日之前建立的,且您無法為主機完成 CodeConnections 應用程式設定,可能是因為您的 VPC 組態或 GitHub 企業伺服器執行個體發生問題。
您的 VPC 將需要 NAT 閘道(或輸出網際網路存取),以便您的 GitHub企業伺服器執行個體可以傳送 Webhook 的輸出 GitHub 網路流量。
無法建立儲 GitHub 存庫的連線
問題:
由於 GitHub 存放庫的連線會使用 AWS Connector GitHub,因此您需要組織擁有者權限或存放庫的管理員權限,才能建立連線。
可能的修正:如需 GitHub 儲存庫權限層級的相關資訊,請參閱 https://docs.github.com/en/ free-pro-team @latest /github/-/setting-up-and-managing
編輯 GitHub 企業伺服器連線應用程式權限
如果您在 2020 年 12 月 23 日或之前安裝適用於 GitHub 企業伺服器的應用程式,則可能需要將應用程式授予組織成員的唯讀存取權。如果您是 GitHub 應用程式擁有者,請依照下列步驟編輯建立主機時所安裝之應用程式的權限。
注意
您必須在 GitHub 企業伺服器執行個體上完成這些步驟,而且您必須是 GitHub 應用程式擁有者。
-
在 GitHub 企業伺服器中,從設定檔相片的下拉式選項中,選擇「設定」。
-
選擇開發人員設置,然後選擇GitHub應用程序。
-
在應用程式清單中,為連線選擇應用程式名稱,然後在設定畫面中選擇 Permissions and events (許可與事件)。
-
在 Organization permissions (組織許可) 下,對於 Members (成員),從 Access (存取權) 下拉式清單中選擇 Read-only (唯讀)。
-
在 Add a note to users (為使用者新增附註) 底下,新增更新原因說明。選擇儲存變更。
連線時發生連線錯誤 GitHub:「發生問題,請確定您的瀏覽器已啟用 Cookie」或「組織擁有者必須安裝 GitHub 應用程式」
問題:
若要建立 GitHub 存放庫的連線,您必須是 GitHub 組織擁有者。對於不在組織下的儲存庫,您必須是儲存庫擁有者。由組織擁有者以外的其他人員建立連線時,會針對組織擁有者建立請求,並顯示下列其中一個錯誤:
發生問題,請確保您的瀏覽器已啟用 cookie
或
組織擁有者必須安裝 GitHub 應用程式
可能的修正:對於 GitHub組織中的儲存庫,組織擁有者必須建立與 GitHub 存放庫的連線。對於不在組織下的儲存庫,您必須是儲存庫擁有者。
資源中的連線服務前置詞可能需要更新 IAM 政策
2024 年 3 月 29 日,服務已從「 AWS CodeStar 連線」重新命名為。 AWS CodeConnections從 2024 年 7 月 1 日開始,主控台將在資源 ARN codeconnections
中建立連線。具有兩個服務前置詞的資源將繼續顯示在控制台中。使用控制台創建的資源的服務前綴將是codeconnections
。新的軟體開發套件 /CLI 資源是使用codeconnections
在資源 ARN 中建立的。創建的資源將自動具有新的服務前綴。
以下是在中建立的資源 AWS CodeConnections:
-
連線
-
主機
問題:
在 ARN codestar-connections
中建立的資源不會自動重新命名為資源 ARN 中的新服務前置詞。創建一個新的資源將創建一個具有連接服務前綴的資源。但是,具有codestar-connections
服務前綴的 IAM 政策不適用於具有新服務前綴的資源。
可能的修正:若要避免資源存取或權限問題,請完成下列動作:
-
更新新服務前置詞的 IAM 政策。否則,重新命名或建立的資源將無法使用 IAM 政策。
-
透過使用主控台或 CLI I/CDK/CFN 建立新服務前置詞的資源來更新資源。
視需要更新策略中的動作、資源和條件。在下列範例中,已針對兩個服務前置字元更新Resource
欄位。
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "codeconnections:UseConnection" ], "Resource": [ "arn:aws:codestar-connections:*:*:connection/*", "arn:aws:codeconnections:*:*:connection/*" ] } }
由於使用控制台創建的資源中的服務前綴導致權限錯誤
目前,使用主控台建立的連線資源只會有codestar-connections
服務前置詞。對於使用主控台建立的資源,政策陳述式動作必須包含作codestar-connections
為服務前置詞。
注意
目前,如果您使用主控台建立連線,這只會在資源 ARN codestar-connections
中建立資源。若要建立在 ARN 中具有codeconnections
服務前置詞的資源,請使用 CLI、SDK 或 CFN。具有兩個服務前綴的資源仍將顯示在控制台中。自 2024 年 7 月 1 日起,可以建立主控台資源。
問題:
使用主控台建立連線資源時,必須在策略中使用codestar-connections
服務前置詞。使用原則中含有codeconnections
服務前置詞的原則時,使用主控台建立的連線資源會收到下列錯誤訊息:
User:
user_ARN
is not authorized to perform: codestar-connections:action
on resource:resource_ARN
because no identity-based policy allows the codestar-connections:action
action
可能的修正:對於使用主控台建立的資源,政策陳述式動作必須包含codestar-connections
做為服務前置詞,如中的政策範例所示範例:使用主控台建立 AWS CodeConnections 的政策。
我想提高連線的限額
您可以在中要求提高某些限制的限制 CodeConnections。如需更多詳細資訊,請參閱 連線的配額。