פתרון בעיות
בדף הזה מוסבר איך לפתור בעיות נפוצות ב-Certificate Authority Service.
בקשת API מחזירה HTTP 403 Forbidden
אם בקשת API מחזירה HTTP 403 Forbidden עם ההודעה Read access to project PROJECT_NAME was denied, צריך להשתמש בפתרון הבא.
פתרון
- בודקים את הרשאות ה-IAM של השולח.
- בודקים את המיקום של הבקשה. באזורים שלא נתמכים, יכול להיות שתתקבל שגיאת דחיית הרשאה. מידע נוסף על מיקומים נתמכים זמין במאמר מיקומים.
מחיקת רשות אישורים מחזירה HTTP 412 Failed Precondition
אם מופיעות שגיאות של תנאי מוקדם שנכשל כשמוחקים רשות אישורים, אפשר להשתמש בפתרון שבקטע הזה.
Cannot perform Certificate Authority deletion, Certificate Authority is in state ENABLED.
פתרון
כדי למחוק רשות אישורים, היא צריכה להיות במצב DISABLED או STAGED. חשוב לוודא מה המצב של רשות האישורים לפני שתקבעו מועד למחיקה שלה. מידע נוסף על מצבי CA זמין במאמר מצבי CA.
הנפקת האישור נכשלה
שירות ה-CA מספק כמה אמצעי בקרה של מדיניות שבהם אפשר להשתמש כדי לנהל את הנפקת האישורים. מידע נוסף על אמצעי הבקרה של המדיניות זמין במאמר סקירה כללית של תבניות אישורים ומדיניות הנפקה.
יכולות להיות כמה סיבות לכך שהנפקת האישור נכשלה. אלה כמה מהסיבות האפשריות:
יש סתירה בין מדיניות הנפקת האישורים של מאגר ה-CA לבין תבנית האישור.
לדוגמה, נניח שמדיניות ההנפקה מגדירה תוסף
fooומקצה לו את הערךbar, ותבנית האישור מגדירה תוסףfooומקצה לו את הערךbat. הקצאת שני ערכים שונים לאותו נכס יוצרת התנגשות.פתרון
בודקים את מדיניות הנפקת האישורים של מאגר ה-CA מול תבנית האישור, ומזהים את הסתירות ופותרים אותן.
מידע נוסף על מדיניות הנפקת אישורים זמין במאמר הוספה של מדיניות הנפקת אישורים למאגר של רשויות אישורים.
הנושא או שמות הנושאים החלופיים (SAN) נכשלים בהערכת הביטוי CEL בתבנית האישור או במדיניות הנפקת האישורים של מאגר רשויות האישורים.
פתרון
בודקים את מדיניות הנפקת האישורים ואת תבנית האישורים של מאגר ה-CA, ומוודאים שהנושא ו-SAN עומדים בתנאים שמוגדרים על ידי ביטויי Common Expression Language (CEL). מידע נוסף על ביטויי CEL זמין במאמר שימוש ב-Common Expression Language.
הוענק תפקיד IAM שגוי לתרחיש שימוש. לדוגמה, הקצאת התפקיד
roles/privateca.certificateRequesterלזהות משוקפת או הקצאת התפקידroles/privateca.workloadCertificateRequesterלמצב ברירת מחדל של זהות.פתרון
מוודאים שהקציתם את התפקיד
roles/privateca.certificateRequesterלמצב זהות ברירת מחדל ואת התפקידroles/privateca.workloadCertificateRequesterלזהות משוקפת. מידע נוסף על שימוש בהעתקת זהויות זמין במאמר העתקת זהויות לעומסי עבודה מאוחדים.ניסיון להשתמש במצב של זהות משוקפת בתרחיש שלא נתמך, למשל ללא זהות עומס עבודה של Hub. תרחיש לא נתמך של שיקוף זהויות מחזיר את הודעת השגיאה הבאה:
Could not use the REFLECTED_SPIFFE subject mode because the caller does not have a SPIFFE identity. Please visit the CA Service documentation to ensure that this is a supported use-case.
פתרון
קובעים באיזה סוג זהות צריך להשתמש: זהות ברירת מחדל או זהות משוקפת. אם אתם צריכים להשתמש בזהות משתקפת, ודאו שאתם משתמשים בה באחד מהתרחישים הנתמכים. מידע נוסף על שיקוף זהויות זמין במאמר שיקוף זהויות לעומסי עבודה מאוחדים.
ההגבלה על גודל המפתח שמוגדרת כברירת מחדל דוחה מפתחות RSA עם גודל מודולוס של פחות מ-2,048 ביט.
השיטות המומלצות בתחום הן להשתמש במפתח RSA של לפחות 2048 ביט. כברירת מחדל, CA Service מונע הנפקת אישורים באמצעות מפתח RSA שגודל המודולוס שלו קטן מ-2048 ביט.
פתרון
אם רוצים להשתמש במפתח RSA עם גודל מודולוס קטן מ-2048 ביט, צריך לאפשר זאת באופן מפורש באמצעות מדיניות הנפקת האישורים. בדוגמה הבאה של קובץ YAML מוצג איך לאפשר מפתחות RSA כאלה:
allowedKeyTypes: - rsa: minModulusSize: 1024