Membuat token autentikasi

Dalam artikel ini, Anda mempelajari cara membuat token autentikasi perwakilan layanan, token autentikasi pengguna, dan token refresh pengguna.

Daftarkan aplikasi Anda dengan Microsoft Entra ID

  1. Untuk menyediakan platform Azure Data Manager for Energy, Anda harus mendaftarkan aplikasi Anda di halaman pendaftaran aplikasi portal Azure. Anda dapat menggunakan akun Microsoft atau akun kerja atau sekolah untuk mendaftarkan aplikasi. Untuk langkah-langkah tentang cara mengonfigurasi, lihat Mendaftarkan dokumentasi aplikasi Anda.

  2. Di bagian gambaran umum aplikasi, jika tidak ada URI pengalihan yang ditentukan, Anda dapat memilih Tambahkan Web platform>, tambahkan http://localhost:8080, dan pilih Simpan.

    Cuplikan layar yang memperlihatkan penambahan URI ke aplikasi.

Mengambil parameter

Anda juga dapat menemukan parameter setelah aplikasi terdaftar di portal Azure.

Temukan id-penyewa

  1. Buka akun Microsoft Entra untuk organisasi Anda. Anda dapat mencari ID Microsoft Entra di bilah pencarian portal Azure.

  2. Pada tab Gambaran Umum , di bawah bagian Informasi dasar, temukan ID Penyewa.

  3. tenant-ID Salin nilai dan tempelkan ke editor yang akan digunakan nanti.

    Cuplikan layar yang memperlihatkan pencarian ID Microsoft Entra.

    Cuplikan layar yang memperlihatkan menemukan ID penyewa.

Temukan id klien

adalah client-id nilai yang sama dengan yang Anda gunakan untuk mendaftarkan aplikasi Anda selama provisi instans Azure Data Manager for Energy Anda. Ini sering disebut sebagai app-id.

  1. Buka halaman Gambaran Umum Azure Data Manager for Energy. Pada panel Esensial , temukan ID klien.

  2. client-id Salin nilai dan tempelkan ke editor yang akan digunakan nanti.

  3. Saat ini, satu instans Azure Data Manager for Energy memungkinkan satu app-id untuk dikaitkan dengan satu instans.

    Penting

    client-id yang diteruskan sebagai nilai dalam panggilan API Pemberian Izin harus sama dengan yang digunakan untuk menyediakan instans Azure Data Manager for Energy Anda.

    Cuplikan layar yang memperlihatkan menemukan ID klien untuk aplikasi terdaftar Anda.

Temukan rahasia klien

client-secret adalah nilai string yang dapat digunakan aplikasi Anda sebagai pengganti sertifikat untuk mengidentifikasi dirinya sendiri. Terkadang disebut sebagai kata sandi aplikasi.

  1. Buka Pendaftaran aplikasi.

  2. Di bawah bagian Kelola, pilih Sertifikat & rahasia.

  3. Pilih Rahasia klien baru untuk membuat rahasia klien untuk ID klien yang Anda gunakan untuk membuat instans Azure Data Manager for Energy.

  4. Catat Nilai rahasia untuk digunakan nanti dalam kode aplikasi klien Anda.

    Token app-id akses dan client-secret memiliki akses administrator infrastruktur ke instans.

    Perhatian

    Jangan lupa untuk merekam nilai rahasia. Nilai rahasia ini tidak pernah ditampilkan lagi setelah Anda meninggalkan halaman ini untuk pembuatan rahasia klien.

    Cuplikan layar yang memperlihatkan menemukan rahasia klien.

Temukan uri pengalihan

Aplikasi redirect-uri Anda, tempat aplikasi Anda mengirim dan menerima respons autentikasi. Ini harus sama persis dengan salah satu URI pengalihan yang Anda daftarkan di portal, kecuali bahwa itu harus dikodekan URL.

  1. Buka Pendaftaran aplikasi.
  2. Di bawah bagian Kelola, pilih Autentikasi.
  3. redirect-uri Ambil (atau URL balasan) agar aplikasi Anda menerima respons dari ID Microsoft Entra.

Cuplikan layar yang memperlihatkan uri pengalihan.

Temukan adme-url untuk instans Azure Data Manager for Energy Anda

  1. Buat instans Azure Data Manager for Energy menggunakan yang dihasilkan di client-id atas.

  2. Buka halaman Gambaran Umum Azure Data Manager for Energy Anda di portal Azure.

  3. Pada panel Esensial , salin URI.

    Cuplikan layar yang memperlihatkan menemukan URI untuk instans Azure Data Manager for Energy.

Temukan data-partition-id

Anda memiliki dua cara untuk mendapatkan daftar partisi data di instans Azure Data Manager for Energy Anda.

  • Opsi 1: Di bawah bagian Tingkat Lanjut dari Antarmuka Pengguna Azure Data Manager for Energy Anda, buka item menu Partisi Data.

    Cuplikan layar yang memperlihatkan menemukan data-partition-id dari instans Azure Data Manager for Energy.

  • Opsi 2: Pada panel Esensial halaman Gambaran Umum Azure Data Manager for Energy Anda, di bawah bidang Partisi Data, pilih tampilan.

    Cuplikan layar yang memperlihatkan menemukan data-partition-id dari halaman Gambaran Umum instans Azure Data Manager for Energy.

    Cuplikan layar yang memperlihatkan menemukan data-partition-id dari halaman Gambaran Umum instans Azure Data Manager for Energy dengan partisi data.

Menemukan domain

Secara default, domain adalah dataservices.energy untuk semua instans Azure Data Manager for Energy.

Hasilkan token autentikasi id klien

Jalankan perintah curl berikut di Azure Cloud Bash setelah Anda mengganti nilai tempat penampung dengan nilai terkait yang ditemukan sebelumnya di langkah-langkah sebelumnya. Token akses dalam respons adalah client-id token autentikasi.

Format permintaan

curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=<client-id>.default' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'client_secret=<client-secret>' \
--data-urlencode 'resource=<client-id>'

Respons sampel

    {
        "token_type": "Bearer",
        "expires_in": 86399,
        "ext_expires_in": 86399,
        "access_token": "abcdefgh123456............."
    }

Membuat token autentikasi pengguna

Menghasilkan token autentikasi pengguna adalah proses dua langkah.

Mendapatkan kode otorisasi

Langkah pertama untuk mendapatkan token akses untuk banyak alur OpenID Koneksi (OIDC) dan OAuth 2.0 adalah mengalihkan pengguna ke titik akhir platform identitas Microsoft/authorize. MICROSOFT Entra ID memasukkan pengguna dan meminta persetujuan mereka untuk izin permintaan aplikasi Anda. Dalam alur pemberian kode otorisasi, setelah persetujuan diperoleh, ID Microsoft Entra mengembalikan kode otorisasi ke aplikasi Anda yang dapat ditukarkan di titik akhir platform identitas Microsoft /token untuk token akses.

  1. Siapkan format permintaan menggunakan parameter .

    https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>
    &response_type=code
    &redirect_uri=<redirect-uri>
    &response_mode=query
    &scope=<client-id>%2f.default&state=12345&sso_reload=true
    
  2. Setelah mengganti parameter, Anda dapat menempelkan permintaan di URL browser apa pun dan memilih Enter.

  3. Masuk ke portal Azure Anda jika Anda belum masuk.

  4. Anda mungkin melihat "Hmmm... tidak dapat menjangkau halaman ini" pesan kesalahan di browser. Anda dapat mengabaikannya.

    Cuplikan layar pengalihan localhost.

  5. Browser mengalihkan ke http://localhost:8080/?code={authorization code}&state=... setelah autentikasi berhasil.

  6. Salin respons dari bilah URL browser dan ambil teks antara code= dan &state.

    http://localhost:8080/?code=0.BRoAv4j5cvGGr0...au78f&state=12345&session....
    
  7. Pertahankan ini authorization-code berguna untuk digunakan di masa mendatang.

    Parameter Deskripsi
    kode Kode otorisasi yang diminta aplikasi. Aplikasi dapat menggunakan kode otorisasi untuk meminta token akses untuk sumber daya target. Kode otorisasi berlangsung singkat. Biasanya, kode otorisasi kedaluwarsa setelah sekitar 10 menit.
    state Jika parameter status disertakan dalam permintaan, nilai yang sama akan muncul dalam respons. Aplikasi harus memverifikasi bahwa nilai status dalam permintaan dan respons adalah identik. Pemeriksaan ini membantu mendeteksi serangan CSRF terhadap klien.
    session_state Nilai unik yang mengidentifikasi sesi pengguna saat ini. Nilai ini adalah GUID, tetapi harus diperlakukan sebagai nilai buram yang diteruskan tanpa pemeriksaan.

Peringatan

Menjalankan URL di Postman tidak akan berfungsi karena memerlukan konfigurasi tambahan untuk pengambilan token.

Mendapatkan token autentikasi dan token refresh

Langkah kedua adalah mendapatkan token autentikasi dan token refresh. Aplikasi Anda menggunakan kode otorisasi yang diterima pada langkah sebelumnya untuk meminta token akses dengan mengirim permintaan POST ke /token titik akhir.

Format permintaan

  curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<client-id>
  &scope=<client-id>%2f.default openid profile offline_access
  &code=<authorization-code>
  &redirect_uri=<redirect-uri>
  &grant_type=authorization_code
  &client_secret=<client-secret>' 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token'

Respon sampel

{
  "token_type": "Bearer",
  "scope": "User.Read profile openid email",
  "expires_in": 4557,
  "access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkJuUXdJd0ZFc...",
  "refresh_token": "0.ARoAv4j5cvGGr0GRqy180BHbR8lB8cvIWGtHpawGN..."
}
Parameter Deskripsi
token_type Menunjukkan nilai jenis token. Satu-satunya jenis yang didukung microsoft Entra ID adalah Pembawa.
cakupan Daftar izin Microsoft Graph yang dipisahkan spasi yang berlaku untuk token akses.
Berakhir dalam Berapa lama token akses berlaku/valid (dalam detik).
access_token Token akses yang diminta. Aplikasi Anda dapat menggunakan token ini untuk memanggil Microsoft Graph.
refresh_token Token refresh OAuth 2.0. Aplikasi Anda dapat menggunakan token ini untuk memperoleh token akses tambahan setelah token akses saat ini kedaluwarsa. Token refresh berumur panjang dan dapat digunakan untuk mempertahankan akses ke sumber daya untuk jangka waktu yang lama.

Untuk informasi selengkapnya tentang membuat token akses pengguna dan menggunakan token refresh untuk menghasilkan token akses baru, lihat Membuat token refresh.

OSDUĀ® adalah merek dagang dari The Open Group.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang cara menggunakan token refresh yang dihasilkan, lihat: