Licencjonowanie w chmurze
W chmurze ochrona i licencjonowanie może być realizowana na wiele sposobów:
- Twórcy oprogramowania chcą umożliwić swoim użytkownikom dostęp do lokalnie zainstalowanego oprogramowania, przy czym sama licencją przechowywana jest w chmurze
- Twórcy oprogramowania dostarczają swoim użytkownikom rozwiązania SaaS dostępne w chmurze. Wymagane licencje mogą być powiązane z pojedynczym użytkownikiem lub określoną liczbą urządzeń
- Twórcy oprogramowania chcą, aby ich użytkownicy mieli niezawodne środki uwierzytelniania do korzystania z ich aplikacji SaaS
- Użytkownicy mogą chcieć instalować i uruchamiać oprogramowanie niezależnie w swoich własnych chmurach prywatnych
Licencje chmurowe dla lokalnych aplikacji
W tym scenariuszu oprogramowanie jest klasyczną aplikacją desktopową, którą sprzedajesz swoim użytkownikom jako plik do pobrania. Użytkownik pobiera nie tylko aplikację, ale także kod aktywacyjny, który generowany jest w CodeMeter License Central. Podczas jego tworzenia można określić, na ilu urządzeniach oprogramowanie może działać w tym samym czasie i jak długo może być używane bez stałego połączenia z Internetem.
Użytkownik instaluje oprogramowanie na komputerze. Przy pierwszym uruchomieniu zostanie poproszony o wprowadzenie kodu. Oprogramowanie komunikuje się z CodeMeter License Central i wysyła kod oraz cyfrowy identyfikator komputera (w postaci pliku WibuCmRaC) do chmury. CodeMeter License Central sprawdza, czy kod jest ważny, a jeśli tak, tworzy tymczasową licencję dla pamięci podręcznej offline. Licencja jest zwracana użytkownikowi (plik WibuCmRaU) i importowana lokalnie do CodeMeter Runtime. Kod jest również przechowywany lokalnie, np. w licencji. Następnie oprogramowanie uruchamia się i działa bez potrzeby stałego połączenia z Internetem.
Krótko przed wygaśnięciem tymczasowej licencji w pamięci podręcznej offline aplikacja łączy się z CodeMeter License Central i automatycznie odnawia licencję.
Jeśli użytkownik zainstaluje oprogramowanie na innym urządzeniu, wprowadza ponownie kod aktywacyjny.
W zależności od dokonanych wyborów i ustawień oprogramowanie może obsłużyć to zdarzenie na trzy sposoby:
- Licencja jest przenoszona do lokalnej pamięci podręcznej jako tymczasowa licencja offline, a oprogramowanie jest uruchamiane
- Użytkownik wybiera "starą" licencję, która jest automatycznie oznaczana jako "nieaktywna" w CodeMeter License Central. Następnie tworzona jest tymczasowa licencja offline i uruchamiane jest oprogramowanie.
- Użytkownik jest powiadamiany, że liczba licencji została przekroczona i że będzie musiał albo ręcznie dezaktywować starą licencję, albo poczekać, aż licencja tymczasowa zakończy swój ustalony okres obowiązywania.
Drugi wariant jest zwykle najbardziej praktyczny, ponieważ jest wystarczająco elastyczny dla użytkownika, który może kontynuować pracę z oprogramowaniem nawet po osiągnięciu maksymalnej liczby urządzeń, na których uruchomiona jest aplikacja, i wystarczająco transparentny dla Ciebie jako dostawcy, aby wykryć nieuczciwe użycie i podjąć niezbędne środki zaradcze.
Licencje chmurowe dla aplikacji SaaS
Aplikację SaaS można udostępniać klientom na zasadach licencji tymczasowych lub bezterminowych, uwzględniając różnice wynikające z funkcjonalności. CodeMeter Cloud Lite oferuje prosty i oszczędny sposób na pogodzenie świata online i offline, zwłaszcza jeśli korzystasz już z CodeMeter dla oprogramowania lokalnego i zintegrowałeś procesy tworzenia licencji z SAP, Salesforce lub innym systemem ERP, CRM lub e-commerce. Licencje dla aplikacji SaaS są tworzone w taki sam sposób, jak w przypadku licencji lokalnych; różnią się jedynie schematem powiązania. W miejsce CodeMeter SmartBind lub CmDongles wykorzystywany jest CodeMeter Cloud Lite. Licencja jest tworzona i przypisywana do użytkownika w procesie, który nie różni się od aktywacji licencji lokalnej - można nawet połączyć obie formy. Możesz zintegrować procesy administrowania użytkownikami z rozwiązaniami Single-Sign-On, takimi jak OAuth2 lub SAML.
CodeMeter Cloud Lite jest dostarczany z prostym API do sprawdzania aktywnych licencji, które uzyskiwałyby dostęp do aplikacji SaaS, weryfikowały dostępne licencje i określały, które funkcjonalności są dostępne i przez jaki czas.
Uwierzytelnianie dla aplikacji SaaS
Obok konfigurowalnego licencjonowania i dużych możliwości ochrony oprogramowania, CodeMeter ma jeszcze jedną, ważną funkcję: Klucze prywatne używane do uwierzytelniania mogą być bezpiecznie przechowywane na kluczu sprzętowym CmDongle lub pliku licencyjnym CmActLicense. Dzięki temu CodeMeter jest właściwym wyborem do uwierzytelniania użytkowników w różnych wariantach SaaS.
Rozwiązanie można zintegrować za pośrednictwem interfejsu API CodeMeter, szczególnie w przypadku dostarczania użytkownikom dedykowanej aplikacji lokalnej, która działa w połączeniu z aplikacją SaaS w chmurze. Oprogramowanie SaaS zgłasza żądanie, na które lokalna aplikacja odpowiada, podpisując je kluczem prywatnym przechowywanym w lokalnej licencji. W chmurze aplikacja SaaS używa klucza publicznego do weryfikacji tożsamości użytkownika, przy czym tożsamość użytkowników jest zarządzana i rejestrowana w chmurze zgodnie z konkretnymi potrzebami.
W przypadku aplikacji przeglądarkowych certyfikaty klienta stały się standardowym rozwiązaniem. Oprogramowanie pośredniczące zapisuje certyfikaty x.509 na kluczu sprzętowym CmDongle. Aplikacje takie jak Internet Explorer, Firefox, Chrome, Safari, Outlook lub kliencie VPN mają dostęp do certyfikatów za pośrednictwem jednego z dwóch interfejsów: PKCS#11 lub Microsoft CSP.
W określonych przypadkach dla udzielenia dostępu do aplikacji SaaS wystarczy weryfikacja ważności certyfikatu. Kiedy indziej potrzebne są bardziej szczegółowe dane, takie jak nazwy użytkowników, organizacje lub inne atrybuty w celu identyfikacji nazwanych użytkowników lub grup użytkowników. Kontrola dostępu do aplikacji SaaS uwzględniająca taki poziom pewności wymaga tworzenia, zarządzania i śledzenia certyfikatów klienta, które są znane aplikacji SaaS. Podobnie jest w przypadku certyfikatu używanego przez aplikację SaaS na serwerze do komunikacji z aplikacją kliencką - powinien być on certyfikatem utworzonym przez zaufaną instytucję certyfikującą (np. VersiSign lub GlobalSign).
Niektóre rozwiązania w celu udzielenia dostępu do aplikacji SaaS wymagają jedynie ważnego certyfikatu. Inne mogą pobierać bardziej szczegółowe dane, takie jak nazwy użytkowników, organizacje lub inne atrybuty w celu identyfikacji nazwanych użytkowników lub grup użytkowników. Jeśli chcesz kontrolować dostęp do aplikacji SaaS z takim poziomem pewności, musisz utworzyć, zarządzać i zawsze śledzić niezbędne certyfikaty klienta, które muszą być znane aplikacji SaaS. I podobnie, certyfikat, za pomocą którego aplikacja SaaS identyfikuje się z użytkownikiem, powinien być certyfikatem serwera utworzonym przez zaufany urząd certyfikacji (np. VersiSign lub GlobalSign).
Aplikacje w chmurze prywatnej
Chmura prywatna to zazwyczaj farma maszyn wirtualnych obsługiwanych w centrum obliczeniowym klienta lub przez wyspecjalizowanego dostawcę na sprzęcie, który nie jest znany ani użytkownikowi, ani klientowi. Może nawet nie mieć interfejsów USB, z którymi można się połączyć. Również w tym przypadku CodeMeter jest skutecznym rozwiązaniem służącym ochronie Twoich praw jako twórcy oprogramowania. Masz do dyspozycji kilka opcji:
USBoverEthernet: klient otrzymuje licencję na kluczu sprzętowym CmDongle. Do połączenia klucza CmDongle z daną maszyną wirtualną można wykorzystać znane produkty, takie jak USBoverEthernet - jest to częsta praktyka, którą standardowo ma wiele centrów danych. Nie trzeba wprowadzać żadnych zmian w oprogramowaniu ani w ustalonych sposobach jego dystrybucji.
- Serwer sieciowy: Użytkownik korzysta z serwera sieciowego w centrum danych.
W przypadku takich serwerów CodeMeter oferuje specjalne środowisko uruchomieniowe CodeMeter Runtime, zaprojektowane do działania nawet na Raspberry Pi. Klucz sprzętowy CmDongle jest podłączany przez USB do tego serwera. Twoje oprogramowanie musi tylko obsługiwać protokół sieciowy CodeMeter (CmLAN), co oznacza niewielką zmianę w konfiguracji oprogramowania. Zasady dystrybucji oprogramowania pozostają bez zmian.
- Serwer w chmurze: Serwer CmWAN może być obsługiwany bezpośrednio przez Ciebie lub przez klienta. Licencje mogą być następnie przechowywane w sieci LAN, WLAN lub w chmurze, przy użyciu CmDongles lub CmActLicenses na serwerze CmWAN. Podobnie jak w przypadku serwera sieciowego, oprogramowanie musi obsługiwać odpowiednie protokoły, a zasady jego dystrybucji pozostają bez zmian.
- SmartBind oraz VM Move: Generujesz licencję typu SmartBind, z większym poziomem tolerancji. Daje to pewność, że licencja nie zostanie naruszona, gdy maszyna wirtualna, na której jest ona przechowywana, zostanie przeniesiona do chmury. Będzie ona natomiast unieważniona, w przypadku gdy maszyna wirtualna zostanie skopiowana. Alternatywnie można zdefiniować identyfikator SID maszyny jako parametr wiążący. Nie musisz nic zmieniać w aplikacji; wszystko, co musisz zrobić, to utworzyć specjalne licencje dla użytkowników, którzy będą uruchamiać oprogramowanie w swoich prywatnych chmurach.
- Licencjonowanie CodeMeter Cloud Lite: Licencjonowanie swojego oprogramowania możesz odwzorować w CodeMeter Cloud Lite. Aplikacja chroniona jest przed inżynierią wsteczną dzięki Protection Only License. Sprawdza ona ponadto regularnie, łącząc się z chmurą Wibu, ważność licencji oraz to, czy ma być używana przez inną instancję. Ten rodzaj licencjonowania wymaga pewnych zmian w oprogramowaniu i stałego połączenia internetowego między prywatną chmurą użytkownika a chmurą Wibu. Samo utworzenie licencji nie jest trudniejsze: wystarczy dodać CodeMeter Cloud Lite jako kolejną wiążący parametr.