共用方式為


多重要素驗證需求

我們已在 Microsoft Advertising Online 中要求多重要素驗證。 多重要素驗證是一種安全性程式,需要您以兩種不同的方式驗證身分識別。

重要事項

自 2022 年 6 月 1 日起,我們逐漸要求客戶透過協力廠商應用程式登入以使用 Bing 廣告 API、內容 API 和旅館 API 的 多重要素驗證

您必須更新應用程式,才能使用新 msads.manage 範圍取得使用者同意。 所有應用程式開發人員都必須採取動作,才能使用新的範圍。

msads.manage 範圍 需要應用程式的所有使用者重新同意。 無論使用者是否已開啟多重要素驗證,您都必須使用新 msads.manage 範圍提示使用者同意。 這可確保在將同意授與您的應用程式時,提供第二種形式的識別或證明。

必須採取動作

您必須更新應用程式,並透過Microsoft 身分識別平臺端點提示使用者同意使用 msads.manage 範圍。 所有 Microsoft Advertising 開發人員都必須採取動作,才能使用新範圍。

透過每個 API 要求,我們將檢查存取權杖,以確保使用者透過新 msads.manage 範圍授與同意。 強制執行多重要素驗證時,將不會接受布建的任何存取權杖。

建議您儘快進行必要的變更。

我們也建議您通知並引導應用程式的使用者 設定 MFA ,以便在授與任何應用程式的許可權時,需要第二個證明。 針對 Microsoft Advertising 需求,這不足以讓他們開啟 MFA。 無論哪一種方式,您都必須透過提示 msads.manage 範圍來取得使用者同意。

強制執行之後

強制執行 MFA 時,我們只會代表透過Microsoft 身分識別平臺端點上範圍同意應用程式 msads.manage 的使用者驗證存取權杖。

  • 在強制執行 MFA 之前,Microsoft 身分識別平臺端點支援 ads.manage 範圍。 您透過 ads.manage 範圍為使用者取得的存取權杖將不再被接受。

  • 在強制執行 MFA 之前,Live Connect端點支援 bingads.manage 範圍。 Live Connect端點已過時,不再受到支援。 您透過範圍為使用者取得的 bingads.manage 存取權杖將不再被接受。

SDK 支援

從 13.0.10 版的 Bing 廣告 SDK (.NET、JAVA、Python 和 PHP) 開始,即可支援新 msads.manage 範圍。

預設會使用新的 msads.manage 範圍。 為了回溯相容性,在強制執行日期之前,您可以使用 ads.manage 具有簡短因應措施的 或 bingads.manage 範圍。

var oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
    Settings.Default["ClientId"].ToString(),
    apiEnvironment,
    OAuthScope.ADS_MANAGE // temporary workaround; remove or use MSADS_MANAGE instead
);
OAuthDesktopMobileAuthCodeGrant oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
    ClientId, 
    ApiEnvironment,
    OAuthScope.ADS_MANAGE // temporary workaround; remove or use MSADS_MANAGE instead
);
$authentication = (new OAuthDesktopMobileAuthCodeGrant())
    ->withClientId(ClientId)
    ->withEnvironment(ApiEnvironment)
    ->withOAuthScope(OAuthScope::ADS_MANAGE); // temporary workaround; remove or use MSADS_MANAGE instead
oauth_web_auth_code_grant = OAuthDesktopMobileAuthCodeGrant(
    client_id=CLIENT_ID,
    env=ENVIRONMENT,
    oauth_scope="ads.manage" # temporary workaround; remove or use "msads.manage" instead
)

範例案例

以下是可能適用于您企業的範例案例。

範例:使用不同的範圍重新整理以取得新的存取權杖

存取權杖代表使用者根據範圍以有限許可權代表其採取行動的許可權。 當您要求同意管理其帳戶時,您會將 scope 參數設定為 ads.managemsads.manage。 您實際上是在要求具有範圍所定義之任何許可權的使用者存取權杖。

重要事項

強制執行多重要素驗證時,只有透過 msads.manage 範圍布建或重新整理存取權杖時,才會接受存取權杖。 您可以透過 ads.manage繼續重新整理權杖,但 Bing 廣告 API 不會接受它們。

若要確認在強制執行多重要素驗證時會接受存取權杖,您可以檢查回應範圍。 如果範圍包含 msads.manage ,則會接受它。

例如,假設目前使用者同意您的應用程式透過 ads.managemsads.manage 範圍管理其帳戶。 他們可能已在上個月透過 ads.manage 授與同意,然後在本月透過 msads.manage 授與同意。

如果您使用 ads.manage 重新整理權杖,權杖重新整理回應將會包含 ads.manage 範圍。 強制執行多重要素驗證時,不會接受 「MyAccessToken-1」。

{
    "token_type":"Bearer",
    "scope":"https://ads.microsoft.com/ads.manage",
    "expires_in":3600,
    "ext_expires_in":3600,
    "access_token":"MyAccessToken-1",
    "refresh_token":"MyRefreshToken-1"
}

如果您使用 msads.manage 重新整理權杖,權杖重新整理回應會同時包含 ads.managemsads.manage 範圍。 強制執行多重要素驗證時,將會接受 「MyAccessToken-2」。

{
    "token_type":"Bearer",
    "scope":"https://ads.microsoft.com/msads.manage https://ads.microsoft.com/ads.manage",
    "expires_in":3600,
    "ext_expires_in":3600,
    "access_token":"MyAccessToken-2",
    "refresh_token":"MyRefreshToken-2"
}

如果您嘗試使用使用者目前未提供同意的任何範圍重新整理權杖,則會傳回 invalid_grant 錯誤。

{
    "error":"invalid_grant",
    "error_description":"AADSTS70000: The request was denied because one or more scopes requested are unauthorized or expired. The user must first sign in and grant the client application access to the requested scope."
}

另請參閱

OAuth 常見問題要求使用者同意