השבתת אימות בסיסי ב-Edge

Edge for Private Cloud גרסה 4.18.01

לאחר שמפעילים את SAML ב-Edge, אפשר להשבית את Basic Auth. עם זאת, לפני השבתת האימות הבסיסי:

  • חשוב לוודא שהוספת את כל משתמשי Edge, כולל מנהלי מערכת, ל-SAML IdP.
  • חשוב לוודא שבדקת באופן יסודי את אימות SAML בממשק המשתמש של Edge ובניהול Edge. API.
  • אם אתם משתמשים גם ב-API BaaS, צריך להגדיר ולבדוק את SAML ב-API BaaS. למידע נוסף, ראו הפעלת SAML עבור API BaaS.
  • אם משתמשים בפורטל השירותים למפתחים, צריך להגדיר ולבדוק את SAML בפורטל כדי ולוודא שהפורטל יכול להתחבר ל-Edge. מידע נוסף זמין בקטע הגדרת פורטל השירותים למפתחים שאפשר להשתמש בו ב-SAML לתקשורת עם Edge.

הצגת פרופיל האבטחה הנוכחי

אפשר לעיין בפרופיל האבטחה של Edge כדי לבדוק את התצורה הנוכחית כדי לברר אם התכונות 'אימות בסיסי' ו-SAML מופעלות כרגע. משתמשים בקריאה הבאה ל-Edge management API ב-Edge שרת הניהול כדי להציג את פרופיל האבטחה הנוכחי שבו משתמש Edge:

> curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord

אם עדיין לא הגדרת SAML, התגובה מוצגת כפי שמוצג למטה ומשמעותה 'אימות בסיסי' היא מופעל:

<SecurityProfile enabled="true" name="securityprofile">
    <UserAccessControl enabled="true">
    </UserAccessControl>
</SecurityProfile>

אם כבר הפעלתם את SAML, התג &lt;ssoserver&gt; יופיע בפלט:

<SecurityProfile enabled="true" name="securityprofile">
    <UserAccessControl enabled="true">
        <SSOServer>
            <BasicAuthEnabled>true</BasicAuthEnabled>
            <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
            <ServerUrl>http://35.197.37.220:9099</ServerUrl>
        </SSOServer>
    </UserAccessControl>
</SecurityProfile>

שימו לב שבגרסה שמופעלת בה SAML &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt; פירושו שהאימות הבסיסי הוא עדיין מופעלת.

השבתת האימות הבסיסי

כדי להשבית את Basic, משתמשים בקריאה הבאה ל-Edge management API בשרת Edge Management. אימות שימו לב שאתם מעבירים את אובייקט ה-XML שמוחזר בקטע הקודם בתור המטען הייעודי (payload). היחיד הוא ההבדל &lt;BasicAuthEnabled&gt;false&lt;/BasicAuthEnabled&gt;:

> curl -H "Content-Type: application/xml"
http://localhost:8080/v1/securityprofile  -u sysAdminEmail:pWord -d
 '<SecurityProfile enabled="true" name="securityprofile">
  <UserAccessControl enabled="true">
    <SSOServer>
      <BasicAuthEnabled>false</BasicAuthEnabled>
      <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
      <ServerUrl>http://35.197.37.220:9099</ServerUrl>
  </SSOServer>
 </UserAccessControl>
</SecurityProfile>'

אחרי שמשביתים את Basic Auth, כל קריאה ל-Edge management API שעוברת את פרטי הכניסה של Basic Auth מחזירה את השגיאה הבאה:

<Error>
    <Code>security.SecurityProfileBasicAuthDisabled</Code>
    <Message>Basic Authentication scheme not allowed</Message>
    <Contexts/>
</Error>

הפעלה מחדש של האימות הבסיסי

אם מסיבה כלשהי אתם צריכים להפעיל מחדש את האימות הבסיסי, עליכם לבצע את השלבים הבאים:

זהירות: כחלק מהפעלה מחדש של אימות בסיסי, צריך להשבית באופן זמני כל תהליכי האימות ב-Edge, כולל SAML.

  1. מתחברים לכל צומת של Edge zoKeeper.
  2. מריצים את סקריפט ה-bash הבא כדי להשבית את כל האבטחה:
    זהירות: השלב הזה משבית את כל האימותים ב-Edge, כולל SAML.

    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -serverlocalhost:2181 <<EOF
    הגדרה /system/securityprofile &lt;SecurityProfile&gt;&lt;/SecurityProfile&gt;
    סגירה
    סוף היום

    הפלט יופיע בפורמט הבא:
    התחברות ל-localhost:2181
    ברוך בואך אלzoKeeper!
    התמיכה ב-JLine מופעלת
    צפייה::

    מצב WatchedEvent:סנכרון מחובר type:ללא נתיב:null
    [zk: Localhost:2181(CONNECTED) 0] הגדרה של /system/securityprofile <SecurityProfile></SecurityProfile>
    cZxid = 0x89
    ...
    [zk: Localhost:2181(CONNECTED) 1] יציאה
    בתהליך יציאה...
  3. הפעלה מחדש של אימות בסיסי ואימות SAML:

    > curl -H "סוג תוכן: application/xml&quot;
    http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d
    '<SecurityProfile enabled="true" name=&quot;securityprofile&quot;&gt;

    <UserAccessControl enabled="true">
    &lt;SSOServer&gt;
    &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt;
    &lt;PublicKeyEndPoint&gt;/token_key&lt;/PublicKeyEndPoint&gt;
    &lt;ServerUrl&gt;http://35.197.37.220:9099&lt;/ServerUrl&gt;
    &lt;/SSOServer&gt;
    </UserAccessControl>
    </SecurityProfile>'

    שלך יכול עכשיו להשתמש שוב באימות בסיסי.