Azure uzamsal Tutturucuların kimlik doğrulaması ve yetkilendirmesi
Bu makalede, uygulamanızın veya Web hizmetinizin Azure uzamsal bağlayıcılarının kimliğini doğrulayabilmeniz için çeşitli yollar öğreneceksiniz. ayrıca, uzamsal bağlayıcı hesaplarınıza erişimi denetlemek için Azure Active Directory (azure AD) içinde Azure rol tabanlı erişim denetimi (azure RBAC) kullanma yolları hakkında bilgi edineceksiniz.
Genel Bakış

Belirli bir Azure uzamsal çıpası hesabına erişmek için, istemcilerin öncelikle Azure Karma Gerçeklik güvenlik belirteci hizmeti 'nden (STS) bir erişim belirteci alması gerekir. STS 'den edinilen belirteçlerin ömrü 24 saattir. Bu kişiler, uzamsal bağlayıcı hizmetlerinin hesapta yetkilendirme kararları almak için kullandığı ve yalnızca yetkili sorumluların hesaba erişebildiğinden emin olmak için kullandıkları bilgileri içerirler.
Erişim belirteçleri, Azure AD tarafından verilen hesap anahtarları veya belirteçler için Exchange 'de elde edilebilir.
Hesap anahtarları, Azure uzamsal bağlayıcı hizmetini kullanmaya hızlıca başlamanıza olanak tanır. Ancak uygulamanızı üretime dağıtmadan önce Azure AD kimlik doğrulamasını kullanmak için uygulamanızı güncelleştirmeniz önerilir.
Azure AD kimlik doğrulama belirteçlerini iki şekilde edinebilirsiniz:
- Kurumsal bir uygulama oluşturuyorsanız ve şirketiniz kimlik sistemi olarak Azure AD kullanıyorsa, uygulamanızda Kullanıcı tabanlı Azure AD kimlik doğrulamasını kullanabilirsiniz. Daha sonra mevcut Azure AD güvenlik gruplarınızı kullanarak uzamsal bağlayıcı hesaplarınıza erişim izni verirsiniz. Ayrıca, kuruluşunuzdaki kullanıcılara doğrudan erişim izni verebilirsiniz.
- Aksi takdirde, Azure AD belirteçlerini uygulamanızı destekleyen bir Web hizmetinden edinmenizi öneririz. Bu yöntemi üretim uygulamaları için öneririz, çünkü istemci uygulamanızda Azure uzamsal bağlantılarına erişim için kimlik bilgilerini gömmenizi önleyebilirsiniz.
Hesap anahtarları
Başlamak için en kolay yol, Azure uzamsal bağlayıcı hesabınıza erişim için hesap anahtarlarını kullanmaktır. Azure portal hesap anahtarlarınızı alabilirsiniz. Hesabınıza gidin ve anahtarlar sekmesini seçin:

İki anahtar mevcuttur. Her ikisi de uzamsal bağlayıcı hesabına erişim için aynı anda geçerlidir. Hesaba erişmek için kullandığınız anahtarı düzenli olarak güncelleştirmeniz önerilir. İki ayrı geçerli anahtarın olması, bu güncelleştirmelerin kesinti olmadan yapılmasını mümkün değildir. Birincil anahtarı ve ikincil anahtarı alternatif olarak güncelleştirmeniz yeterlidir.
SDK, hesap anahtarları aracılığıyla kimlik doğrulaması için yerleşik desteğe sahiptir. Yalnızca AccountKey nesneniz üzerinde özelliğini ayarlamanız gerekir cloudSession :
this.cloudSession.Configuration.AccountKey = @"MyAccountKey";
Bu özelliği ayarladıktan sonra SDK, bir erişim belirtecinin hesap anahtarının değişimini ve uygulamanız için gerekli belirteçlerin önbelleğe alınmasını işler.
Uyarı
Yalnızca geliştirme/prototip yazma sırasında, hızlı ekleme için hesap anahtarlarını kullanmanızı öneririz. Uygulamanızı, içindeki eklenmiş bir hesap anahtarıyla üretime göndermek için önerilmez. Bunun yerine, daha sonra açıklanan Kullanıcı tabanlı veya hizmet tabanlı Azure AD kimlik doğrulaması yaklaşımlarını kullanın.
Azure AD Kullanıcı kimlik doğrulaması
Azure Active Directory kullanıcıları hedefleyen uygulamalar için, kullanıcı için bir Azure AD belirteci kullanmanızı öneririz. Bu belirteci msalkullanarak elde edebilirsiniz. Bir uygulamayı kaydetmeye yönelik hızlı başlangıçiçindeki adımları izleyin ve şunları yapın:
Azure portal
Uygulamanızı Azure AD 'ye yerel bir uygulama olarak kaydedin. Kayıt kapsamında, uygulamanızın çok kiracılı olup olmayacağını belirlemeniz gerekir. Ayrıca, uygulamanız için izin verilen yeniden yönlendirme URL 'Lerini sağlamanız gerekir.
API izinleri sekmesine gidin.
Izin Ekle' yi seçin.
- Kuruluşumun kullandığı API 'Lerde karma gerçeklik kaynak sağlayıcısını seçin.
- Temsilci izinleri seçin.
- Mixedreality altında mixedreality. SignIn ' ı seçin.
- Izin Ekle' yi seçin.
Yönetici Izni ver' i seçin.
Kaynağına erişim vermek istediğiniz uygulamaya veya kullanıcılara bir asa RBAC rolü atayın. Uygulamanızın kullanıcılarının ASA hesabına göre farklı rollere sahip olmasını istiyorsanız, Azure AD 'de birden çok uygulamayı kaydedin ve her birine ayrı bir rol atayın. Ardından, kullanıcılarınız için doğru rolü kullanmak üzere yetkilendirme mantığınızı uygulayın. Ayrıntılı rol atama adımları için bkz. Azure Portal kullanarak Azure rolleri atama.
Kodunuzda
- MSAL ' de ISTEMCI kimliği ve redirecturı PARAMETRELERI için kendi Azure AD uygulamanızın uygulama KIMLIĞI ve yeniden yönlendirme URI 'sini kullandığınızdan emin olun.
- Kiracı bilgilerini ayarla:
- Uygulamanız yalnızca Kuruluşumu destekliyorsa, bu DEĞERI kiracı kimliğiniz veya kiracı adınızla değiştirin. Örneğin, contoso.microsoft.com.
- Uygulamanız herhangi bir kuruluş dizinindeki hesapları destekliyorsa, bu değeri kuruluşlar ile değiştirin.
- Uygulamanız tüm Microsoft hesabı kullanıcıları destekliyorsa, bu değeri ortak ile değiştirin.
- Belirteç isteğiniz üzerinde, kapsamını olarak ayarlayın
https://sts.mixedreality.azure.com//.default. Bu kapsam, Azure AD 'ye, uygulamanızın karma gerçeklik güvenlik belirteci hizmeti (STS) için bir belirteç istediğini gösterir.
Bu adımları tamamladıktan sonra, uygulamanız MSAL bir Azure AD belirteci ile elde edebilmelidir. Bu Azure AD belirtecini, authenticationToken bulut oturumu yapılandırma nesneniz üzerinde olarak ayarlayabilirsiniz:
this.cloudSession.Configuration.AuthenticationToken = @"MyAuthenticationToken";
Azure AD hizmeti kimlik doğrulaması
Azure uzamsal çıpası kullanan uygulamaları üretime dağıtmak için, kimlik doğrulama isteklerini Broker 'lara sahip bir arka uç hizmeti kullanmanızı öneririz. İşleme genel bir bakış aşağıda verilmiştir:

Burada, uygulamanızın arka uç hizmetinde kimlik doğrulaması yapmak için kendi mekanizmasını kullandığı varsayılır. (Örneğin, bir Microsoft hesabı, PlayFab, Facebook, Google ID veya özel Kullanıcı adı ve parola.) Kullanıcılarınızın arka uç hizmetinize kimlik doğrulamasından geçtikten sonra, bu hizmet bir Azure AD belirtecini alabilir, Azure uzamsal Tutturucuların erişim belirteci için Exchange 'e geri döndürebilir ve istemci uygulamanıza geri geri dönebilir.
Azure AD erişim belirteci msalaracılığıyla alınır. Uygulamayı kaydetme hızlıbaşlangıcı bölümündeki adımları izleyerek şunları yapın:
Azure portal
- Uygulamanızı Azure AD 'ye kaydedin:
- Azure portal Azure Active Directory' i seçin ve Uygulama kayıtları' yı seçin.
- Yeni kayıt seçeneğini belirleyin.
- Uygulamanızın adını girin, uygulama türü olarak Web uygulaması/API ' yi seçin ve hizmetinizin kimlik doğrulama URL 'sini girin. Oluştur’u seçin.
- uygulamada Ayarlar' yi seçin ve ardından sertifikalar ve gizlilikler sekmesini seçin. Yeni bir istemci parolası oluşturun, bir süre seçin ve ardından Ekle' yi seçin. Gizli anahtar değerini kaydettiğinizden emin olun. Web hizmetinizin koduna dahil etmeniz gerekir.
- Kaynağına erişim vermek istediğiniz uygulamaya veya kullanıcılara bir asa RBAC rolü atayın. Uygulamanızın kullanıcılarının ASA hesabına göre farklı rollere sahip olmasını istiyorsanız, Azure AD 'de birden çok uygulamayı kaydedin ve her birine ayrı bir rol atayın. Ardından, kullanıcılarınız için doğru rolü kullanmak üzere yetkilendirme mantığınızı uygulayın. Ayrıntılı rol atama adımları için bkz. Azure Portal kullanarak Azure rolleri atama.
Kodunuzda
Not
Uzamsal bağlayıcı örnek uygulamalarınınbir parçası olarak kullanılabilen hizmet örneğini kullanabilirsiniz.
- MSAL'de istemci kimliği, gizli ve RedirectUri parametreleri olarak kendi Azure AD uygulamanıza ait uygulama kimliğini, uygulama gizli kimliğini ve yeniden yönlendirme URI'sini kullanmaya emin olun.
- MSAL'deki yetkili parametresinde kiracı kimliğini kendi Azure AD kiracı kimliğiniz olarak ayarlayın.
- Belirteç isteğiniz üzerinde kapsamı olarak
https://sts.mixedreality.azure.com//.defaultayarlayın.
Bu adımları tamamlandıktan sonra arka uç hizmetiniz bir Azure AD belirteci alabilir. Daha sonra istemciye geri dönmek için bir MR belirteci ile takas eder. MR belirteci almak için Azure AD belirteci kullanma, REST çağrısı aracılığıyla yapılır. Örnek bir çağrı şu şekildedir:
GET https://sts.mixedreality.azure.com/Accounts/35d830cb-f062-4062-9792-d6316039df56/token HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni<truncated>FL8Hq5aaOqZQnJr1koaQ
Host: sts.mixedreality.azure.com
Connection: Keep-Alive
HTTP/1.1 200 OK
Date: Sun, 24 Feb 2019 08:00:00 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 1153
Accept: application/json
MS-CV: 05JLqWeKFkWpbdY944yl7A.0
{"AccessToken":"eyJhbGciOiJSUzI1NiIsImtpZCI6IjI2MzYyMTk5ZTI2NjQxOGU4ZjE3MThlM2IyMThjZTIxIiwidHlwIjoiSldUIn0.eyJqdGkiOiJmMGFiNWIyMy0wMmUxLTQ1MTQtOWEzNC0xNzkzMTA1NTc4NzAiLCJjYWkiOiIzNWQ4MzBjYi1mMDYyLTQwNjItOTc5Mi1kNjMxNjAzOWRmNTYiLCJ0aWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJhaWQiOiIzNWQ4MzBjYi1mMDYyLTQwNjItOTc5Mi1kNjMxNjAzOWRmNTYiLCJhYW8iOi0xLCJhcHIiOiJlYXN0dXMyIiwicmlkIjoiL3N1YnNjcmlwdGlvbnMvNzIzOTdlN2EtNzA4NC00ODJhLTg3MzktNjM5Y2RmNTMxNTI0L3Jlc291cmNlR3JvdXBzL3NhbXBsZV9yZXNvdXJjZV9ncm91cC9wcm92aWRlcnMvTWljcm9zb2Z0Lk1peGVkUmVhbGl0eS9TcGF0aWFsQW5jaG9yc0FjY291bnRzL2RlbW9fYWNjb3VudCIsIm5iZiI6MTU0NDU0NzkwMywiZXhwIjoxNTQ0NjM0MzAzLCJpYXQiOjE1NDQ1NDc5MDMsImlzcyI6Imh0dHBzOi8vbXJjLWF1dGgtcHJvZC50cmFmZmljbWFuYWdlci5uZXQvIiwiYXVkIjoiaHR0cHM6Ly9tcmMtYW5jaG9yLXByb2QudHJhZmZpY21hbmFnZXIubmV0LyJ9.BFdyCX9UJj0i4W3OudmNUiuaGgVrlPasNM-5VqXdNAExD8acFJnHdvSf6uLiVvPiQwY1atYyPbOnLYhEbIcxNX-YAfZ-xyxCKYb3g_dbxU2w8nX3zDz_X3XqLL8Uha-rkapKbnNgxq4GjM-EBMCill2Svluf9crDmO-SmJbxqIaWzLmlUufQMWg_r8JG7RLseK6ntUDRyDgkF4ex515l2RWqQx7cw874raKgUO4qlx0cpBAB8cRtGHC-3fA7rZPM7UQQpm-BC3suXqRgROTzrKqfn_g-qTW4jAKBIXYG7iDefV2rGMRgem06YH_bDnpkgUa1UgJRRTckkBuLkO2FvA"}
Yetkilendirme üst bilgisi şu şekilde biçimlendirildi: Bearer <Azure_AD_token>
Yanıt, MR belirteci düz metin biçiminde içerir.
Bu MR belirteci daha sonra istemciye döndürülür. Ardından istemci uygulamanız bunu bulut oturumu yapılandırmasında erişim belirteci olarak ayarlar:
this.cloudSession.Configuration.AccessToken = @"MyAccessToken";
Azure rol tabanlı erişim denetimi
Hizmetinizin uygulamalara, hizmetlere veya Azure AD kullanıcılarına verilen erişim düzeyini denetlemenize yardımcı olmak için, bu önceden var olan rolleri Azure Spatial Anchors atabilirsiniz:
- Spatial Anchors Hesabı Sahibi. Bu role sahip uygulamalar veya kullanıcılar uzamsal sabit noktaları oluşturabilir, bunları sorgular ve silebilir. Hesap anahtarlarını kullanarak hesabınız için kimlik doğrulaması Spatial Anchors hesap sahibi rolü, kimliği doğrulanmış sorumluya atanır.
- Spatial Anchors Katkıda Bulunanı. Bu role sahip uygulamalar veya kullanıcılar uzamsal sabit noktaları oluşturabilir ve bunlar için sorgu oluşturabilir ancak bunları silemez.
- Spatial Anchors Okuyucusu. Bu role sahip uygulamalar veya kullanıcılar yalnızca uzamsal sabit noktaları sorgular. Yenilerini oluşturamaz, mevcut olanları silemez veya meta verileri güncelleştirilemez. Bu rol genellikle bazı kullanıcıların ortamı yaptığı ancak diğerlerinin yalnızca daha önce ortama yerleştirilen yer noktalarını çağıranı uygulamalar için kullanılır.
Sonraki adımlar
Azure Spatial Anchors ile ilk Spatial Anchors: