Kullanıcı oturum açma ile web uygulamasının güvenliğini sağlama
Aşağıdaki kılavuz, web sunucularında barındırılan, birden çok iş senaryosu barındıran ve web sunucularına dağıtan bir uygulamayla ilgilidir. Uygulama, yalnızca Microsoft Entra kullanıcılarına güvenli korunan kaynaklar sağlama gereksinimine sahiptir. Senaryonun amacı, web uygulamasının Microsoft Entra Id kimlik doğrulaması yapmasını ve kullanıcı adına Azure Haritalar REST API'lerini çağırmasını sağlamaktır.
azure portalında Azure Haritalar hesabı kimlik doğrulama ayrıntılarınızı görüntülemek için:
Azure Portal’ında oturum açın.
Azure portalı menüsüne gidin. Tüm kaynaklar'ı ve ardından Azure Haritalar hesabınızı seçin.
Sol bölmedeki Ayarlar'ın altında Kimlik Doğrulaması'nı seçin.
Azure Haritalar hesabı oluşturulduğunda üç değer oluşturulur. Bunlar, Azure Haritalar iki kimlik doğrulama türünü desteklemek için kullanılır:
- Microsoft Entra kimlik doğrulaması:
Client ID
REST API istekleri için kullanılacak hesabı temsil eder. DeğerClient ID
uygulama yapılandırmasında depolanmalıdır ve ardından Microsoft Entra kimlik doğrulamasını kullanan Azure Haritalar HTTP istekleri yapmadan önce alınmalıdır. - Paylaşılan Anahtar Kimlik Doğrulaması:
Primary Key
veSecondary Key
, Paylaşılan Anahtar kimlik doğrulaması için abonelik anahtarı olarak kullanılır. Paylaşılan Anahtar kimlik doğrulaması, her istekte Azure Haritalar hesabı tarafından oluşturulan anahtarın Azure Haritalar geçirilmesine dayanır. Anahtarlarınızı düzenli olarak yeniden oluşturmanızı öneririz. Yeniden oluşturma sırasında geçerli bağlantıları korumak için iki anahtar sağlanır. Bir anahtar, diğerini yeniden oluştururken kullanımda olabilir. Anahtarlarınızı yeniden oluşturduğunuzda, bu hesaba erişen tüm uygulamaları yeni anahtarları kullanmak için güncelleştirmeniz gerekir. Daha fazla bilgi için bkz. Azure Haritalar ile kimlik doğrulaması
Microsoft Entra Id'de uygulama kaydı oluşturma
Kullanıcıların oturum açabilmesi için web uygulamasını Microsoft Entra Id'de oluşturmanız gerekir. Bu web uygulaması daha sonra Azure Haritalar REST API'lerine kullanıcı erişimi verir.
Azure portalında, Azure hizmetleri listesinde Microsoft Entra ID> Uygulama kayıtları> Yeni kayıt'ı seçin.
Bir Ad girin, destek hesabı türünü seçin, Microsoft Entra Id'nin belirteci veren url'yi temsil eden bir yeniden yönlendirme URI'si sağlayın. Bu url, harita denetiminin barındırıldığı URL'dir. Daha fazla bilgi için bkz. Microsoft Entra Id Scenario: Kullanıcılarda oturum açma web uygulaması. Microsoft Entra senaryosunda sağlanan adımları tamamlayın.
Uygulama kaydı tamamlandıktan sonra, uygulama oturum açma işleminin kullanıcılar için çalıştığını onaylayın. Oturum açma işe yaradıktan sonra uygulamaya Azure Haritalar REST API'lerine temsilci erişimi verilebilir.
Azure Haritalar için temsilcili API izinleri atamak için uygulamaya gidin ve API izinleri>İzin ekle'yi seçin. Kuruluşumun kullandığı API'ler listesinden Azure Haritalar seçin.
Access Azure Haritalar yanındaki onay kutusunu ve ardından İzin ekle'yi seçin.
Uygulama kaydını bir uygulama gizli dizisiyle yapılandırarak web uygulamasının Azure Haritalar REST API'lerini çağırmasını etkinleştirin. Ayrıntılı adımlar için bkz. Web API'lerini çağıran bir web uygulaması: Uygulama kaydı. Kullanıcı adına Microsoft Entra'da kimlik doğrulaması yapmak için bir gizli dizi gereklidir. Uygulama kayıt sertifikası veya gizli dizi, web uygulamasının Microsoft Entra Kimliği'nde kimlik doğrulaması yapmak üzere alması için güvenli bir depoda depolanmalıdır.
- Uygulamada zaten bir Microsoft Entra uygulama kaydı ve gizli dizi yapılandırılmışsa bu adım atlanabilir.
İpucu
Uygulama bir Azure ortamında barındırılıyorsa, Azure Key Vault gizli dizilerine veya sertifikalarına erişmek için bir erişim belirteci alarak gizli dizilere erişmek üzere Azure kaynakları için Yönetilen kimlikler ve bir Azure Key Vault örneği kullanmanızı öneririz. Gizli dizileri almak üzere Azure Key Vault'a bağlanmak için bkz . Yönetilen kimlik üzerinden bağlanma öğreticisi.
Azure Haritalar Web SDK'sının bir belirteçe erişmesi için güvenli bir belirteç uç noktası uygulayın.
- Örnek belirteç denetleyicisi için bkz. Azure Haritalar Microsoft Entra Id Örnekleri.
- AspNetCore olmayan bir uygulama veya başka bir uygulama için Microsoft Entra belgelerinden uygulama için belirteç alma bölümüne bakın.
- Güvenli belirteç uç noktası, kimliği doğrulanmış ve yetkili kullanıcının Azure Haritalar REST API'lerini çağırması için bir erişim belirteci döndürmekle sorumludur.
Kullanıcılar veya gruplar için Azure rol tabanlı erişim denetimini (Azure RBAC) yapılandırmak için bkz . Kullanıcılar için rol tabanlı erişim verme.
Güvenli belirteç uç noktasına erişmek için web uygulaması sayfasını Azure Haritalar Web SDK'sı ile yapılandırın.
var map = new atlas.Map("map", {
center: [-122.33, 47.64],
zoom: 12,
language: "en-US",
authOptions: {
authType: "anonymous",
clientId: "<insert>", // azure map account client id
getToken: function (resolve, reject, map) {
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "/api/token", true); // the url path maps to the token endpoint.
xhttp.onreadystatechange = function () {
if (this.readyState === 4 && this.status === 200) {
resolve(this.responseText);
} else if (this.status !== 200) {
reject(this.responseText);
}
};
xhttp.send();
}
}
});
map.events.add("tokenacquired", function () {
console.log("token acquired");
});
map.events.add("error", function (err) {
console.log(JSON.stringify(err.error));
});
Kullanıcıların Azure Haritalar için rol tabanlı erişim verme
Bir veya daha fazla Azure Haritalar rol tanımına bir Microsoft Entra grubu veya güvenlik sorumlusu atayarak Azure rol tabanlı erişim denetimi (Azure RBAC) sağlayabilirsiniz.
Azure Haritalar için kullanılabilir Azure rol tanımlarını görüntülemek için bkz. Yerleşik Azure Haritalar rol tanımlarını görüntüleme.
Oluşturulan yönetilen kimliğe veya hizmet sorumlusuna kullanılabilir bir Azure Haritalar rolü atama hakkında ayrıntılı adımlar için bkz. Azure portalını kullanarak Azure rolleri atama
Büyük miktarda kullanıcının Azure Haritalar uygulamasını ve kaynak erişimini verimli bir şekilde yönetmek için bkz. Microsoft Entra grupları.
Önemli
Kullanıcıların bir uygulamada kimlik doğrulamasına izin verebilmesi için, kullanıcıların önce Microsoft Entra Kimliği'nde oluşturulması gerekir. Daha fazla bilgi için bkz. Microsoft Entra ID kullanarak kullanıcı ekleme veya silme.
Kullanıcılar için büyük bir dizini etkili bir şekilde yönetme hakkında bilgi edinmek için bkz . Microsoft Entra Id.
Uyarı
Azure Haritalar yerleşik rol tanımları, birçok Azure Haritalar REST API'sine çok büyük bir yetkilendirme erişimi sağlar. API erişimini en düşük düzeyde kısıtlamak için bkz . Özel rol tanımı oluşturma ve sistem tarafından atanan kimliği özel rol tanımına atama. Bu, uygulamanın Azure Haritalar erişmesi için gereken en düşük ayrıcalığı sağlar.
Sonraki adımlar
Web uygulaması senaryosu hakkında daha fazla bilgi:
Azure Haritalar hesabınız için API kullanım ölçümlerini bulun:
Microsoft Entra ID'yi Azure Haritalar ile tümleştirmeyi gösteren örnekleri keşfedin: