Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menginisialisasi adaptor sinkronisasi kata sandi ke sistem ENTSSO.
Syntax
HRESULT InitializeAdapter(
BSTR strAdapterName,
ULONG lFlags,
ULONGLONG* hNotifyEvent,
GUID* guidTrackingId);
Parameter-parameternya
bstrAdapterName
[di] Nama adaptor unik.
ulFlags
[di] Kombinasi bitwise dari nilai SSO_NOTIFICATION_FLAG .
phNotifyEvent
[out] Ketika metode ini kembali, berisi handel peristiwa yang dibuat oleh PS Helper. Anda harus melemparkan nilai pengembalian ke HANDLE saat dikembalikan, karena MIDL tidak mendukung jenis data HANDLE. Parameter ini dapat berupa NULL jika handel peristiwa tidak diperlukan oleh adaptor.
pguidTrackingId
[out] Ketika metode ini kembali, berisi ID pelacakan yang dihasilkan oleh ENTSSO. ID pelacakan digunakan untuk tujuan audit. Parameter ini dapat berupa NULL jika ID pelacakan tidak diperlukan oleh adaptor.
Mengembalikan Nilai
Metode ini mengembalikan HRESULT yang menunjukkan apakah selesai dengan benar. Untuk informasi selengkapnya, lihat bagian Nilai Kesalahan.
Nilai Kesalahan
Metode ini mengembalikan HRESULT yang berisi salah satu nilai dalam tabel berikut.
| Nilai | Description |
|---|---|
| S_OK | Inisialisasi berhasil. |
| S_FALSE | Inisialisasi berhasil, tetapi merupakan koneksi ulang. Untuk informasi selengkapnya, lihat bagian Keterangan. |
| E_ACCESSDENIED | Akses ditolak. |
| ENTSSO_E_NO_SERVER | Tidak dapat menghubungi server ENTSSO. Periksa apakah layanan ENTSSO sedang berjalan. |
Komentar
Sebelum memanggil InitializeAdapter, Anda harus memasukkan nama adaptor yang relevan ke dalam ENTSSO.
InitializeAdapter harus menjadi metode pertama yang dipanggil adaptor Anda, karena Anda tidak dapat memanggil metode ISSONotification lainnya sebelum Anda memanggil InitializeAdapter. Anda tidak boleh memanggil InitializeAdapter lagi sampai Anda memanggil ShutdownAdapter. Namun, setelah Anda mematikan adaptor, Anda dapat memanggil InitializeAdapter kapan saja untuk menyambungkan kembali.
InitializeAdapter memulai komunikasi antara Pembantu PS dan adaptor. Saat adaptor Anda memanggil InitializeAdapter, Pembantu PS memanggil layanan Enterprise Single Sign-On (ENTSSO) melalui LRPC terenkripsi. Dengan menggunakan nama adaptor, layanan ENTSSO memberikan atau menolak akses berdasarkan akun akses yang ditentukan untuk adaptor saat ini.
Anda harus telah memulai layanan ENTSSO sebelum memanggil InitializeAdapter. PS Helper tidak dapat memulai ENTSSO secara otomatis karena proses adaptor mungkin tidak berjalan dengan hak istimewa yang memadai untuk memulai layanan. Oleh karena itu, adaptor Anda harus memulai semua komunikasi antara adaptor dan ENTSSO.
PS Helper pertama-tama membuat koneksi dengan layanan ENTSSO, lalu membuat peristiwa bernama. PS Helper kemudian meneruskan peristiwa bernama ke layanan ENTSSO. ENTSSO menggunakan sinyal peristiwa ke PS Helper ketika pemberitahuan tiba untuk adaptor. ENTSSO mengembalikan peristiwa ke adaptor sehingga adaptor dapat menunggu pada peristiwa, atau mengabaikan peristiwa dan mengizinkan Pembantu PS untuk menunggu sebagai gantinya. Ini memberikan lebih banyak fleksibilitas pada adaptor untuk model utas adaptor. Kejadian ini berlaku untuk adaptor hingga ENTSSO menyelesaikan pemrosesan yang dimulai oleh panggilan ke ShutdownAdapter.
Layanan ENTSSO menerima panggilan prosedur jarak jauh awal (RPC) dari Pembantu PS jika ENTSSO berjalan. ENTSSO kemudian melakukan pemeriksaan akses. Jika ENTSSO tidak dapat mengakses database untuk mendapatkan informasi konfigurasi adaptor, maka ENTSSO mengembalikan peristiwa E_ACCESSDENIED. Jika ENTSSO memiliki informasi konfigurasi adaptor, tetapi saat ini tidak dapat menghubungi database, maka ENTSSO terus menerima pemberitahuan perubahan kata sandi dan buffer pemberitahuan secara lokal dan mengenkripsi pemberitahuan dalam file sementara lokal.
InitializeAdapter juga mengembalikan E_ACCESSDENIED jika adaptor dihapus atau dinonaktifkan.
Untuk semua kesalahan, informasi yang lebih rinci akan tersedia di Log Peristiwa Windows.
Diasumsikan bahwa adaptor mengetahui nama yang sesuai untuk digunakan saat berkomunikasi dengan ENTSSO.
InitializeAdapter berutas tunggal. Semua utas lain yang memanggil InitializeAdapter diblokir hingga InitializeAdapter selesai. Ini juga disinkronkan dengan metode ShutdownAdapter .
Ada kemungkinan bahwa proses adaptor berakhir sebelum Anda dapat mengeluarkan ShutdownAdapter. Dalam hal ini, dan jika ENTSSO menerima InitializeAdapter lain sebelum ENTSSO menerima ShutdownAdapter yang sesuai, ENTSSO memperlakukan panggilan ShutdownAdapter kedua sebagai koneksi ulang. Dalam hal ini, ENTSSO membersihkan dan membatalkan peristiwa yang ada, dan membuat handel baru. ENTSSO juga menyelesaikan ReceiveNotifications yang tertunda untuk handel peristiwa lama dengan pemberitahuan matikan.
Dalam kasus koneksi ulang, ID pelacakan baru dikembalikan dari InitializeAdapter. ENTSSO mengembalikan ID pelacakan baru karena ID pelacakan yang dikembalikan dari InitializeAdapter dapat dianggap sebagai ID sesi. Selanjutnya, ENTSSO menerbitkan kembali pemberitahuan yang tertunda (tetapi tidak dikonfirmasi) ke adaptor.
Persyaratan
Platform: Windows
Lihat Juga
ANTARMUKA ISSONotification (COM)
Anggota ISSONotification
Pemrograman dengan Akses Menyeluruh Enterprise