Hızlı Başlangıç: Duyarlılık etiketlerini listeleme (C++)

Bu Hızlı Başlangıçta, kuruluşunuz için yapılandırılan duyarlılık etiketlerini listelemek için MIP Dosya SDK'sını nasıl kullanacağınız gösterilmektedir.

Ön koşullar

Henüz yapmadıysanız devam etmeden önce aşağıdaki önkoşulları tamamladığınızdan emin olun:

Duyarlılık etiketlerini listelemek için mantık ekleme

Dosya altyapısı nesnesini kullanarak kuruluşunuzun duyarlılık etiketlerini listelemek için mantık ekleyin.

  1. Önceki "Hızlı Başlangıç: İstemci uygulaması başlatma (C++)" makalesinde oluşturduğunuz Visual Studio çözümünü açın.

  2. Çözüm Gezgini kullanarak, yönteminin uygulanmasını main() içeren projenizde .cpp dosyasını açın. Varsayılan olarak, proje oluşturma sırasında belirttiğiniz, onu içeren projeyle aynı ada sahiptir.

  3. Aşağıdaki yönergeyi using mip::FileEngine;dosyasının using en üstüne yakınına ekleyin:

    using std::endl;
    
  4. Gövdenin main() sonuna doğru, son catch bloğun kapanış küme ayraçlarının } altına ve yukarıdaki return 0; (önceki Hızlı Başlangıçta kaldığınız yer) aşağıdaki kodu ekleyin:

    // List sensitivity labels
    cout << "\nSensitivity labels for your organization:\n";
    auto labels = engine->ListSensitivityLabels();
    for (const auto& label : labels)
    {
       cout << label->GetName() << " : " << label->GetId() << endl;
    
       for (const auto& child : label->GetChildren())
       {
         cout << "->  " << child->GetName() << " : " << child->GetId() << endl;
       }
    }
    system("pause");
    

Erişim belirteçleri oluşturmak için PowerShell betiği oluşturma

Uygulamanızda AuthDelegateImpl::AcquireOAuth2Token SDK tarafından istenen erişim belirteçleri oluşturmak için aşağıdaki PowerShell betiğini kullanın. Betik, "MIP SDK Kurulumu ve yapılandırması" bölümünde daha önce yüklediğiniz ADAL.PS modülünden cmdlet'ini kullanır Get-ADALToken .

  1. Bir PowerShell Betiği dosyası (.ps1 uzantısı) oluşturun ve aşağıdaki betiği kopyalayıp dosyaya yapıştırın:

    • $authority ve $resourceUrl daha sonra, aşağıdaki bölümde güncelleştirilecektir.
    • ve $redirectUrideğerlerini, Microsoft Entra uygulama kaydınızda belirttiğiniz değerlerle eşleşecek şekilde güncelleştirin$appId.
    $authority = '<authority-url>'                   # Specified when SDK calls AcquireOAuth2Token()
    $resourceUrl = '<resource-url>'                  # Specified when SDK calls AcquireOAuth2Token()
    $appId = '0edbblll-8773-44de-b87c-b8c6276d41eb'  # App ID of the Azure AD app registration
    $redirectUri = 'bltest://authorize'              # Redirect URI of the Azure AD app registration
    $response = Get-ADALToken -Resource $resourceUrl -ClientId $appId -RedirectUri $redirectUri -Authority $authority -PromptBehavior:RefreshSession
    $response.AccessToken | clip                     # Copy the access token text to the clipboard
    
  2. Betik dosyasını kaydederek istemci uygulamanız tarafından istendiğinde daha sonra çalıştırabilirsiniz.

Uygulamayı derleme ve test etme

Son olarak, istemci uygulamanızı derleyin ve test edin.

  1. İstemci uygulamanızı derlemek için F6 (Derleme Çözümü) kullanın. Derleme hatanız yoksa, uygulamanızı çalıştırmak için F5 (Hata ayıklamayı başlat) kullanın.

  2. Projeniz başarıyla derlenip çalıştırılırsa, SDK yönteminizi AcquireOAuth2Token() her çağırdığında uygulama bir erişim belirteci ister. Birden çok kez istenirse ve istenen değerler aynıysa, önceden oluşturulmuş bir belirteci yeniden kullanabilirsiniz.

  3. İstem için bir erişim belirteci oluşturmak için PowerShell betiğinize dönün ve:

    • ve $resourceUrl değişkenlerini güncelleştirin$authority. Bunlar, 2. adımda konsol çıkışında belirtilen değerlerle eşleşmelidir. Bu değerler MIP SDK'sı tarafından parametresinde challengeAcquireOAuth2Token()sağlanır:

    • PowerShell betiğini çalıştırın. Cmdlet, Get-ADALToken aşağıdaki örneğe benzer şekilde bir Microsoft Entra kimlik doğrulama istemi tetikler. 2. adımda konsol çıkışında sağlanan hesabın aynısını belirtin. Oturum başarıyla açıldıktan sonra erişim belirteci panoya yerleştirilir.

      Visual Studio acquire token sign-in

    • Uygulamanın oturum açma hesabı altında çalışırken MIP API'lerine erişmesine izin vermek için de onay vermeniz gerekebilir. Microsoft Entra uygulama kaydı önceden onaylanmamışsa ("MIP SDK kurulumu ve yapılandırmasında belirtildiği gibi") veya farklı bir kiracıdan (uygulamanızın kayıtlı olduğu hesap dışında) bir hesapla oturum açtığınızda bu durum ortaya çıkar. Onayınızı kaydetmek için Kabul Et'e tıklamanız yeterlidir.

      Visual Studio consent

  4. Erişim belirtecini 2. adımdaki isteme yapıştırdıktan sonra konsol çıkışınız aşağıdaki örneğe benzer şekilde duyarlılık etiketlerini göstermelidir:

    Non-Business : 87ba5c36-17cf-14793-bbc2-bd5b3a9f95cz
    Public : 83867195-f2b8-2ac2-b0b6-6bb73cb33afz
    General : f42a3342-8706-4288-bd31-ebb85995028z
    Confidential : 074e457c-5848-4542-9a6f-34a182080e7z
    Highly Confidential : f55c2dea-db0f-47cd-8520-a52e1590fb6z
    
    Press any key to continue . . .
    

    Dekont

    Bir veya daha fazla duyarlılık etiketinin kimliğini (örneğin, f42a3342-8706-4288-bd31-ebb85995028z) kopyalayın ve sonraki Hızlı Başlangıçta kullanacağınız şekilde kaydedin.

Sorun giderme

C++ uygulamasını yürütme sırasında karşılaşılan sorunlar

Özet Hata iletisi Çözüm
Hatalı erişim belirteci Bir özel durum oluştu... Erişim belirteci yanlış mı/süresi dolmuş mu?

Başarısız API çağrısı: profile_add_engine_async Başarısız: [class mip::P olicySyncException] başarısız ilke alma, İstek http durum koduyla başarısız oldu: 401, x-ms-diagnostics: [2000001; reason="İstekle gönderilen OAuth belirteci ayrıştırılamıyor."; error_category="invalid_token"], correlationId:[35bc0023-3727-4eff-8062-000006d5d672]'

C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe (işlem 29924) 0 koduyla çıktı.

Bu pencereyi kapatmak için herhangi bir tuşa basın. . .
Projeniz başarıyla derlenmişse ancak sola benzer bir çıkış görüyorsanız, yönteminizde büyük olasılıkla geçersiz veya süresi dolmuş bir belirteciniz AcquireOAuth2Token() vardır. Erişim belirteçleri oluşturmak ve erişim belirtecini yeniden oluşturmak, yeniden güncelleştirmek AcquireOAuth2Token() ve yeniden derlemek/yeniden test etmek için PowerShell betiği oluşturma bölümüne geri dönün. Ayrıca tek sayfalı jwt.ms web uygulamasını kullanarak belirteci ve taleplerini inceleyip doğrulayabilirsiniz.
Duyarlılık etiketleri yapılandırılmadı yok Projeniz başarıyla derleniyorsa ancak konsol penceresinde çıkışınız yoksa kuruluşunuzun duyarlılık etiketlerinin doğru yapılandırıldığından emin olun. Ayrıntılar için "Etiket taksonomisi ve koruma ayarlarını tanımlama" altındaki MIP SDK kurulumu ve yapılandırması bölümüne bakın.

Sonraki Adımlar

Kuruluşunuz için duyarlılık etiketlerini listelemeyi öğrendiğinize göre sonraki hızlı başlangıcı deneyin: