Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Lernprogramm erfahren Sie, wie Sie geheime und Zertifikatstandards mithilfe von Anwendungsverwaltungsrichtlinien in Microsoft Entra ID erzwingen.
Die Sicherstellung, dass Anwendungen in Ihrer Organisation sichere Authentifizierung verwenden, ist entscheidend für den Schutz vertraulicher Daten und die Aufrechterhaltung der Integrität Ihrer Systeme. Die Microsoft Entra-ID bietet eine Möglichkeit, geheime und Zertifikatbeschränkungen über Anwendungsverwaltungsrichtlinien zu erzwingen. Mit dieser Funktion können Sie verwalten, welche Arten von Geheimnissen und Schlüsseln verwendet werden können, und sicherstellen, dass sie regelmäßig ausgetauscht werden. Anwendungsverwaltungsrichtlinien können nur mithilfe von Microsoft Graph PowerShell oder der Microsoft Graph-API aktualisiert werden. Weitere Informationen zu diesem Feature finden Sie in der Übersicht über die API für die Anwendungsverwaltungsrichtlinien von Microsoft Entra.
Richtlinien können auf alle Anwendungen in Ihrer Organisation oder auf bestimmte Anwendungen angewendet werden. In diesem Tutorial erfahren Sie Folgendes:
- Erfahren Sie mehr über empfohlene Einschränkungen für geheime Schlüssel und Zertifikate.
- Lesen Sie die aktuelle Anwendungsverwaltungsrichtlinie für Ihren Mandanten.
- Aktualisieren Sie die Anwendungsrichtlinie, um Einschränkungen zu erzwingen.
- Vergewissern Sie sich, dass die Richtlinie angewendet wurde.
Von Bedeutung
Das Vornehmen von Änderungen an Ihrer Anwendungsverwaltungsrichtlinie kann erhebliche Auswirkungen auf Ihre Anwendungen und ihre Fähigkeit zur Authentifizierung haben. Bevor Sie Änderungen vornehmen, ist es wichtig, die Auswirkungen dieser Änderungen und deren Auswirkungen auf Ihre Anwendungen zu verstehen. Sie sollten alle Änderungen in einer Nicht-Produktionsumgebung testen, bevor Sie sie auf Ihre Produktionsumgebung anwenden und eine Kopie der aktuellen Richtlinieneinstellungen erstellen, bevor Sie sie aktualisieren.
Voraussetzungen
- Ein Benutzerkonto. Falls Sie noch über keins verfügen, können Sie ein kostenloses Konto erstellen.
- Mindestens die Rolle "Cloudanwendungsadministrator " oder "Anwendungsadministrator" .
- Ein API-Client wie Graph-ExplorerODER
- Microsoft Graph PowerShell-Modul installiert. Siehe Installieren des Microsoft Graph PowerShell-Moduls.
Empfohlene Methoden für geheime Schlüssel und Zertifikate
Angriffe auf Anwendungen zielen häufig auf geheime Schlüssel wie Kennwörter, Schlüssel und Zertifikate ab, um nicht autorisierten Zugriff auf vertrauliche Daten zu erhalten. Durch die Durchsetzung von Einschränkungen können Sie diese Risiken mindern und sicherstellen, dass Ihre Anwendungen sicher bleiben. Nachfolgend sind unsere empfohlenen Einschränkungen für Geheime und Zertifikate aufgeführt:
Deaktivieren Sie Anwendungs-Kennwörter/geheime Clientschlüssel: Anwendungen, die geheime Clientschlüssel verwenden, speichern sie möglicherweise in Konfigurationsdateien, hartcodieren sie in Skripts oder riskieren ihre Gefährdung auf andere Weise. Die Komplexitäten des geheimen Managements machen Geheimgeheimnisse anfällig für Lecks und attraktiv für Angreifer.
Deaktivieren Sie die symmetrische Schlüsselverwendung in Anwendungen: Symmetrische Schlüssel ähneln Client-Geheimnissen darin, dass sie zwischen der Anwendung und der Ressource, auf die sie zugreift, gemeinsam verwendet werden. Dies bedeutet: Wenn ein Angreifer Zugriff auf den symmetrischen Schlüssel erhält, kann er die Identität der Anwendung imitieren und auf die Ressource zugreifen. Symmetrische Schlüssel sind auch schwieriger zu verwalten als asymmetrische Schlüssel, da beide Parteien denselben Schlüssel gemeinsam nutzen müssen.
Beschränken Sie die Lebensdauer asymmetrischer Schlüssel (Zertifikat) auf 180 Tage: Zertifikate bieten eine sicherere Möglichkeit zum Authentifizieren von Anwendungen als geheime Clientschlüssel. Sie können jedoch weiterhin kompromittiert werden, wenn sie nicht ordnungsgemäß verwaltet werden. Indem Sie die Lebensdauer von Zertifikaten einschränken, können Sie das Risiko verringern, dass langlebige Zertifikate von Angreifern ausgenutzt werden. Zertifikate sollten regelmäßig erneuert werden, um sicherzustellen, dass sie nicht kompromittiert werden. Die empfohlene maximale Lebensdauer für Zertifikate beträgt 180 Tage. Dies bedeutet, dass Sie Ihre Zertifikate mindestens alle 180 Tage drehen sollten. Das Festlegen einer kürzeren Lebensdauer für hochempfindliche Anwendungen kann das Risiko einer Kompromittierung weiter reduzieren. Wir empfehlen auch, die automatische Rotation von Zertifikaten mithilfe von Azure Key Vault zu konfigurieren. Weitere Informationen finden Sie unter Automatisieren der Drehung eines geheimen Schlüssels für Ressourcen, die einen Satz von Authentifizierungsanmeldeinformationen verwenden
Weitere Informationen zu empfohlenen Sicherheitspraktiken für Microsoft Entra-Mandanten finden Sie unter Konfigurieren von Microsoft Entra für erhöhte Sicherheit.
Lesen Sie Ihre Richtlinie zur Verwaltung von Mietbewerbungen
Bevor Sie eine neue Anwendungsverwaltungsrichtlinie erstellen, können Sie Ihre vorhandene Richtlinie lesen, um festzustellen, ob sie Ihren Anforderungen entspricht. Das folgende Beispiel zeigt, wie Sie die Standardanwendungsverwaltungsrichtlinie für Ihren Mandanten lesen. Sie können diese API-Anforderung auch wiederverwenden, um zu bestätigen, dass die Richtlinie später in diesem Lernprogramm angewendet wurde.
Beispiel
Im folgenden Beispiel wird die Standard-Anwendungsverwaltungsrichtlinie für Ihren Mandanten gelesen. Die Antwort zeigt die aktuellen Richtlinieneinstellungen an.
Stellen Sie mithilfe des Connect-MgGraph Cmdlets und der Policy.Read.All Berechtigung eine Verbindung mit Microsoft Graph her. Melden Sie sich mit mindestens der Rolle " Cloudanwendungsadministrator " an. Führen Sie dann die folgenden Befehle aus, um die Standardmäßige Anwendungsverwaltungsrichtlinie für Ihren Mandanten zu lesen.
Connect-MgGraph -Scopes 'Policy.Read.All'
# Get the default application management policy
Get-MgPolicyDefaultAppManagementPolicy | format-list
Weitere Informationen zu diesem Cmdlet finden Sie unter Get-MgPolicyDefaultAppManagementPolicy.
Ausgabe
Das folgende Beispiel zeigt die Ausgabe der Standardmäßigen Mandanten-App-Verwaltungsrichtlinie. Ihre Richtlinie kann sich vom Beispiel unterscheiden. Wenn in Ihrer Organisation keine Richtlinie angewendet wird, wird das id-Feld auf 00000000-0000-0000-0000-000000000000 festgelegt und das isEnabled-Feld auf false.
ApplicationRestrictions : Microsoft.Graph.PowerShell.Models.MicrosoftGraphAppManagementApplicationConfiguration
DeletedDateTime :
Description : Default tenant policy that enforces app management restrictions on applications and service principals. To apply policy to targeted resources, create a new policy under appManagementPolicies collection.
DisplayName : Default app management tenant policy
Id : 00000000-0000-0000-0000-000000000000
IsEnabled : false
ServicePrincipalRestrictions : Microsoft.Graph.PowerShell.Models.MicrosoftGraphAppManagementServicePrincipalConfiguration
AdditionalProperties : {[@odata.context, https://graph.microsoft.com/v1.0/$metadata#policies/defaultAppManagementPolicy/$entity]}
Melden Sie sich beim Microsoft Graph-Explorer mit mindestens einer Cloudanwendungsadministratorrolle an . Führen Sie dann die folgende Anforderung aus, um die Standardmäßige Anwendungsverwaltungsrichtlinie für Ihren Mandanten zu lesen. Stellen Sie sicher, dass Sie der Berechtigung Policy.Read.All zustimmen.
GET https://graph.microsoft.com/v1.0/policies/defaultAppManagementPolicy
Weitere Informationen zu dieser Anforderung finden Sie unter Get tenantAppManagementPolicy.
Antwort
Das folgende Beispiel zeigt die Antwort der Standardrichtlinie zur Verwaltung von Mandanten-Apps. Ihre Richtlinie kann sich vom Beispiel unterscheiden. Wenn in Ihrer Organisation keine Richtlinie angewendet wird, wird das Feld id auf 00000000-0000-0000-0000-000000000000 gesetzt, und das Feld isEnabled wird auf false gesetzt.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#policies/defaultAppManagementPolicy/$entity",
"@odata.id": "https://graph.microsoft.com/v2/927c6607-8060-4f4a-a5f8-34964ac78d70/defaultAppManagementPolicy/00000000-0000-0000-0000-000000000000",
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "Default app management tenant policy",
"description": "Default tenant policy that enforces app management restrictions on applications and service principals. To apply policy to targeted resources, create a new policy under appManagementPolicies collection.",
"isEnabled": false,
"applicationRestrictions": {
"passwordCredentials": [],
"keyCredentials":[]
},
"servicePrincipalRestrictions": {
"passwordCredentials": [],
"keyCredentials":[]
}
}
Von Bedeutung
Erstellen Sie eine Kopie der aktuellen Richtlinieneinstellungen, bevor Sie sie aktualisieren. Auf diese Weise können Sie bei Bedarf wieder auf die ursprünglichen Einstellungen zurückgesetzt werden. Sie können dies tun, indem Sie die aktuellen Richtlinieneinstellungen in eine Datei kopieren oder einen Screenshot der Einstellungen erstellen. Sie können die ursprünglichen Einstellungen nicht finden, nachdem Sie sie aktualisiert haben, wenn Sie sie nicht gespeichert haben.
Aktualisieren der Anwendungsverwaltungsrichtlinie
Um geheime und Zertifikatbeschränkungen zu implementieren, müssen Sie die Standardrichtlinie für die Anwendungsverwaltung aktualisieren. In diesem Beispiel werden die empfohlenen Einstellungen bereitgestellt, Sie können sie jedoch an Ihre Anforderungen anpassen oder bestimmte Elemente weglassen, wenn Sie sie nicht anwenden möchten. Das folgende Beispiel zeigt, wie Sie die Standardanwendungsverwaltungsrichtlinie mit den empfohlenen Einstellungen aktualisieren:
passwordCredentials: Ermöglicht das Festlegen von Richtlinien zum Einschränken von Attributen für geheime Clientschlüssel und symmetrische Schlüssel. Dies kann weggelassen werden, wenn Sie keine Richtlinie festlegen möchten, um diese Arten von Anmeldeinformationen einzuschränken.Mit dem
restrictionTypeParameter können Sie den Einschränkungstyp festlegen, den Sie anwenden möchten. In diesem Fall beschränken SiepasswordAddition,customPasswordAdditionundsymmetricKeyAddition. Diese Einstellungen beschränken die Erstellung von geheimen Clientschlüsseln, benutzerdefinierten Kennwörtern und symmetrischen Schlüsseln.Mit dem
stateParameter können Sie die Einschränkung aktivieren oder deaktivieren. Wenn diese Einstellung festgelegtenabledist, wird die Einschränkung angewendet. Wenn diese Einstellungdisabledfestgelegt ist, wird die Einschränkung nicht angewendet.Mit dem
maxLifetimeParameter können Sie die maximale Lebensdauer des geheimen Schlüssels festlegen. FürpasswordCredentialshaben Sie den Wert aufnullgesetzt. Das Festlegen des Wertsnullbedeutet, dass die maximale Lebensdauer nicht eingeschränkt ist. Dies liegt daran, dass Sie die Erstellung von geheimen Clientschlüsseln und symmetrischen Schlüsseln vollständig deaktivieren. Wenn Sie eine maximale Lebensdauer für geheime Clientschlüssel festlegen möchten, können Sie diesen Wert auf eine Dauer im ISO 8601-Format festlegen. Im nächsten Abschnitt finden Sie ein Beispiel dafür. Weitere Informationen zur Formatierung der Dauer finden Sie unter ISO 8601.Mit dem
restrictForAppsCreatedAfterDateTimeParameter können Sie ein Datum festlegen, ab dem die Richtlinie für neue Anwendungen wirksam wird. Alle anwendungen, die vor diesem Datum erstellt wurden, sind von der Richtlinie nicht betroffen. In diesem Fall wenden Sie Einschränkungen für Anwendungen an, die nach dem 20. Februar 2025 erstellt wurden. Stellen Sie sicher, dass Sie dieses Datum entsprechend Ihren Anforderungen aktualisieren. Wenn Sie unterschiedliche Einschränkungen für Anwendungen festlegen möchten, die vor oder nach einem bestimmten Datum erstellt wurden, können Sie mehrere Richtlinien mit unterschiedlichenrestrictForAppsCreatedAfterDateTimeWerten festlegen.
keyCredentials: Ermöglicht das Festlegen von Parametern für Zertifikate. In diesem Fall beschränken Sie die Lebensdauer von Anwendungszertifikaten auf 180 Tage.Mit dem
restrictionTypeParameter können Sie den Einschränkungstyp festlegen, den Sie anwenden möchten. In diesem Fall schränken SieasymmetricKeyLifetimeein. Dadurch wird die Lebensdauer von Anwendungszertifikaten auf einen benutzerdefinierten Wert beschränkt.Mit dem
stateParameter können Sie die Einschränkung aktivieren oder deaktivieren. Wenn diese Einstellung festgelegtenabledist, wird die Einschränkung angewendet. Wenn diese Einstellungdisabledfestgelegt ist, wird die Einschränkung nicht angewendet.Mit dem
maxLifetimeParameter können Sie die maximale Lebensdauer des Zertifikats festlegen. In diesem Fall beschränken Sie die Lebensdauer von Zertifikaten auf 180 Tage. Dazu wird das ISO 8601-Zeitdauerformat verwendet. Das PräfixPgibt an, dass der Wert für einen Zeitraum liegt, und180Dgibt an, dass der Zeitraum 180 Tage beträgt. Sie können die Zahl von180zu einem anderen Wert entsprechend Ihren spezifischen Anforderungen ändern. Weitere Informationen zur Dauerformatierung finden Sie unter ISO 8601.Mit dem
restrictForAppsCreatedAfterDateTimeParameter können Sie ein Datum festlegen, ab dem die Richtlinie für neue Anwendungen wirksam wird. Alle anwendungen, die vor diesem Datum erstellt wurden, sind von der Richtlinie nicht betroffen. In diesem Fall wenden Sie Einschränkungen für Anwendungen an, die nach dem 20. Februar 2025 erstellt wurden. Stellen Sie sicher, dass Sie dieses Datum entsprechend Ihren Anforderungen aktualisieren. Wenn Sie unterschiedliche Einschränkungen für Anwendungen festlegen möchten, die vor oder nach einem bestimmten Datum erstellt wurden, können Sie mehrere Richtlinien mit unterschiedlichenrestrictForAppsCreatedAfterDateTimeWerten festlegen.
Beispiel
Im folgenden Beispiel wird die Standardanwendungsverwaltungsrichtlinie mit den einstellungen aktualisiert, die im vorherigen Abschnitt erläutert werden.
Connect-MgGraph -Scopes 'Policy.ReadWrite.All'
Import-Module Microsoft.Graph.Identity.SignIns
# Define the parameters for the application management policy
$params = @{
isEnabled = $true
applicationRestrictions = @{
passwordCredentials = @(
@{
restrictionType = "passwordAddition"
state = "enabled"
maxLifetime = $null
restrictForAppsCreatedAfterDateTime = [System.DateTime]::Parse("2025-02-20T10:37:00Z")
}
@{
restrictionType = "customPasswordAddition"
state = "enabled"
maxLifetime = $null
restrictForAppsCreatedAfterDateTime = [System.DateTime]::Parse("2025-05-20T10:37:00Z")
}
@{
restrictionType = "symmetricKeyAddition"
state = "enabled"
maxLifetime = $null
restrictForAppsCreatedAfterDateTime = [System.DateTime]::Parse("2025-02-20T10:37:00Z")
}
)
keyCredentials = @(
@{
restrictionType = "asymmetricKeyLifetime"
maxLifetime = "P180D"
restrictForAppsCreatedAfterDateTime = [System.DateTime]::Parse("2025-02-20T10:37:00Z")
}
)
}
}
# Update the default application management policy
Update-MgPolicyDefaultAppManagementPolicy -BodyParameter $params
Weitere Informationen zu diesem Cmdlet finden Sie unter Update-MgPolicyDefaultAppManagementPolicy.
Stellen Sie sicher, dass Sie der Berechtigung Policy.ReadWrite.All zustimmen. Führen Sie dann die folgende Anforderung aus, um die Standardmäßige Anwendungsverwaltungsrichtlinie für Ihren Mandanten zu aktualisieren.
PATCH https://graph.microsoft.com/v1.0/policies/defaultAppManagementPolicy
Content-Type: application/json
{
"isEnabled": true,
"applicationRestrictions": {
"passwordCredentials": [
{
"restrictionType": "passwordAddition",
"state": "enabled",
"maxLifetime": null,
"restrictForAppsCreatedAfterDateTime": "2025-02-20T10:37:00Z"
},
{
"restrictionType": "customPasswordAddition",
"state": "enabled",
"maxLifetime": null,
"restrictForAppsCreatedAfterDateTime": "2025-05-20T10:37:00Z"
},
{
"restrictionType": "symmetricKeyAddition",
"state": "enabled",
"maxLifetime": null,
"restrictForAppsCreatedAfterDateTime": "2025-02-20T10:37:00Z"
},
],
"keyCredentials": [
{
"restrictionType": "asymmetricKeyLifetime",
"state": "enabled",
"maxLifetime": "P180D",
"restrictForAppsCreatedAfterDateTime": "2025-02-20T10:37:00Z"
}
]
},
}
Weitere Informationen zu dieser Anforderung finden Sie unter "Update tenantAppManagementPolicy".
Antwort
Sobald die Anforderung gesendet wurde, sollten Sie eine Antwort erhalten, die angibt, dass die Richtlinie erfolgreich aktualisiert wird. Die Antwort sollte ein 204 No Content Statuscode sein, der angibt, dass die Anforderung erfolgreich war und kein Inhalt zurückgegeben werden soll.
HTTP/1.1 204 No Content
Bestätigen, dass die Richtlinie angewendet wurde
Nachdem Sie Ihre Anwendungsverwaltungsrichtlinie aktualisiert haben, können Sie bestätigen, dass sie angewendet wird, indem Sie die Standardanwendungsverwaltungsrichtlinie erneut lesen, wie zuvor gezeigt. Die Antwort sollte die aktualisierte Richtlinie mit den angewendeten Einschränkungen anzeigen.
Wenn Sie zum ersten Mal eine Anwendungsverwaltungsrichtlinie anwenden, sollte sich das id Feld von 00000000-0000-0000-0000-000000000000 zu einer neuen GUID geändert haben. Diese Änderung gibt an, dass die Richtlinie erstellt wird.
Sie können auch bestätigen, dass die Richtlinie angewendet wird, indem Sie eine neue Anwendung erstellen und überprüfen, ob die Einschränkungen erzwungen werden. Wenn Sie beispielsweise versuchen, eine neue Anwendung mit einem geheimen Clientschlüssel oder symmetrischen Schlüssel zu erstellen, sollten Sie einen Fehler erhalten, der angibt, dass der Vorgang nicht zulässig ist, wie im folgenden Screenshot gezeigt.
Verwandte Inhalte
- Weitere Möglichkeiten zum Implementieren dieser Richtlinie finden Sie unter Konfigurieren von Einschränkungen für die Konfiguration von Anwendungen
- Informationen zur Automatisierung der Geheimnisrotation finden Sie unter Automatisieren der Rotation eines Geheimnisses für Ressourcen, die ein Set an Authentifizierungsinformationen nutzen.
- Weitere Informationen zu verfügbaren Einschränkungen und Richtlinieneinstellungen finden Sie im Überblick über die Anwendungsverwaltungsrichtlinien-API von Microsoft Entra.
- Weitere Informationen zu bewährten Sicherheitsmethoden für Ihre Organisation finden Sie unterKonfigurieren von Microsoft Entra für erhöhte Sicherheit.
- Weitere Informationen zu Alternativen zur Authentifizierung mit geheimen Schlüsseln finden Sie unter Migrieren von Anwendungen außerhalb der geheimen Authentifizierung