Iga lahendus tekitab uusi probleeme ehk alati võib leida veel ühe bugi.

Eesti blogid

Lingid, mida külastan

Rahvusvahelised blogid

Muud

Hetkel lugemisel:

Külastajate kaardid:

Lehe külastajate asukohad

Lugejad:

Hetkel lehel:

hit counters

Toetaja:

LiveMesh ja Windows Server 2008

Oma kodus jooksutan ma Windows Server 2008 –t koos Hyper-V –ga. Soovisin oma LiveMesh –i desktopi sünkida ka sinna, aga enda üllatuseks on www.mesh.com –s olemas installer ainult Windows XP/Vista jaoks ja kui proovida käivitada Windows Vista 64bit installer,  annab see teate:

live_mesh_error

Mis nüüd teha? Tahaks ju ikkagi oma Windows Server 2008 –ga sünkida, kuna see on mu kodune arvuti.

Tuleb välja, et on võimalik antud nõudest mõõda hiilida ja leidsin MSFTGUY blogi postituse, mis sellest täpsemalt räägib. Võite sealt lähemalt lugeda, aga lahendus on lihtne. Käivitage command line –lt LiveMesh.exe lisa attribuudiga –force.

“LiveMesh.exe –Force"

Note: Lahendus on tõesti nii lihtne, aga kui teil on UAC sisse lükatud nagu minul, siis peate installeerimise hetkeks UAC välja lükkama. See tähendab järgmist tegevuskava:

  1. www.mesh.com –st tõmmata alla õige – 32bit või 64bit tarkvara.
  2. UAC välja lükata ja restart
  3. Run –> cmd –> “LiveMesh.exe –Force” (ennem muidugi minge sinna asukohta, kuhu tõmbasite LiveMesh.exe)
  4. UAC sisse lükkamine ja restart
  5. LiveMesh –i kasutamine :)

Kusjuures, kui käivitada LiveMesh.exe tavapärase “/?” attribuudiga, siis sealses käskude loetelus –force laiendit ei ole.

live_mesh_installation_options

Edu!

TFS –i ümber konfigureerimine – HTTP –> HTTPS ja KB959126

Tegelesin siin ühe TFS –i serveri ümberkonfigureerimisega HTTP kasutamisest HTTPS –i kasutama. Ja peale mõningasi ponnistusi asi ka õnnestus. Peab tunnistama, et see ei ole väga triviaalne tegevus ja huvitavaid seikasid juhtub.

Keskkond

  • Data Tier (masin 1)
    • SQL Server 2008
  • App tier (masin 2)
    • TFS 2008 SP1
    • VS Team 2008 SP1
    • .NET 3.5 SP1
    • Windows SharePoint Services 3.0 SP1
    • SQL Server 2008 Reporting Services
    • IIS 7

Juhend

Juhendina kasutasin: Walkthrough: Setting up Team Foundation Server to Require HTTPS and Secure Sockets Layer (SSL)

Kahjuks küll räägib see juhend rohkem TFS 2008 konfigureerimisest IIS6, TFS 2008, SQL 2005 ja VS 2008 keskkonnas.

SQL2008 ja IIS7 korral on see mõnevõrra erinev, aga sammud on samad. Alustame.

  1. Tuleb luua omale SSL –i sertifikaat veebisaidile (see on skoobist väljas, aga makecert või siis IIS7 puhul self-signed või domeeni sertifikaadi  loomine “IIS Server –> Server Certificates” liidese kaudu)image
  2. Veebisaitide konfigureerimine. Tuleb konfigureerida oma TFS Application tier (Team Foundation Server web application), SharePoint site, Team System Web Access, SharePoint Central Administration web application toimima üle HTTPS –i.
  3. Tuleb konfigureerida oma SQL Server 2008 Reporting Services toimima üle HTTPS –i.
  4. Tuleb öelda TFS –ile, et nüüd saab teenustele ligi uue aadressi kaudu.

Samm 2. Veebi saitide konfigureerimine

Kõikide IIS 7 veebisaitide HTTPS –i toe lisamine käib ühte moodi. Kirjeldan ära siin TFS appserveri oma. image

  1. Valige veebisait IIS 7 administreerimisvahendis (pilt üleval)
  2. Seejärel on paremal pool “Actions” valikuriba. Valige Bindings.
  3. Avaneb “Site Bindings” aken ja saate lisada uusi seoseid protokollide, portide ja aadresside vahel, millega on võimalik antud saidile ligi minna (pilt all pool).
  4. Valige “Add”. Seejärel Type: Https, Certificate: Teie SSL –i sertifikaat ja port (SSL –i port selle saidi jaoks). Pange tähele, et ühte porti saab kasutada üks sait. Te peate mõtlema omale igale saidile välja oma pordi. TFS Application Tier –i veebiteenustele tahan mina ligi lasta üle 443 pordi. image
    Soovitan kirja panna kõik aadressid koos portidega, et hiljem kui on vaja TFS –s aadresse ümber konfigureerida, siis ei ole vaja IIS –s ringi joosta.
  5. Viimase sammuna konfigureerige oma saidile authentication. Integrated Windows auhentication koos Basic või Digest authenticationiga.

Tehke sama iga veebi rakenduse jaoks. Need on:

  • Team Foundation Server (TFS veebiteenuste kiht)
  • Team System Web Access
  • SharePoint – 80 (default sharepointi sait)
  • SharePoint Central Administration v3

Märkus: Lisate bindingu, ärge olemasolevaid eemaldage. Las olla kuni kõik üle HTTPS –i toimib.
Märkus: Te ei esita nõuet kasutada SSL –i hetkel, vaid lisate ainult võimaluse. Nõude jaoks tuleb teil saidi “SSL settings” all linnukene panna – “Require SSL” ette.

Lisaks SharePointi saitide puhul tuleb teil lisada alternate access mapping SharePoint Central Administration ja SharePoint saitide jaoks. Leiate selle “SharePoint Central Administration –> Operations –> Global Configuration –> Alternate access mappings” alt. See siis võimaldab ka HTTPS aadressil ilusti SharePointi saidile minna.

Samm 3. SQL Server 2008 Reporting Services konfigureerimine üle HTTPS –i toimima.

Selleks on olemas Reporting Services Configuration Manager. Avage see. Antud vahendis on vaja lisada kahte kohta HTTPS ligipääs. Web Services URL ja Report Manager URL.

image

Ma usun, et see vahend on kergelt kasutatav ja piltidega üle ei koormaks. Lisage kõigest SSL certificate ja port. Kusjuures soovitaksin siin kasutada sama porti mis on default Sharepoint saidil SSL –i jaoks. Need ei häiri teineteist ja nii toimib see ka HTTP puhul – mõlemad port 80 peal.

Samm 4. Tuleb öelda TFS –ile, et nüüd saab teenustele ligi uue aadressi kaudu.

Selleks on olemas kaks vahendit – TfsConfigWss ja TfsAdminUtil, mis asuvad “C:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools” all. Need uuendavad aadresse meeskonna saitide ja TFS –i juures.

Kõigepealt kasutage TfsAdminUtil –t (ühe command reana, siin ma jaotan mitmele, et loetav oleks).

TfsAdminUtil.exe
ConfigureConnections /ATUri:
https://serveriaadress:443
/SharepointUri:
https://serveriaadress:8450 
/SharepointSitesUri:
https://serveriaadress:8450/Sites
/SharepointAdminUri:
https://serveriaadress:8451 
/ReportsUri:
https://serveriaadress:8450/Reports
/ReportServerUri:
https://serveriaadress:8450/ReportServer/ReportService.asmx

Kusjuures pange tähele ReportServerUri –d. See peab olema just niisugusel kujul, kus on lisaks kirjas ReportService.asmx. Kui teil seda pole, siis Visual Studio kaudu Reporting Service –le (Raportitele) ligi ei saa ja ei saa ka näiteks uusi meeskonna projekte luua TFS –i Visual Studio abil. Täpsema info leiate KB959126 alt. See kehtib TFS SP1 puhul.

Seejärel on vaja kasutada vahendit TfsConfigWss.exe, et uuendada meeskonna saitide juures aadresse.

TfsConfigWss.exe 
ConfigureReporting /SharepointSitesUri:
https://serveriaadress:8450/Sites 
/ReportsUri:
https://serveriaadress:8450/Reports 
/ReportServerUri:https://serveriaadress:8450/ReportServer

Kuidas kontrollida, et kõik üle HTTPS –i toimib?

Proovige igale saidile minna üle HTTPS –i.

TFS Application Tier puhul kasutan ma ise aadresse nagu:

E voila, teie TFS toimib nüüd üle HTTPS –i.

Edu!

Project Natal – järgmine generatsioon xbox 360 -ga

WOW!!! Kes, veel ei ole näinud, vaadake täna avalikustunud Project Natal –i kohta videosid, milles esineb Steven Spielberg.

Tegu on siis xbox –ga mängimise ja kasutamisega ilma igasuguse XBOX küljes tilpneva kontrollerita (nagu pult, joystick vms) – teie keha liigutusi jälgib 3d sensor ja häält kuulab seade ning xbox käitub vastavalt.

“Project Natal – controller free gaming”.

Project Natali demo video (promo video):

Electronic Entertainment Expo esitluse osa (Steven Spelbergiga):

Veel lahedaid demosid:

Lisainfo:

Super innovatiivsus!

Automaatne Dispose –i kontrollimine SPDisposeCheck abil

Olen varemgi kirjutanud kui tähtis on SharePointis objektide nagu SPSite, SPWeb ja publishing objektide Disposimine. See on tähtis sellepärast, et need objektid kasutavad unmanaged koodi ja ressursse, mille pikaajaline kinni hoidmine või mitte korrektne vabastamine võib mälu lekkeid tekitada. Need objektid ei sure iseenesest ega tapeta GC poolt korrektselt.

Nüüd (mõnda aega tagasi juba) on Microsoft välja lasknud vahendi, millega saab kontrollida, kas koodis on SPSite, SPWeb jt objektid korrektselt Dispositud.

Vahendil nimeks SPDisposeCheck ja rohkem infot ning vahendi leiate siit:

Vahendi kasutamine on väga lihtne – SPDisposeCheck “nimi.dll” ja soovi korral mõned lisa võtmed nagu “–debug”. Väljundiks on kohad, kus Dispose –imine ei toimu korrektselt.

Note: Siin juures mainiks ära, et hetke versiooni (SharePoint Dispose Check v1.3.1) puhul ei tasu kasutada võtit “–xml”, minul viskas ta exceptionit. See võiks paraneda järgmises versioonis.

Igatahes on olemas kasulik kontrollimehhanism nüüd nii tähtsa reegli järgimise jaoks.

Edu!

T4 mallid konstantide genereerimiseks

See ei ole midagi uut või avastus, T4 mallid (Text Template Transformation Toolkit) on juba pikka aega olemas ja kasutuses, aga enda jaoks avastasin ma nad mõnda aega tagasi ja plaanin neid esmajärgus just konstantide genereerimiseks kasutada. Varasemalt olen loonud enda konstantide genereerimise konsoolirakenduse, aga toon välja, miks T4 mallid (template) on palju paremad :)

Esimese asjana on vaja saada teadmist, mis asijad need T4 mallid on üldsegi. Olen leidnud super head artikklid, mida soovitan lugeda:

T4 mallide loomiseks ja kasutamiseks on vaja kahte asja:

  1. Jooksutajat
  2. Editori

Jooksutajaks (teeb koodiks, kompileerib, jooksutab ja väljastab tulemuse failina) on meil Visual Studio 2008 :) Kui te lisate oma projekti faili lõpuga “.tt”, siis panete kohe tähele, et Visual Studio proovib genereerida malli põhjal koodi. Kahjuks aga puudub Visual Studios editor mallide jaoks.

Editori –deks võivad sobida järgmised vahendid:

  • Clarius T4 Editor (community ja piiratud versioon tasuta)
    • Väga piiratud variant – omab koodi highlightimist ja template –i põhist intellisense. Koodi kirjutamisel intellisense –i ei ole.
  • Tangible modeling tools with T4 (tasuta 1 installatsioon)
    • Tasuta versiooniga on kaasas item templated, pakub intellisensi ja on värviline tekst. Kaasas on ka mingid mudelid, mis risustavad Visual Studiot, aga Editor on muidu lahe. 

Oletame, et soovime SharePointi XML –i definitsiooni põhjal genereerida konstandid, et ei peaks kirjutama kuskile koodi sisse välja nime või ID –d vms. Ehk meie sisendiks on:

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- Settings list fields -->
<!-- Name: DvkSettingId -->
<Field
ID="{23999420-C2F4-464A-89A4-583B3E143FE7}"
Name="DvkSettingId"
StaticName="DvkSettingId"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
Type="Text"
DisplayName="$Resources:Dvk,FieldDvkSettingIdDisplayName;"
Group="SPDVK"
/>

<!-- Name: DvkSettingValue -->
<Field
ID="{581B2672-3425-4C2B-865F-7E6EFA50D851}"
Name="DvkSettingValue"
StaticName="DvkSettingValue"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
Type="Note"
DisplayName="$Resources:Dvk,FieldDvkSettingValueDisplayName;"
Group="SPDVK"
AppendOnly="FALSE"
RichText="FALSE"
/>
<!-- Name: DvkSettingDescription -->
<Field
ID="{FB8B361E-A657-443B-BB68-565057172118}"
Name="DvkSettingDescription"
StaticName="DvkSettingDescription"
SourceID="http://schemas.microsoft.com/sharepoint/v3"
Type="Text"
DisplayName="$Resources:Dvk,FieldDvkSettingDescriptionDisplayName;"
Group="SPDVK"
/>
</Elements>

Ja me sooviksime saada järgmise väljundi.

using System;
namespace Constants
{
public static class Fields
{
public static class DvkSettingId
{
public const string Id = "{23999420-C2F4-464A-89A4-583B3E143FE7}";
public static readonly Guid IdAsGuid = new Guid("{23999420-C2F4-464A-89A4-583B3E143FE7}");
public const string Name = "DvkSettingId";
}
public static class DvkSettingValue
{
public const string Id = "{581B2672-3425-4C2B-865F-7E6EFA50D851}";
public static readonly Guid IdAsGuid = new Guid("{581B2672-3425-4C2B-865F-7E6EFA50D851}");
public const string Name = "DvkSettingValue";
}
public static class DvkSettingDescription
{
public const string Id = "{FB8B361E-A657-443B-BB68-565057172118}";
public static readonly Guid IdAsGuid = new Guid("{FB8B361E-A657-443B-BB68-565057172118}");
public const string Name = "DvkSettingDescription";
}
}
}

T4 templated teevad asja meie jaoks väga lihtsaks. On vaja kirjutada üks ASP –lik koodi ning teksti segu ja genereerubki automaatselt valmis väljund :) Selle segu kirjutamine on väga lihtne, igatahes lihtsam kui minu konsooli generaatorite kirjutamine.
Meil on vaja XML –i definitsioon sisse lugeda, kõik “Field” elemendid läbi käija ja attribuutidelt väärtused võtta.
 
<#@ output extension=".cs" #>
<#@ Assembly Name="System.dll" #>
<#@ Assembly Name="System.Xml.dll" #>
<#@ Assembly Name="System.Xml.Linq.dll" #>
<#@ import namespace="System" #>
<#@ import namespace="System.Xml.Linq" #>
using System;
namespace Constants
{
public static class Fields
{
<#
XElement xml =
XElement.Load(@"C:\Projects\Temp\T4\CodeGeneration\Fields.xml");
XName fieldElementName =
XName.Get("Field", "http://schemas.microsoft.com/sharepoint/");
foreach (XElement field in xml.Elements(fieldElementName))
{
string name = field.Attribute("Name").Value;
string id = field.Attribute("ID").Value;
#>
public static class <#= name #>
{
public const string Id ="<#= id #>";
public static readonly Guid IdAsGuid = new Guid("<#= id #>");
public const string Name = "<#= name #>";
}
<#
}
#>
}
}

Esimese asjana määrame ära, et väljundiks on “.cs” lõpuga fail ehk siis C# –i koodifail.
 
Järgmine on juba genereerimise osa – assemblyd, nimeruumid, mida kasutame koodis ja text-kood, mis töö ära teeb. Kood on <# #> märkide vahel, muu on tekst.
 
Konstantide genereerimist saab kindlasti optimeerida nii, et kasutatakse mingit üldist meetodit, mis standard genereerimie ära teeb, saades sisse vajalikud parameetrid. Näiteks antud juhul võiks olla meetod, mis saab sisse XML –i pathi, välja nimetuse ja attribuutide loetelu ning selle põhjal siis genereerib konstandid (kui GUID välja jätta või nutikalt lahendada). 
 
Konstandid SharePointi puhul aitavad teil ära kasutada olemasolevaid XML definitsioone, mida te niikuinii kirjutate installeerimise ja paketeerimise jaoks. Väldite igasuguse teksti ja id –de jne sissekirjutamise ning nende uuendamise/muutmise mured. On ainult üks koht kus saab nässu keerata väärtuse.
 
T4 templated on lihtsad, Visual Studiosse integreeritud ja päris võimsad.
Edu!
Windows 7 RC ja ID kaardi kasutus

Kes on Windowsi tehnoloogia friik, see kasutab kindlasti juba Windows 7 –t. Samamoodi ka mina ja üks funktsionaalsus, ilma milleta ei saa tänapäeval enam hakkama on ID kaardi kasutamine autentimisel ja allkirjastamisel. Windows 7 –s on sellega, aga omad nipid ja trikid, et tööle saada.

Järgnevalt esitakski sammud, mis mina läbisin, et ID kaardiga autentida ja allkirjastada saaks IE browseris veebilehtedel.

  1. ID kaart lugejasse.
  2. Käivita IE administraatorina
  3. Mine http://installer.id.ee ja installeeri omale DigiDoc klient ja id kaardi utiliit.
  4. Pange tööle ID-kaardi utiliit.
    1. Vaadake, et andmeid loeks.
    2. Lülitage välja automaatne sertifikaatide registreerimine (Sertifikaadid -> automaatne registreerimine -> väljas).
    3. Pange kinni utiliit.
  5. Pange uuesti tööle utiliit.
    1. Küsitakse, kas soovite registreerida sertifikaadid ja vastake jah.
    2. Pange kinni utiliit.
  6. Minge saidile, kus soovite autentida ID kaardiga (ntx https://id.swedbank.ee )
    1. Peate lisama saidi, mis nõuab ID kaardi autentimist, panema oma Trusted saitide hulka IE –s.
      1. Tools -> Internet Options -> Security -> Trusted Sites
      2. Kui ei lisa, siis tundub et sertifikaatidele ligi ei minda ja neid ei pakuta.
    2. Sisestades oma swedbanki kliendi numbri ja vajutades nuppu autendi ID kaardiga järel küsitakse, kas soovite oma ID kaardi sertifikaati autentimiseks kasutada – öelge jah (võite ka sertifikaati vaadata jne).
    3. Küsitakse PIN 1 –te.
    4. Olete sees :)

Minul toimis ka saidis allkirjastamine – ilma ei saaks ülekandeid teha.

Märkus: DigiDoc kliendiga Windows 7 –s ei saa te allkirjastada ID kaardiga ega M-ID –ga.
Märkus: DigiDoc kliendiga on võimalik Windows 7 –s allkirjastada ID kaardiga ja ka M-ID –ga ilusti. Keskkonnas, kus ma sel hetkel testisin on ranged tulemüüri piirangud ja need takistasid. Kodust toimis asi ilusti ka DigiDoc kliendiga!

Alternatiivina on olemas dokumendi portaal.

Muidugi Windows 7 puhul toimib alati ilma pikema mängimiseta M-ID autentimine ja allkirjastamine, kui see klient ei jookse TEIE masinas. Näiteks M-ID –ga swedbanga lehele minek. Kahjuks on M-ID tuge vähematel saitidel kui ID kaardi oma.

Posted: mai 13 2009, 02:17 PL by melborp | with 4 comment(s)
Filed under: ,
Uuendus: wssDigiDoc v1.0 Beta

Viimati sai kirjutatud Windows SharePoint Services 3.0 –i jaoks loodud Eesti digitaalallkirjastamise toe lahenduse uuendusest mõned nädalad tagasi. Nüüd on see komponent veel mõned täiendused saanud ja soovitan kasutada uuemat versiooni kõigil – mitmed parandused, aga pole veel default release.

Leiate selle siit.

Posted: apr 17 2009, 05:39 PL by melborp | with 1 comment(s)
Filed under: ,
Windows Live –i ilma kasutajanime ja paroolita

Kes on huvitatud Windows Live –i kasutada ilma kasutajanime ja paroolita, siis Beta –s on informationcard –i tugi (Cardspace) Windows Live –i sisse logimiseks. Juhendi leiate järgnevast blogi postitusest:

PS! Üks kummaline eesti keelne tõlge on seal kasutuses – nimelt on informationcard on kiipkaardina tõlgitud vms. Ärge ehmuge, smart cardiga pole seal miskit pistmist.

Peale “kiipkaardi” lisamist tekib teil logimisel valik:

image

Elu jälle lihtsam!

More Posts Next page »