Facebook Login for Business ist die bevorzugte Authentifizierungs- und Autorisierungslösung für Tech-Anbieter, die Integrationen mit den Meta-Business-Tools erstellen, um Marketing-, Messaging- und Verkaufslösungen zu entwickeln.
Mit Facebook Login for Business kannst du im Dashboard der Meta-App ein Login-Erlebnis schaffen, das auf die Anforderungen deiner App abgestimmt ist. Du kannst den Zugriffstoken-Typ, die Assets sowie die Berechtigungen angeben, die deine App benötigt, und als Konfiguration speichern. Wenn sich die Nutzer*innen deiner App bei dieser anmelden, wird ihnen diese Konfiguration angezeigt, die es ihnen ermöglicht, deiner App Zugriff auf ihre Business-Assets zu gewähren.
email
und public_profile
werden automatisch allen Apps gewährt, doch mindestens eine andere unterstützte Berechtigung muss für jede App-Installation enthalten sein.Die folgende Tabelle enthält die verfügbaren Berechtigungen für Facebook Login for Business.
Verfügbare Berechtigungen | Nutzungs-Zugriffstoken | Business-Integration-Systemnutzer-Zugriffstoken (WhatsApp) |
---|---|---|
ads_management | ✓ | ✓ |
ads_read | ✓ | ✓ |
business_management | ✓ | ✓ |
catalog_management | ✓ | ✓ |
commerce_account_manage_orders | ✓ | ✓ |
commerce_account_read_orders | ✓ | ✓ |
commerce_account_read_reports | ✓ | ✓ |
commerce_account_read_settings | ✓ | ✓ |
commerce_manage_accounts | ✓ | ✓ |
email | ✓ | Nicht zutreffend |
instagram_basic | ✓ | ✓ |
instagram_content_publish | ✓ | ✓ |
instagram_manage_comments | ✓ | ✓ |
instagram_manage_insights | ✓ | ✓ |
instagram_manage_messages | ✓ | ✓ |
instagram_shopping_tag_products | ✓ | ✓ |
leads_retrieval | ✓ | ✓ |
manage_app_solutions | ✓ | ✓ |
manage_fundraisers | ✓ | ✓ |
pages_manage_cta | ✓ | ✓ |
page_events | ✓ | ✓ |
pages_manage_ads | ✓ | ✓ |
pages_manage_engagement | ✓ | ✓ |
pages_manage_instant_articles | ✓ | ✓ |
pages_manage_metadata | ✓ | ✓ |
pages_manage_posts | ✓ | ✓ |
pages_messaging | ✓ | ✓ |
pages_read_engagement | ✓ | ✓ |
pages_read_user_content | ✓ | ✓ |
pages_show_list | ✓ | ✓ |
private_computation_access | ✓ | ✓ |
public_profile | ✓ | Nicht zutreffend |
publish_video | ✓ | ✓ |
read_insights | ✓ | ✓ |
read_audience_network_insights | ✓ | ✓ |
whatsapp_business_management | ✓ | ✓ |
whatsapp_business_messaging | ✓ | ✓ |
|
|
|
Mithilfe von Facebook Login for Business kannst du entweder Business-Integration-Systemnutzer-Zugriffstoken oder Nutzer*innen-Zugriffstoken abrufen.
Wenn deine App in Echtzeit Aktionen ausführt, die auf den Eingaben des*der Nutzer*in basieren, sollten Nutzer*innen-Zugriffstoken verwendet werden. Verwende z. B. einen Nutzer*innen-Zugriffstoken, wenn Nutzer*innen in deiner App Text eingeben und auf einen Button klicken müssen, um Inhalte auf ihrer Seite zu posten. Außerdem sollten Nutzer*innen-Zugriffstoken verwendet werden, wenn du eine API benötigst, für die Admin-Berechtigungen in einem Business-Portfolio erforderlich sind.
Business-Integration-Systemnutzer-Zugriffstoken sollten verwendet werden, wenn deine App programmgesteuerte, automatisierte Aktionen für die Assets deiner Unternehmenskund*innen durchführt, ohne auf die Eingabe von App-Nutzer*innen angewiesen zu sein oder eine erneute Authentifizierung zu einem späteren Zeitpunkt zu erfordern. Zum Beispiel:
Voraussetzungen zum Erhalt von Business-Integration-Systemnutzer-Zugriffsschlüssel von deinen Unternehmenskunden:
Um den Vorgang rund um den Business-Integration-Systemnutzer-Zugriffstoken zu testen, muss der*die Tester*in eine Rolle in der App und die uneingeschränkte Kontrolle über das Kundenunternehmen innehaben.
Wenn du unterschiedliche Zugriffs-Setups für verschiedene Zwecke oder Abteilungen benötigst, kannst du mehrere granulare Business-Integration-Systemnutzer-Zugriffstoken pro Kundenunternehmen verwenden, um die Skalierbarkeit und Sicherheit deiner Integrationen zu verbessern.
Auch granulare Zugriffsschlüssel gelten spezifisch für das Portfolio eines Kundenunternehmens. Sie können nicht in unterschiedlichen Kundenunternehmen geteilt oder abgerufen werden. Ihr Geltungsbereich und ihre Assetliste stellen eine Teilmenge des ursprünglichen Business-Integration-Systemnutzer-Zugriffstokens dar.
Zur Isolierung potenzieller Sicherheitsvorfälle bei einem kompromittierten Zugriffstoken ist nur das spezifische Kundenunternehmen betroffen anstelle aller Business-Portfolios aller Kundenunternehmen.
Wenn ein Kundenunternehmen eine App über Facebook Login for Business installiert und einen Business-Integration-Systemnutzer-Zugriffsschlüssel generiert, enthält der Schlüssel eine Kundenunternehmens-ID. Die ID steht für das Kundenunternehmen und wird von deiner App bei API-Aufrufen verwendet.
Über den /<CLIENT_BUSINESS_ID>/system_user_access_tokens
-Endpunkt kannst du deine vorhandenen Business-Integration-Systemnutzer-Zugriffsschlüssel verwalten. Verfügbare Aktionen:
Objekt | Beschreibung |
---|---|
| Erforderlich. Dieser Zugriffsschlüssel erfordert die Berechtigung |
| Erforderlich. |
| Optional. Wenn du einen granulareren Zugriffsschlüssel generieren möchtest, kannst du eine Liste von kommagetrennten |
| Optional. Das Flag, das du zum Abrufen des bestehenden Zugriffsschlüssels und zum Kennzeichnen dieses Vorgangs als schreibgeschützt verwendest. |
| Optional. Wenn du einen granulareren Zugriffsschlüssel erzeugen möchtest, kannst du eine Liste von kommagetrennten |
| Optional. Setze diese Eigenschaft beim Generieren eines neuen Schlüssels auf |
| Optional. Die ID für den Systemnutzer im Zugriffstoken. |
Für Lesbarkeit formatiert.
curl -i -X POST "https://graph.facebook.com/v21.0
/<CLIENT_BUSINESS_ID>/system_user_access_tokens
?appsecret_proof=<APPSECRET_PROOF_HASH>
&access_token=<ACCESS_TOKEN>
&system_user_id=<SYSTEM_USER_ID>
&fetch_only=true"
Bei Erfolg erhält deine App eine JSON-Antwort mit einem neuen Zugriffsschlüssel, der in nachfolgenden API-Aufrufen verwendet werden kann.
{ "access_token": "<NEW_ACCESS_TOKEN>" }
Business-Integration-Systemnutzer-Zugriffsschlüssel | Nutzungs-Zugriffstoken | |
---|---|---|
Zugriffszuweisung | Der Zugriff wird zum Zeitpunkt der Autorisierung ausdrücklich delegiert. Deine App kann nur auf die Assets zugreifen, die von deinem Unternehmenskunden beim Abschluss des Facebook Login for Business-Vorgangs angegeben wurden. Nur Tech-Anbieter. | Der Zugriff wird vom aktuellen Konto deines*deiner App-Nutzer*in übernommen. Die App kann auf die gleichen Business-Assets zugreifen, auf die der*die App-Nutzer*in derzeit Zugriff hat. |
Kontoverknüpfung | Ist mit dem Business-Portfolio deines*deiner Geschäftskund*in verknüpft und nicht mit einem*einer bestimmten Nutzer*in. Jede*r Administrator*in in der Administrator*innen-Gruppe deines Unternehmenskunde kann deiner App einen Systemnutzer-Zugriffsschlüssel gewähren. | Ist mit dem persönlichen Facebook-Konto deines*deiner App-Nutzer*in verknüpft. |
Ablauf und Aktualisierung | Läuft bei der gängigen Offline-Kommunikation von Server zu Server niemals ab. | Ein kurzlebiger Zugriffsschlüssel für Online-Aktivitäten wie Webbrowser. |
Art der OAuth-Gewährung | Nur Gewährung des Autorisierungscodes. | Standardmäßig implizite Gewährung, kann aber auch zwecks verbesserter Sicherheit die Gewährung des Autorisierungscodes unterstützen. Wird hauptsächlich für User-Agent-basierte Clients wie Webbrowser und mobile Apps verwendet. |
Repräsentation | Teil der Integrationsinfrastruktur des Tech-Anbieters und wird von einem Kundenunternehmen durch die Installation der App des Tech-Anbieters initialisiert. | Stellt Server oder Softwareelemente dar, die API-Aufrufe an Assets senden, die einem Business Manager gehören oder von ihm verwaltet werden. |
Ungültigmachung des Schlüssels | Deine Unternehmenskunden können Business-Integration-Systemnutzer-Zugriffsschlüssel ungültig machen, indem sie zu Business Manager > Einstellungen > Unternehmenseinstellungen > Integrationen > Verknüpfte Apps navigieren und deine App entfernen. | Deine Unternehmenskunden können Nutzer*innen-Zugriffstoken ungültig machen, indem sie zu Facebook und dann zu Einstellungen und Privatsphäre > Einstellungen > Sicherheit und Login > Business-Integrationen navigieren und deine App entfernen. |
Die folgenden Schritte müssen zum Einrichten von Facebook Login for Business ausgeführt werden, sofern du noch keine App hast.
Du erhältst eine Konfigurations-ID, die du in deinem code zum Aufrufen des Login-Dialogs verwendest.
Folge den Anweisungen in unserem Leitfaden zum Embedded Signup für WhatsApp, um eine Embedded Signup-Konfiguration für WhatsApp zu erstellen.
Folge den Anweisungen in unserem Marketing API-Leitfaden zur Conversions API für Business-Messaging, um eine Konfiguration der Conversions API für Business-Messaging zu erstellen.
Folge den Anweisungen in unserer Dokumentation zur Instagram Graph API, um eine Instagram Graph API-Konfiguration zu erstellen.
Rufe einen Login-Dialog mit einem unserer SDKs (empfohlen) auf oder erstelle den Login-Flow manuell.
Du kannst jedes unserer SDKs verwenden, um den Login-Dialog aufzurufen, indem du die Liste der Bereiche (Berechtigungen), die deine App benötigt, durch deine Konfigurations-ID und den erforderlichen OAuth-Gewährungstyp des Zugriffsschlüssels ersetzt.
Wenn du unsere SDKs noch nicht kennst, empfehlen wir dir, zuerst das JavaScript-SDK zu installieren und es mit dem Facebook Login-Produkt für Verbraucher*innen zum Laufen zu bringen, bevor du fortfährst, da die folgenden Beispiele auf das SDK verweisen.
Hier ein Beispiel für die Methode FB.login()
des JavaScript-SDK, die so geändert wurde, dass sie eine Konfiguration für einen Systemnutzer-Zugriffstoken verwendet. Beachte, dass scope
(sollte nicht verwendet werden) durch config_id
ersetzt wurde und dass der response_type
auf code
festgelegt wurde, da SUATs den Gewährungstyp „Autorisierungscode“ erfordern, und dass override_default_response_type
auf true
festgelegt werden muss. Sollte dies zutreffen, haben sämtliche von response_type
übergebenen Antworttypen Vorrang vor den Standardtypen.
FB.login( function(response) [ console.log(response); ], [ config_id: '<CONFIG_ID>', response_type: 'code', override_default_response_type: true ] );
Wenn der*die Nutzer*in den Login-Dialog-Ablauf abschließt, leiten wir den*die Nutzer*in zu deiner Weiterleitungs-URL weiter und schließen einen Code ein. Du musst diesen Code dann gegen einen Zugriffsschlüssel austauschen, indem du einen Server-zu-Server-Aufruf bei unseren Servern durchführst.
GET https://graph.facebook.com/v21.0
/oauth/access_token?
client_id=<APP_ID>
&client_secret=<APP_SECRET>
&code=<CODE>
Weitere Informationen zu diesem Schritt findest du unter Austausch von Code durch einen Zugriffstoken.
Hier ein Beispiel für die Methode FB.login()
des JavaScript-SDK, die so geändert wurde, dass sie eine Konfiguration für einen Nutzer*innen-Zugriffstoken verwendet. Beachte, dass scope
durch config_id
ersetzt wurde (auch wenn scope
weiterhin eingeschlossen werden kann, raten wir von der Verwendung des Parameters ab).
FB.login( function(response) { console.log(response); }, { config_id: '<CONFIG_ID>' // configuration ID goes here } );
Hier ein Beispiel für den login-Button des JavaScript-SDK, der so geändert wurde, dass er eine Konfiguration für einen Nutzer*innen-Zugriffsschlüssel verwendet:
<fb:login-button config_id="<CONFIG_ID>" onlogin="checkLoginState();"></fb:login-button>
Unter Manuelles Erstellen des Login-Ablaufs erfährst du, wie du den Login-Dialog manuell aufrufen kannst. Schließe beim Aufrufen des Login-Dialogs und Festlegen der Weiterleitungs-URL deine Konfigurations-ID als einen optionalen Parameter ein (auch wenn „scope“ weiterhin eingeschlossen werden kann, raten wir von der Verwendung dieses Parameters ab).
config_id=<CONFIG_ID>
Es wird empfohlen, Tests durchzuführen und dich über möglicherweise auftretende Probleme zu informieren, bevor du zu Facebook Login for Business wechselst.
Facebook Login for Business ist für Apps des Typs „Business“ verfügbar.
Wenn deine App berechtigt ist, zu Facebook Login for Business zu wechseln, sollte dir in den folgenden Schritten ein Aktivierungsbanner angezeigt werden:
Beachte, dass deine aktuellen Zugriffsschlüssel nicht vom Wechsel zu Facebook Login for Business betroffen sind. Darüber hinaus werden alle mit dieser App verknüpften Test-Apps ebenfalls auf Facebook Login for Business umgestellt.
Nach dem Wechsel hat deine App den Typ Business. Für den Fall, dass deine App nicht wie vorgesehen funktioniert, darf für jede App innerhalb von 30 Tagen nach dem Wechsel zu Facebook Login ein Rollback durchgeführt werden.
Bei Unternehmenskunden kann es aus folgenden Gründen zu Fehlermeldungen kommen:
Potenzielle funktionsgefährdende Änderungen:
email
und/oder public_profile
von deinen Unternehmenskunden anforderst, führt der Wechsel der App zu Facebook Login for Business zur Ungültigmachung aller zuvor installierten Schlüssel für diese Kund*innen. config_id
nicht unterstützt. Du musst stattdessen den Parameter config_id
durch den Parameter scope
ersetzen.Erfahre mehr über Meta Business Extension.
Nur möglich, wenn eine vorhandene App zu Facebook Login for Business gewechselt ist; neu erstellte Apps des Typs „Business“ können nicht zu Facebook Login zurückwechseln.
Wenn deine App nach dem Wechsel zu Facebook Login for Business nicht wie vorgesehen funktioniert, kannst du zu Facebook Login zurückkehren, indem du zu App-Dashboard > Facebook Login for Business > Einstellungen navigierst und auf den Link Zu Facebook Login wechseln klickst. Dir wird eine Umfrage angezeigt, die uns hilft, das Facebook Login for Business-Konfigurationserlebnis zu verbessern. Jede App darf innerhalb von 30 Tagen nach dem Wechsel zu Facebook Login zurückkehren.
The easiest way to add Facebook Login for Business is to create a new Business Type app, where Facebook Login for Business is automatically available, and request supported business permissions through Meta App Review. If you want to use it for an existing None type app, your app must have advanced access to at least one supported business permission.
If you are not a Tech Provider building solutions using Meta’s business APIs, Facebook Login is recommended for consumer authentication.
Only request the minimum permissions necessary for your app's functionality. Be transparent with users about why you need each permissions and features. Note that the email
and public_profile
permissions must be requested with at least one other supported business permission.
Yes, advanced access to the public_profile
permission is required for Facebook Login for Business apps before they go live. This requirement is crucial to ensure that the app can support authorization from users who do not have an app role, commonly referred to as external users.