غیرفعال کردن Basic Auth در Edge

Edge for Private Cloud نسخه 4.18.01

بعد از اینکه SAML را در Edge فعال کردید، می توانید Basic Auth را غیرفعال کنید. با این حال، قبل از غیرفعال کردن Basic Auth :

مشاهده نمایه امنیتی فعلی

می‌توانید نمایه امنیتی Edge را مشاهده کنید تا پیکربندی فعلی را تعیین کنید تا مشخص کنید آیا Basic Auth و SAML در حال حاضر فعال هستند یا خیر. از فراخوانی API مدیریت Edge زیر در سرور مدیریت 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 را فعال کرده اید، تگ <ssoserver> را در خروجی مشاهده می کنید:

<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 فعال است ، <BasicAuthEnabled>true</BasicAuthEnabled> را نیز نشان می‌دهد به این معنی که تأیید اولیه هنوز فعال است.

غیرفعال کردن اعتبار پایه

از فراخوانی API مدیریت Edge زیر در سرور مدیریت Edge برای غیرفعال کردن Basic Auth استفاده کنید. توجه داشته باشید که شی XML را که در بخش قبل بازگردانده است به عنوان بار ارسال می کنید. تنها تفاوت این است که <BasicAuthEnabled>false</BasicAuthEnabled> را تنظیم می کنید:

> 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، هر فراخوانی API مدیریت Edge که اعتبارنامه Basic Auth را پاس می‌کند، خطای زیر را برمی‌گرداند:

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

مجدداً Basic Auth را فعال کنید

اگر به هر دلیلی مجبور به فعال کردن مجدد Basic Auth هستید، باید مراحل زیر را انجام دهید:

احتیاط : به عنوان بخشی از فعال کردن مجدد Basic Auth، باید به طور موقت همه احراز هویت را در Edge غیرفعال کنید، از جمله SAML.

  1. به هر گره Edge ZooKeeper وارد شوید.
  2. اسکریپت bash زیر را برای خاموش کردن تمام امنیت اجرا کنید:
    احتیاط : این مرحله همه احراز هویت در Edge از جمله SAML را غیرفعال می‌کند.

    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF
    تنظیم /system/securityprofile <SecurityProfile></SecurityProfile>
    ترک کردن
    EOF

    خروجی را به شکل زیر مشاهده خواهید کرد:
    اتصال به لوکال هاست: 2181
    به ZooKeeper خوش آمدید!
    پشتیبانی JLine فعال است
    ناظر::

    وضعیت WatchedEvent: SyncConnected type: None path:null
    [zk: localhost:2181(متصل شده) 0] مجموعه /system/securityprofile <SecurityProfile></SecurityProfile>
    cZxid = 0x89
    ...
    [zk: localhost:2181(CONNECTED) 1] خارج شد
    در حال ترک…
  3. احراز هویت پایه و SAML را دوباره فعال کنید:

    > curl -H "Content-Type: application/xml"
    http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d
    '<SecurityProfile enabled="true" name="securityprofile">

    <UserAccessControl enabled="true">
    <SSOSserver>
    <BasicAuthEnabled>درست</BasicAuthEnabled>
    <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
    <ServerUrl>http://35.197.37.220:9099</ServerUrl>
    </SSOSserver>
    </UserAccessControl>
    </SecurityProfile>'

    اکنون می توانید دوباره از Basic Auth استفاده کنید.